Immo-Ka — agrégateur des propriétés à vendre au Québec (73 connecteurs, ~40 000 annonces, React+FastAPI)
Python 47.5%
HTML 27.9%
TypeScript 15.5%
CSS 7.2%
JavaScript 2%
1# Keller Williams Distinction (`kw_distinction`)23*Généré le 2026-08-28 22:22 par `scripts/gen_connector_docs.py` — fichier produit automatiquement, ne pas éditer à la main.*45## Registre (`data/sources.json`)67- **Site** : https://www.kwdistinction.com8- **Recherche** : https://www.kwdistinction.com/maison-a-vendre-au-quebec/condo-a-vendre-au-quebec/9- **Couverture** : Gatineau / Outaouais10- **Type** : franchise11- **Statut** : actif1213> ASP.NET (Olivex/tonikweb) : page resultats rendue serveur, paginee PageID=1..N (~6 cartes/page) — cartes completes (type, prix, adresse, ville/secteur, MLS, cac/sdb, resume, photo). Fiches detail rendues serveur : galerie /_upload/photos/{id}-{n}.jpg, description, tableau Details, proximite. NE PAS utiliser sitemap.xml (URLs anciennes sector--city -> /Pages/Erreur/). ~197 inscriptions dont ~144 avec prix (reste locations/commercial au pi2). 2026-08-23 : cert TLS expire (verify=False en session) et recherche globale /Pages/Listings/Default.aspx en 500 -> repli du connecteur sur les pages courtier (annuaire courtier-immobilier-hull, memes cartes listing_bloc, pagination PageID par courtier).1415## Mécanique (introspection du code)1617- Module : `immoka/connectors/kw_distinction.py` — classe `KwDistinctionConnector`18- Délai entre requêtes : 0.5 s ; cache détail BD : oui19- Budgets env (enrichissement détail plafonné/exécution) : `IMMOKA_KW_DETAIL_LIMIT` (défaut 400)2021**En-tête du module :**2223> Immo-Ka — Agrégateur de maisons à vendre (province de Québec)24> Auteur : Simon-Pierre Boucher — contact@spboucher.ai25> connectors/kw_distinction.py : Keller Williams Distinction (Gatineau/Outaouais)26> Site ASP.NET (plateforme Olivex/tonikweb). La page « Trouver une propriété »27> est rendue serveur et paginée par querystring (PageID=1..N, ~6 cartes/page,28> total affiché « N résultat(s) ») : cartes complètes — type, prix, adresse,29> ville (secteur), MLS, cac/sdb, résumé, photo. Les fiches détail sont aussi30> rendues serveur : galerie complète (/_upload/photos/{id}-{n}.jpg),31> description, tableau « Détails de la propriété », proximité.32> ⚠️ Ne PAS revenir au sitemap.xml : il est figé (anciennes URL33> « sector--city » qui redirigent toutes vers /Pages/Erreur/) — c'est ce qui34> avait laissé la source à 0 % prix/photos/description.35> ⚠️ 2026-08-23 : double panne côté site — (1) cert TLS expiré (Let's Encrypt36> non renouvelé) → SSLError sur toute requête directe ; (2) la recherche37> globale (/Pages/Listings/Default.aspx) répond 500 → redirect /Pages/500/.38> Parades : session en verify=False, et si la recherche donne 0 carte, repli39> sur les pages courtier (même markup listing_bloc, module distinct qui40> fonctionne) énumérées depuis l'annuaire des courtiers.4142## Volumétrie & complétude (BD live)4344| Indicateur | Valeur |45|---|---|46| Annonces en base (toutes) | 375 |47| Actives | 196 |48| Visibles (après dédup) | 196 |49| Masquées par la dédup | 0 |50| GPS (lat/lng) | 42.9 % |51| Photos | 100.0 % |52| Prix | 76.5 % |53| CAC (chambres) | 100.0 % |54| SDB (salles de bains) | 100.0 % |55| Année de construction | 72.4 % (dont rôle : 0.0 %) |56| Taxes / évaluation municipale | 100.0 % |57| Estimation Vrai-Prix (rôle) | 100.0 % |5859## Synchronisation6061- **Dernier sync** : 2026-08-28 16:36 — trouvé 196, +0 / ~0 / -0 — OK62- **Erreurs récentes** : 0 sur les 10 derniers syncs6364Voir aussi les [mécanismes transverses](INDEX.md#mécanismes-transverses-tous-connecteurs) (budgets détail, dédup Centris+adresse, jointure rôle vraiprix.db).65