SPB Git forge

spb/immo-ka

Public

Immo-Ka — agrégateur des propriétés à vendre au Québec (73 connecteurs, ~40 000 annonces, React+FastAPI)

112commits 1branches 0releases
125.4 MBsize
maindefault branch
13 days agolast push
Python 47.5% HTML 27.9% TypeScript 15.5% CSS 7.2% JavaScript 2%
3.3 KB

# Sotheby's International Realty Québec (sothebys_quebec)

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)

Inventaire COMPLET via l'API AJAX interne /include/ajax_results.php (dowhat=getgridresults, jeton ajaxtoken de la page province, p_territories[]=4 = Québec, 64 fiches/page). Particularité : les valeurs du filtre statut de l'UI (1=For Sale, 3=For Rent) sont remappées côté serveur — on passe p_status[]=2 (neutre → aucun filtre → tout l'inventaire actif) et on écarte les locations («…/mo») au parsing. ~1 100 fiches QC dont ~965 à vendre (2026-08-18) contre ~40-60 avant (grid public plafonné). Enrichissement JSON-LD Product par fiche : prix, galerie S3 complète, description, MLS (sku). Repli : ancien parcours des pages région.

# Mécanique (introspection du code)

  • Module : immoka/connectors/sothebys_quebec.py — classe SothebysQuebecConnector
  • Délai entre requêtes : 1.0 s ; cache détail BD : oui
  • Budgets env (enrichissement détail plafonné/exécution) : IMMOKA_SOTHEBYS_DETAIL_LIMIT (défaut 400), IMMOKA_SOTHEBYS_MAX_PAGES (défaut 30)

En-tête du module :

Immo-Ka — Agrégateur de maisons à vendre (province de Québec) Auteur : Simon-Pierre Boucher — contact@spboucher.ai connectors/sothebys_quebec.py : Sotheby's International Realty Québec Inventaire COMPLET via l'API AJAX interne du site : GET /include/ajax_results.php?dowhat=getgridresults&token=…&p_territories[]=4 (territoire 4 = province de Québec ; jeton ajaxtoken exposé dans la page /en/search-results/province-quebec-real-estate/). Pagination 64 fiches/page. Particularité serveur : les valeurs du filtre statut de l'interface (1 = For Sale, 3 = For Rent) sont REMAPPÉES côté serveur — p_status[]=1 renvoie 0 résultat et p_status[]=3 seulement les locations. On passe donc une valeur neutre (2) qui désactive le filtre et renvoie TOUT l'inventaire actif (vente + location), puis on écarte les locations (« …/mo ») au parsing. Chaque carte porte data-lat/lng/img/price + adresse/ville + CAC/SDB. Enrichissement fiche détail (JSON-LD Product) : prix, galerie S3 complète, description, n° MLS = sku. Repli : ancien parcours des pages région si l'AJAX venait à changer.

# Volumétrie & complétude (BD live)

Indicateur Valeur
Annonces en base (toutes) 927
Actives 877
Visibles (après dédup) 876
Masquées par la dédup 1
GPS (lat/lng) 99.7 %
Photos 100.0 %
Prix 100.0 %
CAC (chambres) 78.0 %
SDB (salles de bains) 74.5 %
Année de construction 60.8 % (dont rôle : 5.8 %)
Taxes / évaluation municipale 0.0 %
Estimation Vrai-Prix (rôle) 100.0 %

# Synchronisation

  • Dernier sync : 2026-08-28 17:36 — trouvé 877, +0 / ~0 / -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).