Scrapers: - Rewrite Tesco scraper to handle Akamai WAF and obfuscated CSS - Fix Dunnes category discovery to top-level only (29 vs 1603) - Rewrite Lidl parser to extract from data-grid-data JSON attributes - Improve Aldi and SuperValu scrapers with better error handling API: - Add /api/search-prices endpoint for cross-store product comparison - Fix timezone mismatch in price history endpoint (naive vs aware datetime) - Fix scrape status filter (success/partial instead of done) Dashboard: - Rewrite all 4 pages to match actual API response schemas - Fix Price Battle button state management with st.rerun() - Add popular search buttons for real product comparison - Add product catalogue with pagination and image support - Fix store colour matching to use partial name matching - Remove last_scrape from overview, add battle pie chart |
||
|---|---|---|
| .. | ||
| versions | ||
| env.py | ||
| script.py.mako | ||