§40 LFGB Hygienemängel-Dashboard — Flask/SQLite, 11 Bundesland-Scraper
  • Python 67.4%
  • HTML 32.6%
Find a file
2026-05-19 21:20:07 +02:00
.hermes/plans Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
scrapers Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
.gitignore Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
dashboard.html Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
database.py Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
README.md docs: README.md hinzugefügt 2026-05-19 21:20:07 +02:00
scrape.py Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00
server.py Initial commit: §40 LFGB Verbraucherfenster-Server 2026-05-19 21:13:50 +02:00

Verbraucherfenster-Server

Dashboard für Hygienemängel nach § 40 Abs. 1a LFGB — aggregiert Veröffentlichungen aus 11 Bundesländern in einer einheitlichen Oberfläche.

Live: https://four.rkenow.de

Features

  • Automatisches Scraping aller verfügbaren Bundesland-Portale
  • Filterung nach Bundesland, Behörde, Ort, Betrieb
  • Schädlingsbefall-Filter (Mäuse, Ratten, Kakerlaken u.a.)
  • Sortierung und Volltextsuche
  • Statistik-Dashboard mit Top-Orten und Behörden
  • REST-API unter /api/

Bundesländer

Kürzel Bundesland Quelle
HE Hessen verbraucherfenster.de
NW Nordrhein-Westfalen lebensmitteltransparenz.nrw.de
BW Baden-Württemberg lebensmittelkontrolle-bw.de
NI Niedersachsen niedersachsen.de
BY Bayern lgl.bayern.de
SH Schleswig-Holstein transparenz.schleswig-holstein.de
HB Bremen transparenz.bremen.de
HH Hamburg transparenz.hamburg.de
MV Mecklenburg-Vorpommern service.mvnet.de
BB Brandenburg lavg.brandenburg.de (PDF)
SN Sachsen lfgb.sachsen.de (JSON-API)

Stack

  • Backend: Python 3, Flask, SQLite (WAL-Modus)
  • Frontend: Vanilla JS, kein Framework
  • Scraper: scrapers/ — je ein Modul pro Bundesland
  • Deployment: systemd auf CT 107 (LXC, Proxmox)

Schnellstart

python3 -m venv venv && source venv/bin/activate
pip install flask requests beautifulsoup4 lxml
python3 database.py        # Schema anlegen
python3 scrape.py --all    # Einmalig alle Bundesländer scrapen
python3 server.py          # Server starten → http://localhost:8080

Struktur

verbraucherfenster-server/
├── server.py          # Flask-App + REST-API
├── scrape.py          # Scraper-Runner (CLI)
├── database.py        # SQLite-Layer
├── dashboard.html     # Single-Page-Frontend
└── scrapers/
    ├── __init__.py    # AbstractScraper + Registry
    ├── hessen.py
    ├── nrw.py
    └── ...            # je ein Scraper pro Bundesland