eXp Agence immobilière (Québec) (exp_ag_qc)
Généré le 2026-08-28 22:22 par scripts/gen_connector_docs.py — fichier produit automatiquement, ne pas éditer à la main.
Registre (data/sources.json)
- Site : https://expquebec.com
- Recherche : https://expquebec.com/fr/properties/
- Couverture : Toute la province — agence virtuelle (~1000+ inscriptions)
- Type : agence
- Statut : actif
Site officiel eXp QC (expquebec.com, WordPress + MW Properties). API cliente marketingwebsites.ca bloquée (whitelist IP) MAIS inventaire complet en SSR sur /fr/properties/?pages=N (9/page, param 'pages', stop après 3 pages vides). Carte: data-href mls={Centris}, data-price ($US), data-address, data-pic. Fiche détail /fr/properties/mls/{Centris}/ server-rendered et riche: galerie complète pleine résolution (ancres data-lightbox), remarque+addendum, inclusions/exclusions, icônes (CAC/SDB/superficie MC|PC/année), tables BÂTIMENT/ÉVALUATION/DÉPENSES/CARACTÉRISTIQUES, pièces, GPS exact (embed Street View), courtier+tél. Enrich plafonné IMMOKA_EXP_DETAIL_LIMIT (400/cycle) + cache BD; repli ville via map-property.php (IMMOKA_EXP_CITY_LIMIT). source_id ag = dédup Centris.
Mécanique (introspection du code)
- Module :
immoka/connectors/exp_quebec.py— classeExpQuebecConnector - Délai entre requêtes : 0.4 s ; cache détail BD : oui
- Budgets env (enrichissement détail plafonné/exécution) :
IMMOKA_EXP_DETAIL_LIMIT(défaut 400),IMMOKA_EXP_CITY_LIMIT(défaut 1200)
En-tête du module :
Immo-Ka — Agrégateur de maisons à vendre (province de Québec) Auteur : Simon-Pierre Boucher — contact@spboucher.ai connectors/exp_quebec.py : eXp Realty Québec (expquebec.com) — toute la province. L'API cliente realestate.marketingwebsites.ca/api.php est verrouillée par whitelist IP (impasse, même via proxy). MAIS le serveur WordPress (autorisé sur l'API) rend l'inventaire COMPLET côté serveur sur /fr/properties/?pages={N} (9 fiches/page, param « pages » uniquement). Chaque carte porte data-href /fr/properties/mls/{MLS}, data-price ($US), data-address (rue) et data-pic (property-images/{MLS}/). Le n° MLS = n° Centris. FICHE DÉTAIL /fr/properties/mls/{MLS}/ : server-rendered elle aussi (requêtes directes, aucun anti-bot) et TRÈS riche — galerie complète en pleine résolution (~1728px, ancres data-lightbox="gallery-item"), remarque du courtier + addendum, inclusions/exclusions, icônes (chambres/sdb/ superficie MC|PC/année), tables th/td par section (BÂTIMENT, ÉVALUATION, DÉPENSES, CARACTÉRISTIQUES, DÉTAILS DE PIÈCE), GPS exact dans l'embed Street View, courtier inscripteur (photo alt + tel: du bloc latéral). Enrichissement via _detailutil.enrich (cache BD + plafond IMMOKA_EXP_DETAIL_LIMIT, ~400/cycle). La VILLE vient de la fiche détail (en-tête h2) ; repli sur l'endpoint SSR /wp-content/themes/canvas/load/map-property.php?mls={MLS}&lang=fr pour les fiches au-delà du budget détail (cache « city » déjà peuplé). ⚠ PLAFOND : le SSR reflète le limit=1000 de l'API sous-jacente → au plus ~1000 fiches (pages 1..~114, crawl vérifié). C'est l'inventaire pratique complet ; si eXp QC dépasse un jour 1000 inscriptions, segmenter par région (params MW_region / MW_q du formulaire), chaque segment ayant son propre cap. source_id « exp_ag_qc » : infixe ag = dédup Centris (db.refresh_dedup) — les fiches co-listées avec une bannière couverte sont masquées.
Volumétrie & complétude (BD live)
| Indicateur | Valeur |
|---|---|
| Annonces en base (toutes) | 1 163 |
| Actives | 1 008 |
| Visibles (après dédup) | 892 |
| Masquées par la dédup | 116 |
| GPS (lat/lng) | 99.9 % |
| Photos | 100.0 % |
| Prix | 99.8 % |
| CAC (chambres) | 90.7 % |
| SDB (salles de bains) | 89.2 % |
| Année de construction | 89.9 % (dont rôle : 2.2 %) |
| Taxes / évaluation municipale | 100.0 % |
| Estimation Vrai-Prix (rôle) | 99.0 % |
Synchronisation
- Dernier sync : 2026-08-28 22:17 — trouvé 1 000, +8 / ~10 / -0 — OK
- Erreurs récentes : 0 sur les 10 derniers syncs
Voir aussi les mécanismes transverses (budgets détail, dédup Centris+adresse, jointure rôle vraiprix.db).