SPB Git forge

spb/resto-ka

Public

Resto·Ka — tous les restaurants du Québec, menus complets et prix réels (famille ·Ka)

52commits 1branches 0releases
11.6 MBsize
maindefault branch
19 days agolast push
Python 69.3% TypeScript 16.7% CSS 7.9% JavaScript 4.7% HTML 1.4%
4.1 KB

# Yelp (avis et notes, sans clé) — connecteur yelp-scrape

Fiche générée automatiquement par scripts/gen_connector_docs.py le 2026-08-18 06:06 — ne pas éditer à la main, régénérer.

État : actif · Palier (tier) : 5 · Backend : Scrapfly

# Description de la source

Connecteur d'ENRICHISSEMENT Yelp SANS clé API (avis/notes par scraping léger). Une seule page de RECHERCHE yelp.ca par resto (find_desc=&find_loc=) via Scrapfly ASP : la page embarque un cache Apollo (scripts data-apollo-state) avec, PAR commerce, alias, nom, note, nombre d'avis, fourchette de prix, catégories et adresse (ville + civique). Croisement CONSERVATEUR : nom similaire + même numéro civique + ville compatible (jamais fusionner deux établissements). Résultat -> details.yelp {rating, review_count, price, categories, url} (mêmes clés que Yelp Fusion — le connecteur officiel yelp reprend la main dès qu'une YELP_API_KEY existe). Économe : budget YELP_SCRAPE_BUDGET (défaut 80) pages/cycle, re-visite 30 jours (hit comme miss), priorité aux restos avec menu. Base légale : pages publiques, extraction minimale (note agrégée + lien vers la fiche Yelp, attribution affichée) — voir CLAUDE.md §15.

  • Plateforme : yelp · Site : https://www.yelp.ca
  • Extraction (registre) : Une page de RECHERCHE yelp.ca par resto (find_desc=nom&find_loc=ville) via Scrapfly ASP : le cache Apollo embarqué (scripts data-apollo-state) expose alias, note, nb d'avis, fourchette de prix, catégories, ville et civique par commerce -> details.yelp (mêmes clés que Yelp Fusion). Croisement conservateur : nom similaire + même numéro civique + ville compatible ; ambigu = ignoré. Budget YELP_SCRAPE_BUDGET (80 pages/cycle), re-visite 30 j (hit comme miss), priorité aux restos avec menu. N'émet aucune fiche. Le connecteur yelp (API Fusion) reprend la main dès qu'une YELP_API_KEY existe.
  • Contexte de prix : aucun
  • Module : restoka/connectors/yelp_scrape.py — YelpScrapeConnector

# Accès

# Champs récupérés → schéma cible

Aucune fiche en BD pour cette source (connecteur en attente ou clé manquante) — schéma cible : table restaurants + menus.

# Fréquence & budget

  • Cadence déclarée (registre) : quotidien par petits lots (80 pages), re-vérification 30 jours
  • Cadence observée (médiane sync_log) : —
  • Caps / budgets du module : MAX_CONSECUTIVE_FAILURES = 3

# Volumétrie & complétude

  • Aucune donnée en BD pour cette source.
  • Runs journalisés (60 derniers) : 0, dont 0 en erreur

# Erreurs connues & dépannage

Aucune erreur dans les 60 derniers runs journalisés.

Rejouer la source seule : python3 run.py sync yelp-scrape · vérifier sync_log (SELECT * FROM sync_log WHERE source='yelp-scrape' ORDER BY ts DESC LIMIT 5;).

# Licence, attribution & conditions

  • Cadre d'accès (registre, acces_legal) : Pages publiques yelp.ca, extraction minimale (note agrégée + lien fiche), attribution Yelp affichée avec la note (mêmes conditions d'affichage que Fusion). Anti-bot réel : Scrapfly ASP, ~30 crédits/page — budget serré. À remplacer par l'API Fusion (clé gratuite) dès que possible (CLAUDE.md §15).
  • Scraping / API : User-Agent identifiable RestoKaBot/1.0 (+https://www.resto-ka.com/bot; contact@spboucher.ai), throttling poli, aucun contournement d'accès ; les fiches pointent vers la source d'origine.
  • Retrait sur demande : contact@spboucher.ai.

# Historique

  • 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par scripts/gen_connector_docs.py).