Een uitgebreide scraper en analyse-tool voor productinformatie van PLUS.nl, inclusief voedingswaarden, prijzen en ingrediënten.
⚠️ Belangrijk: Dit project is bedoeld voor educatieve doeleinden. Zorg ervoor dat je de gebruiksvoorwaarden van PLUS.nl respecteert en gebruik de scraper verantwoordelijk.
🔒 Configuratie Vereist: Dit is een openbare repository. Alle API-sleutels en cookies zijn verwijderd. Zie
scraper/COOKIES.mdvoor configuratie-instructies.
| Prijsverdeling | Merkanalyse | Eiwitanalyse |
|---|---|---|
![]() |
![]() |
![]() |
| Ingrediënten Wordcloud | Alcohol Efficiëntie | Categorieprijzen |
|---|---|---|
![]() |
![]() |
![]() |
- Vereisten voor Gebruik
- Projectstructuur
- Installatie
- Configuratie
- Gebruik
- Data Analyse
- Voorbeelden
- Troubleshooting
- Privacy & Ethiek
- Bijdragen
- Licentie
Voordat je begint, heb je nodig:
- Python 3.8+ en pip
- CSRF token van PLUS.nl (via browser dev tools)
- Geldige cookies voor API toegang
📖 Lees eerst: scraper/COOKIES.md voor volledige setup-instructies.
Het project is opgedeeld in twee hoofdcomponenten: de scraper en de data-analysetool.
plusproducten/
├── scraper/ # 🕷️ Web scraper
│ ├── main.py # Hoofd scraper script
│ ├── product_scraper.py # Product detail scraper
│ ├── sitemap_parser.py # Sitemap parser
│ ├── database.py # Database beheer
│ └── data/ # Gescrapte data
├── analyze_data.py # 📊 Data analysescript
├── setup.py # 🔧 Automatische setup
└── README.md # Deze documentatie
python setup.pyDit script installeert automatisch alle vereisten en configureert de mappen.
# Installeer scraper dependencies
pip install -r scraper/requirements.txt
# Installeer analyse dependencies
pip install -r requirements_analysis.txt
# Maak configuratie bestand
cp scraper/.env.example scraper/.env🔑 Vereist: Voor het gebruik van deze scraper heb je een CSRF token en cookies nodig van PLUS.nl.
# Kopieer de template
cp scraper/.env.example scraper/.env
# Bewerk met je credentials
nano scraper/.env # of je favoriete editorZie scraper/COOKIES.md voor gedetailleerde instructies.
cd scraper
# Scrape eerste 50 producten (voor testen)
python main.py --all --limit 50
# Scrape alle producten (kan lang duren!)
python main.py --all# Genereer alle analyses en visualisaties
python analyze_data.pyHet analyze_data.py script genereert een reeks visualisaties en rapporten in de scraper/data/analysis map. Dit omvat:
- Prijsverdelingen
- Merkanalyses
- Voedingswaarde-analyses (eiwitten, calorieën, etc.)
- Ingrediënten-wordclouds
De output wordt opgeslagen in scraper/data/analysis/, inclusief een README.md met de resultaten.
- Cookie/Authentication Errors: Vernieuw je cookies en CSRF-token.
- Database Errors: Run
cd scraper && python migrate_db.py. - Analysis Errors: Zorg dat je eerst data hebt gescraped.
cd scraper
python main.py --debug --all --limit 10- Respectvolle scraping: Ingebouwde delays en rate limiting.
- Publieke data: Alleen publiek beschikbare productinfo.
- Educatief doel: Bedoeld voor leren en onderzoek.
- Fork het project
- Maak een feature branch
- Commit je wijzigingen
- Open een Pull Request
MIT License - zie LICENSE bestand voor details.
Dit project is alleen voor educatieve doeleinden. Respecteer de gebruiksvoorwaarden van PLUS.nl en gebruik de tool verantwoordelijk.
Voor vragen of problemen: Open een issue op GitHub





