19 lines
1.3 KiB
Markdown
19 lines
1.3 KiB
Markdown
# Kühlfinder-Scraper (eigene Datenquelle)
|
||
|
||
**Grundsatz:** Wir übernehmen KEINE Daten von braucheklima.de. Bestand/Preis kommen
|
||
direkt von den Händlern (öffentlich einsehbare Produkt-/Marktseiten bzw. deren JSON-Endpunkte).
|
||
|
||
## Status
|
||
- **OBI**: verifiziert — Produktseite liefert serverseitig Preis + Markt-Status (web_fetch-Test 27.06.). Parser via JSON-LD + HTML-Heuristik.
|
||
- **Toom/Bauhaus/Hornbach/Hagebau/Globus**: Adapter nach OBI-Muster (Produktseite/Markt-Endpoint).
|
||
- **MediaMarkt/Saturn/expert/Euronics**: client-rendered → JSON-Availability-Endpoint (storeId-Param) oder Headless (Playwright) im Cron-Container.
|
||
- **Amazon**: PA-API (PartnerNet) statt Scraping — sauber + Affiliate.
|
||
|
||
## Betrieb (Coolify)
|
||
1. Scheduled Task: `cd scraper && node run.mjs` alle 30–120 Min (in Hitzephasen enger).
|
||
2. `availability.json` + `history.json` in ein **persistentes Volume** schreiben, das der nginx-Container unter `/data` ausliefert (compose mit shared volume) — so wird die Seite live, ohne Rebuild.
|
||
3. Rate-Limits/robots.txt respektieren, ehrlicher User-Agent, Jitter/Backoff (im Runner umgesetzt).
|
||
|
||
## Recht
|
||
Öffentlich zugängliche Bestandsdaten; kein Umgehen von Schutzmaßnahmen, keine wesentlichen DB-Teile Dritter (kein braucheklima-Import). Vor Live-Verkauf juristisch absichern.
|