docs: documentation standardisée des 214 connecteurs (générateur + fiches)
scripts/gen_connector_docs.py : générateur 100 % programmatique et rejouable qui croise data/sources.json, l introspection statique (ast) du code des connecteurs et la BD live (volumétrie, complétude SQL par champ, sync_log). Écrit docs/connecteurs/INDEX.md + une fiche par connecteur (sections fixes : description, accès, champs -> schéma, fréquence & budget, volumétrie, erreurs, licence, historique). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
216 changed files +17,888 −0
added
docs/connecteurs/INDEX.md
+288 −0
@@ -0,0 +1,288 @@ | |||||
| 1 | +# Lou-Ka — Index des connecteurs | ||||
| 2 | + | ||||
| 3 | +_Généré automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**214 connecteurs documentés** (212 activés, 2 désactivés) · **51247 annonces actives** au total · registre : 275 entrées. | ||||
| 6 | + | ||||
| 7 | +| Connecteur | Nom | Région | Type d'accès | Backend | Actives/Total | GPS | Prix | Photos | État | Dernier sync OK | | ||||
| 8 | +|---|---|---|---|---|---|---|---|---|---|---| | ||||
| 9 | +| [`aalto`](aalto.md) | Aalto Suites (Zibi / Dream) | Outaouais | API JSON interne du site | direct | 26/33 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 10 | +| [`acceslogis_gb`](acceslogis_gb.md) | Accès Logis GB | Lanaudière / Mauric… | pages HTML (rendu serveur) | direct | 10/11 | 20 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 11 | +| [`agence_sherbrooke`](agence_sherbrooke.md) | Agence de location Sherbrooke (groupe P… | Estrie | sitemap XML + pages HTML | direct | 14/18 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 12 | +| [`akelius`](akelius.md) | Akelius Montréal | Montréal | pages HTML (rendu serveur) | direct | 242/290 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 13 | +| [`alexcellence`](alexcellence.md) | Immeubles Alexcellence | Estrie | pages HTML (rendu serveur) | direct | 6/6 | 50 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 14 | +| [`alias_appartements`](alias_appartements.md) | Alias Appartements | Saguenay–Lac-Saint-… | sitemap XML + pages HTML | direct | 1/1 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 15 | +| [`alouer_sherbrooke`](alouer_sherbrooke.md) | À Louer Sherbrooke | Estrie | API admin-ajax (WordPress) | direct | 1/1 | 0 % | 0 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 16 | +| [`app_urbains`](app_urbains.md) | Appartements Urbains | Québec | sitemap XML + pages HTML | direct | 18/21 | 100 % | 83 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 17 | +| [`appartements_rimouski`](appartements_rimouski.md) | Appartements Rimouski (Immeubles DTM) | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 19/20 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 18 | +| [`ascensio`](ascensio.md) | Groupe Ascensio | Estrie | pages HTML (rendu serveur) | direct | 9/10 | 44 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 19 | +| [`atlas_immo`](atlas_immo.md) | Atlas société immobilière | Chaudière-Appalaches | pages HTML (rendu serveur) | direct | 0/0 | — | — | — | actif | 2026-08-18 03:15 | | ||||
| 20 | +| [`aula`](aula.md) | AULA Lévis | Québec | API REST WordPress (wp-json) | direct | 68/70 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 21 | +| [`axia`](axia.md) | Axia Appartements | Montréal | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 22 | +| [`barnes_quebec`](barnes_quebec.md) | BARNES Québec (location) | Montréal | API JSON interne du site | direct | 101/103 | 99 % | 98 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 23 | +| [`beaudoin`](beaudoin.md) | Société Beaudoin Immobilier | Montréal | API REST WordPress (wp-json) | direct | 12/12 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 24 | +| [`beaulieu_groupe`](beaulieu_groupe.md) | Beaulieu Groupe Immobilier (BGI) | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 4/4 | 100 % | 0 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 25 | +| [`bestlife`](bestlife.md) | Les Gestions Bestlife | Estrie | pages HTML (rendu serveur) | direct | 12/13 | 92 % | 100 % | 100 % | actif | 2026-08-18 03:16 | | ||||
| 26 | +| [`boardwalk`](boardwalk.md) | Boardwalk REIT | Montréal | pages HTML (rendu serveur) | direct | 100/100 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:17 | | ||||
| 27 | +| [`bons_locataires`](bons_locataires.md) | Bons Locataires | Grand Montréal | sitemap XML + pages HTML | direct | 14/14 | 100 % | 21 % | 93 % | actif | 2026-08-18 03:18 | | ||||
| 28 | +| [`boreal_abitibi`](boreal_abitibi.md) | Constructions Boréal Abitibi | Abitibi-Témiscaming… | API admin-ajax (WordPress) | direct | 3/5 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 29 | +| [`bribourg`](bribourg.md) | Bribourg | Québec | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 30 | +| [`brigil`](brigil.md) | Brigil | Outaouais | API JSON interne du site | direct | 42/42 | 98 % | 24 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 31 | +| [`brio`](brio.md) | Les Immeubles Brio | Québec | pages HTML (rendu serveur) | direct | 3/3 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 32 | +| [`brivia_1sp`](brivia_1sp.md) | Groupe Brivia (1 Square Phillips) | Montréal | API JSON interne du site | direct | 3/3 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 33 | +| [`brochu`](brochu.md) | Groupe Immobilier Brochu | Québec | pages HTML (rendu serveur) | direct | 7/7 | 86 % | 57 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 34 | +| [`cap_gestion`](cap_gestion.md) | CAP Gestion (CAP Immobilier) | Laurentides / Lanau… | pages HTML (rendu serveur) | direct | 122/122 | 98 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 35 | +| [`capital_rdr`](capital_rdr.md) | Gestion Capital RDR | Mauricie | sitemap XML + pages HTML | direct | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 36 | +| [`capreit`](capreit.md) | CAPREIT | Québec | API admin-ajax (WordPress) | direct | 117/122 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 37 | +| [`carat_immobilier`](carat_immobilier.md) | Carat Immobilier | Abitibi-Témiscaming… | sitemap XML + pages HTML | direct | 3/4 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 38 | +| [`centurion`](centurion.md) | Centurion / CP Living (Quartier QB) | Québec | API JSON interne du site | direct | 4/4 | 100 % | 75 % | 100 % | actif | 2026-08-18 03:18 | | ||||
| 39 | +| [`cite_immobilier`](cite_immobilier.md) | Cité Immobilier | Centre-du-Québec | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 0 % | 0 % | actif | 2026-08-18 03:18 | | ||||
| 40 | +| [`cogir`](cogir.md) | Cogir Immobilier | Québec | pages HTML (rendu serveur) | direct | 285/300 | 89 % | 96 % | 100 % | actif | 2026-08-18 03:20 | | ||||
| 41 | +| [`contraste`](contraste.md) | Contraste Immobilier | Québec | pages HTML (rendu serveur) | direct | 221/234 | 100 % | 86 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 42 | +| [`copley`](copley.md) | Groupe Copley | Montréal | pages HTML (rendu serveur) | direct | 52/52 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 43 | +| [`cosoltec`](cosoltec.md) | Cosoltec (Evado, Le Monroe, Natür) | Laurentides | API JSON interne du site | direct | 44/52 | 98 % | 80 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 44 | +| [`courtemanche`](courtemanche.md) | Gestion Immobilière Courtemanche | Saguenay–Lac-Saint-… | sitemap XML + pages HTML | direct | 0/0 | — | — | — | actif | 2026-08-18 03:21 | | ||||
| 45 | +| [`cromwell`](cromwell.md) | Cromwell Management | Montréal | pages HTML (rendu serveur) | direct | 12/12 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 46 | +| [`denux`](denux.md) | Groupe Denux | Montréal | API JSON interne du site | direct | 18/18 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 47 | +| [`desmarais`](desmarais.md) | Immeubles Desmarais | Outaouais | pages HTML (rendu serveur) | direct | 14/14 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:21 | | ||||
| 48 | +| [`desroches`](desroches.md) | Immeubles Claude Desroches | Montérégie | pages HTML (rendu serveur) | direct | 6/6 | 100 % | 100 % | 50 % | actif | 2026-08-18 03:21 | | ||||
| 49 | +| [`devcore`](devcore.md) | Devcore Group | Côte-Nord | API REST WordPress (wp-json) | direct | 14/14 | 0 % | 7 % | 100 % | actif | 2026-08-18 03:22 | | ||||
| 50 | +| [`devimco`](devimco.md) | Devimco Appartements | Montréal | API JSON interne du site | direct | 480/575 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:22 | | ||||
| 51 | +| [`dma_locago`](dma_locago.md) | DMA / Locago (Douville, Moffet & Associ… | Québec | pages HTML (rendu serveur) | direct | 118/124 | 29 % | 98 % | 100 % | actif | 2026-08-18 03:23 | | ||||
| 52 | +| [`duproprio`](duproprio.md) | DuProprio (location) | Province | sitemap XML + pages HTML | direct | 3890/3896 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:23 | | ||||
| 53 | +| [`dynamic`](dynamic.md) | Gestion immobilière Dynamic | Estrie | pages HTML (rendu serveur) | direct | 48/53 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 54 | +| [`edifia`](edifia.md) | Edifia Groupe Immobilier | Québec | pages HTML (rendu serveur) | direct | 180/185 | 100 % | 93 % | 100 % | actif | 2026-08-18 03:24 | | ||||
| 55 | +| [`elements`](elements.md) | Quartier les Éléments | Québec | pages HTML (rendu serveur) | direct | 2/4 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:24 | | ||||
| 56 | +| [`elite`](elite.md) | Elite Immobilier | Outaouais | pages HTML (rendu serveur) | direct | 12/12 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:24 | | ||||
| 57 | +| [`elk`](elk.md) | ELK Property Management | Outaouais | pages HTML (rendu serveur) | direct | 3/3 | 67 % | 100 % | 100 % | actif | 2026-08-18 03:24 | | ||||
| 58 | +| [`equinoxe_batimo`](equinoxe_batimo.md) | Batimo/EMD — Collection Équinoxe | Montréal | API admin-ajax (WordPress) | direct | 615/662 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:26 | | ||||
| 59 | +| [`evoludev`](evoludev.md) | Groupe Evoludev | Lanaudière | pages HTML (rendu serveur) | direct | 134/134 | 100 % | 99 % | 100 % | actif | 2026-08-18 03:26 | | ||||
| 60 | +| [`fb_marketplace`](fb_marketplace.md) | Facebook Marketplace (location) | Province | pages HTML (rendu serveur) | direct | 2107/5142 | 15 % | 100 % | 100 % | actif | 2026-08-18 02:58 | | ||||
| 61 | +| [`ferrovia`](ferrovia.md) | Ferrovia (condos locatifs Mirabel) | Laurentides | pages HTML (rendu serveur) | direct | 23/24 | 0 % | 0 % | 0 % | actif | 2026-08-18 01:37 | | ||||
| 62 | +| [`firma`](firma.md) | Groupe Firma | Montréal | API REST WordPress (wp-json) | direct | 12/12 | 75 % | 8 % | 100 % | actif | 2026-08-18 01:37 | | ||||
| 63 | +| [`floria`](floria.md) | Gestion Floria | Estrie | pages HTML (rendu serveur) | direct | 21/21 | 100 % | 24 % | 95 % | actif | 2026-08-18 01:38 | | ||||
| 64 | +| [`forsa`](forsa.md) | Gestion immobilière Forsa | Lanaudière | pages HTML (rendu serveur) | direct | 13/13 | 92 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 65 | +| [`fournelle`](fournelle.md) | Appartements Fournelle (Groupe Fournell… | Centre-du-Québec | pages HTML (rendu serveur) | direct | 4/4 | 0 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 66 | +| [`garic`](garic.md) | Garic Gestion Immobilière | Outaouais | API admin-ajax (WordPress) | direct | 45/54 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 67 | +| [`gesteco`](gesteco.md) | Gesteco | Montérégie | API JSON interne du site | direct | 10/14 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 68 | +| [`gestimmo_estrie`](gestimmo_estrie.md) | Gestimmo Estrie | Estrie | pages HTML (rendu serveur) | direct | 41/41 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 69 | +| [`gestion_fauvel`](gestion_fauvel.md) | Gestion Fauvel | Centre-du-Québec | pages HTML (rendu serveur) | direct | 11/11 | 91 % | 91 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 70 | +| [`gestion_habitation`](gestion_habitation.md) | Gestion Habitation | Abitibi-Témiscaming… | sitemap XML + pages HTML | direct | 4/4 | 0 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 71 | +| [`gestion_isr`](gestion_isr.md) | Gestion ISR | Centre-du-Québec | pages HTML (rendu serveur) | direct | 20/22 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 72 | +| [`gestion_jdm`](gestion_jdm.md) | JDM Gestion immobilière | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 2/2 | 100 % | 0 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 73 | +| [`gestion_laprise`](gestion_laprise.md) | Gestion Laprise | Côte-Nord | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 50 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 74 | +| [`gestion_legrand`](gestion_legrand.md) | Gestion Le Grand | Centre-du-Québec | API REST WordPress (wp-json) | direct | 5/5 | 40 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 75 | +| [`gestion_montreal`](gestion_montreal.md) | Gestion Montréal | Montréal | pages HTML (rendu serveur) | direct | 22/24 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 76 | +| [`gestion_tb`](gestion_tb.md) | Gestion TB (portail Appartements TB) | Centre-du-Québec | pages HTML (rendu serveur) | direct | 31/35 | 0 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 77 | +| [`gestion_valco`](gestion_valco.md) | Gestion Valco | Mauricie | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 0 % | 50 % | actif | 2026-08-18 01:38 | | ||||
| 78 | +| [`gestipro`](gestipro.md) | Gestipro | Québec | pages HTML (rendu serveur) | direct | 98/116 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 79 | +| [`gia_t`](gia_t.md) | GIA-T — Gestion Immobilière Abitibi-Tém… | Abitibi-Témiscaming… | pages HTML (rendu serveur) | direct | 3/4 | 67 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 80 | +| [`gimcote`](gimcote.md) | GIM Côté | Québec | pages HTML (rendu serveur) | direct | 85/89 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 81 | +| [`gio`](gio.md) | Gestion Immobilière de l'Outaouais (GIO) | Outaouais | pages HTML (rendu serveur) | direct | 5/5 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 82 | +| [`girescom`](girescom.md) | Girescom gestion immobilière | Québec | pages HTML (rendu serveur) | direct | 40/41 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 83 | +| [`girs`](girs.md) | GIRS — Gestion Immobilière de la Rive S… | Chaudière-Appalaches | sitemap XML + pages HTML | direct | 8/8 | 100 % | 0 % | 100 % | actif | 2026-08-18 01:38 | | ||||
| 84 | +| [`gparadis`](gparadis.md) | GParadis | Québec | pages HTML (rendu serveur) | direct | 22/22 | 82 % | 0 % | 100 % | actif | 2026-08-18 01:39 | | ||||
| 85 | +| [`groupe_dallaire`](groupe_dallaire.md) | Groupe Dallaire (Faubourg du Moulin) | Québec | API admin-ajax (WordPress) | Scrapfly | 255/259 | 100 % | 100 % | 100 % | actif (dégradé) | 2026-08-18 01:44 | | ||||
| 86 | +| [`groupe_jacques`](groupe_jacques.md) | Groupe Jacques | Centre-du-Québec | pages HTML (rendu serveur) | direct | 10/11 | 100 % | 60 % | 100 % | actif | 2026-08-18 01:39 | | ||||
| 87 | +| [`groupe_maurice`](groupe_maurice.md) | Le Groupe Maurice | Province | API REST WordPress (wp-json) | direct | 203/203 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:40 | | ||||
| 88 | +| [`groupe_robin`](groupe_robin.md) | Groupe Robin | Mauricie | API admin-ajax (WordPress) | direct | 72/74 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:40 | | ||||
| 89 | +| [`groupe_theoret`](groupe_theoret.md) | Groupe Théorêt (Gestion Immobilière) | Mauricie | pages HTML (rendu serveur) | direct | 24/24 | 83 % | 100 % | 0 % | actif | 2026-08-18 01:40 | | ||||
| 90 | +| [`habitations_jeanne`](habitations_jeanne.md) | Les Habitations Jeanne | Côte-Nord | sitemap XML + pages HTML | direct | 14/14 | 100 % | 0 % | 100 % | actif | 2026-08-18 01:40 | | ||||
| 91 | +| [`habitations_sf`](habitations_sf.md) | Les Habitations SF (S&F Gestion) | Lanaudière | pages HTML (rendu serveur) | direct | 7/7 | 43 % | 86 % | 100 % | actif | 2026-08-18 01:40 | | ||||
| 92 | +| [`halfred`](halfred.md) | Halfred | Outaouais | pages HTML (rendu serveur) | direct | 164/169 | 93 % | 100 % | 100 % | actif | 2026-08-18 01:41 | | ||||
| 93 | +| [`hazelview`](hazelview.md) | Hazelview Properties | Montréal | API JSON interne du site | direct | 6/6 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:41 | | ||||
| 94 | +| [`headway`](headway.md) | La Corporation Headway | Québec | pages HTML (rendu serveur) | direct | 7/7 | 86 % | 0 % | 100 % | actif | 2026-08-18 01:41 | | ||||
| 95 | +| [`heafey`](heafey.md) | Groupe Heafey (Le We 2, Le We 3, Loggia… | Outaouais | API JSON interne du site | direct | 246/255 | 15 % | 0 % | 100 % | actif | 2026-08-18 01:41 | | ||||
| 96 | +| [`hestia`](hestia.md) | Hestia Groupe immobilier | Mauricie | pages HTML (rendu serveur) | direct | 3/3 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:41 | | ||||
| 97 | +| [`huma`](huma.md) | HUMĀ Condos locatifs | Québec | pages HTML (rendu serveur) | direct | 38/38 | 26 % | 0 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 98 | +| [`immeubles_aeb`](immeubles_aeb.md) | Immeubles AEB | Saguenay–Lac-Saint-… | pages HTML (rendu serveur) | direct | 26/26 | 100 % | 100 % | 81 % | actif | 2026-08-18 01:42 | | ||||
| 99 | +| [`immeubles_bc`](immeubles_bc.md) | Les Immeubles Beaulieu et Collin | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 20/26 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 100 | +| [`immeubles_bois`](immeubles_bois.md) | Les Immeubles Bois | Bas-Saint-Laurent | pages HTML (rendu serveur) | direct | 23/23 | 83 % | 0 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 101 | +| [`immeubles_db`](immeubles_db.md) | Les Immeubles D.B. Busque-Massé | Estrie | pages HTML (rendu serveur) | direct | 13/13 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 102 | +| [`immeubles_dcl`](immeubles_dcl.md) | Les Immeubles DCL | Abitibi-Témiscaming… | pages HTML (rendu serveur) | direct | 8/11 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 103 | +| [`immeubles_guillot`](immeubles_guillot.md) | Les Immeubles Guillot | Québec | pages HTML (rendu serveur) | direct | 7/7 | 57 % | 0 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 104 | +| [`immeubles_ouellet`](immeubles_ouellet.md) | Les Immeubles Vianney Ouellet & Fils | Bas-Saint-Laurent | pages HTML (rendu serveur) | direct | 1/1 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 105 | +| [`immeubles_pm`](immeubles_pm.md) | Les Immeubles PM | Estrie | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 106 | +| [`immnasr`](immnasr.md) | Les Immeubles Michel Nazair | Outaouais | pages HTML (rendu serveur) | direct | 3/3 | 67 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 107 | +| [`immobilia`](immobilia.md) | Immobilia Rimouski | Bas-Saint-Laurent | pages HTML (rendu serveur) | direct | 1/2 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 108 | +| [`immogex`](immogex.md) | Immogex | Centre-du-Québec | pages HTML (rendu serveur) | direct | 3/3 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:42 | | ||||
| 109 | +| [`immomarketing`](immomarketing.md) | IMMOMARKETING (Immoappart) | Québec | pages HTML (rendu serveur) | direct | 84/90 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:43 | | ||||
| 110 | +| [`immostar`](immostar.md) | Immostar | Québec | API REST WordPress (wp-json) | direct | 156/165 | 72 % | 99 % | 100 % | actif | 2026-08-18 01:43 | | ||||
| 111 | +| [`info_logement`](info_logement.md) | Info-Logement | Lanaudière | pages HTML (rendu serveur) | direct | 50/56 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:43 | | ||||
| 112 | +| [`interrent`](interrent.md) | InterRent REIT (CLV Group) | Montréal | pages HTML (rendu serveur) | direct | 200/211 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:43 | | ||||
| 113 | +| [`jutras`](jutras.md) | Habitations Jutras | Centre-du-Québec | pages HTML (rendu serveur) | direct | 35/35 | 0 % | 54 % | 100 % | actif | 2026-08-18 01:44 | | ||||
| 114 | +| [`kangalou`](kangalou.md) | Kangalou | Province | API JSON interne du site | direct | 7916/7916 | 100 % | 100 % | 99 % | actif | 2026-08-18 03:09 | | ||||
| 115 | +| [`kass`](kass.md) | KASS Property Management | Outaouais | pages HTML (rendu serveur) | direct | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:44 | | ||||
| 116 | +| [`katasa`](katasa.md) | Groupe Katasa | Outaouais | pages HTML (rendu serveur) | direct | 4/4 | 0 % | 100 % | 100 % | actif | 2026-08-18 01:44 | | ||||
| 117 | +| [`kijiji`](kijiji.md) | Kijiji Québec (location) | Province | pages HTML (rendu serveur) | direct | 5276/7407 | 100 % | 97 % | 99 % | actif | 2026-08-18 01:53 | | ||||
| 118 | +| [`la_cour`](la_cour.md) | La Cour Appartements | Québec | API REST WordPress (wp-json) | direct | 20/21 | 100 % | 100 % | 100 % | actif | 2026-08-18 03:15 | | ||||
| 119 | +| [`laberge`](laberge.md) | Groupe Laberge | Québec | pages HTML (rendu serveur) | direct | 55/58 | 93 % | 100 % | 100 % | actif | 2026-08-18 01:53 | | ||||
| 120 | +| [`labonte`](labonte.md) | Gestion Labonté | Estrie | pages HTML (rendu serveur) | direct | 18/18 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:53 | | ||||
| 121 | +| [`lachance`](lachance.md) | Les Entreprises Lachance | Estrie | sitemap XML + pages HTML | direct | 65/86 | 95 % | 100 % | 100 % | actif | 2026-08-18 01:54 | | ||||
| 122 | +| [`lacite`](lacite.md) | La Cité Gatineau (Adam Real Estate) | Outaouais | pages HTML (rendu serveur) | direct | 6/7 | 0 % | 0 % | 100 % | actif | 2026-08-18 01:57 | | ||||
| 123 | +| [`lafrance_mathieu`](lafrance_mathieu.md) | Lafrance & Mathieu | Québec | pages HTML (rendu serveur) | direct | 37/40 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:57 | | ||||
| 124 | +| [`lakle`](lakle.md) | La Klé | Québec | API REST WordPress (wp-json) | direct | 45/49 | 100 % | 56 % | 96 % | actif | 2026-08-18 01:58 | | ||||
| 125 | +| [`lambert`](lambert.md) | Société Immobilière Lambert | Mauricie | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 50 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 126 | +| [`laureat_richard`](laureat_richard.md) | Logements Lauréat Richard | Estrie | pages HTML (rendu serveur) | direct | 23/23 | 100 % | 0 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 127 | +| [`le_baronet`](le_baronet.md) | Le Baronet | Chaudière-Appalaches | sitemap XML + pages HTML | direct | 3/3 | 0 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 128 | +| [`le_st_georges`](le_st_georges.md) | Le St-Georges | Chaudière-Appalaches | API REST WordPress (wp-json) | direct | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 129 | +| [`leclif`](leclif.md) | Le Clif | Québec | pages HTML (rendu serveur) | direct | 9/9 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 130 | +| [`ledomaine`](ledomaine.md) | Les Habitations Le Domaine | Montréal | pages HTML (rendu serveur) | direct | 5/5 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 131 | +| [`lelaureat`](lelaureat.md) | Résidences Le Lauréat | Estrie | pages HTML (rendu serveur) | direct | 5/5 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 132 | +| [`lequerre`](lequerre.md) | Habitations L'Équerre | Estrie | pages HTML (rendu serveur) | direct | 1/1 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:58 | | ||||
| 133 | +| [`lespac`](lespac.md) | LesPAC (location) | Province | pages HTML (rendu serveur) | direct | 2253/2566 | 47 % | 87 % | 93 % | actif | 2026-08-17 22:44 | | ||||
| 134 | +| [`leviu`](leviu.md) | Le VIU / VIU2 (Groupe Heafey) | Outaouais | pages HTML (rendu serveur) | direct | 2/2 | 0 % | 100 % | 100 % | actif | 2026-08-17 22:44 | | ||||
| 135 | +| [`location_di`](location_di.md) | Location DI (Groupe Sphère DI) | Mauricie / Lanaudiè… | pages HTML (rendu serveur) | direct | 9/12 | 100 % | 100 % | 100 % | actif | 2026-08-17 22:44 | | ||||
| 136 | +| [`location_saguenay`](location_saguenay.md) | Location Saguenay | Saguenay–Lac-Saint-… | pages HTML (rendu serveur) | direct | 21/21 | 76 % | 0 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 137 | +| [`loftsmtl`](loftsmtl.md) | Lofts MTL | Montréal | API JSON interne du site | direct | 9/9 | 100 % | 100 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 138 | +| [`logement_mauricie`](logement_mauricie.md) | Logement Mauricie (regroupement de prop… | Mauricie | pages HTML (rendu serveur) | direct | 1/1 | 100 % | 100 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 139 | +| [`logis_experts`](logis_experts.md) | Logis-Experts | Québec | API JSON interne du site | direct | 498/517 | 100 % | 100 % | 39 % | actif | 2026-08-17 22:45 | | ||||
| 140 | +| [`logisbourg`](logisbourg.md) | Logisbourg | Québec | pages HTML (rendu serveur) | direct | 11/14 | 100 % | 100 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 141 | +| [`logisco`](logisco.md) | Logisco | Québec | pages HTML (rendu serveur) | direct | 157/174 | 99 % | 100 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 142 | +| [`logisma`](logisma.md) | Logisma | Québec | API REST WordPress (wp-json) | direct | 15/19 | 80 % | 100 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 143 | +| [`logispro`](logispro.md) | LogisPro Rimouski | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 4/4 | 100 % | 75 % | 100 % | actif | 2026-08-17 22:45 | | ||||
| 144 | +| [`logisquebec`](logisquebec.md) | LogisQuébec | Province | sitemap XML + pages HTML | direct | 6393/6396 | 100 % | 100 % | 100 % | actif | 2026-08-18 02:51 | | ||||
| 145 | +| [`lokalia`](lokalia.md) | Espaces Lokalia | Québec | API admin-ajax (WordPress) | direct | 131/135 | 100 % | 82 % | 100 % | actif | 2026-08-17 23:06 | | ||||
| 146 | +| [`louer_ca`](louer_ca.md) | Louer.ca | Province | API GraphQL interne | direct | 4370/5321 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 147 | +| [`louer_saguenay`](louer_saguenay.md) | Louer Saguenay | Saguenay–Lac-Saint-… | sitemap XML + pages HTML | direct | 5/5 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 148 | +| [`louis14`](louis14.md) | Quartier Louis Quatorze (Groupe Damco) | Québec | pages HTML (rendu serveur) | direct | 18/18 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 149 | +| [`lr_gestion`](lr_gestion.md) | LR Gestion immobilière (LR Location) | Outaouais | pages HTML (rendu serveur) | direct | 111/116 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 150 | +| [`luxuor`](luxuor.md) | Les Immeubles Luxuor | Saguenay–Lac-Saint-… | pages HTML (rendu serveur) | direct | 4/4 | 75 % | 0 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 151 | +| [`lynk_olymbec`](lynk_olymbec.md) | Lynk (Olymbec) | Montréal | pages HTML (rendu serveur) | Firecrawl | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 152 | +| [`m_immobilier`](m_immobilier.md) | M Immobilier (location) | Montréal | pages HTML (rendu serveur) | direct | 192/198 | 59 % | 100 % | 100 % | actif | 2026-08-17 23:14 | | ||||
| 153 | +| [`majestic`](majestic.md) | Le Majestic du Lac Boivin | Montérégie | pages HTML (rendu serveur) | direct | 1/1 | 100 % | 100 % | 0 % | actif | 2026-08-17 23:14 | | ||||
| 154 | +| [`matinale`](matinale.md) | Gestion Matinale | Estrie | pages HTML (rendu serveur) | direct | 44/45 | 57 % | 100 % | 100 % | actif | 2026-08-17 23:15 | | ||||
| 155 | +| [`may_bourg`](may_bourg.md) | Gestion May Bourg | Centre-du-Québec | API REST WordPress (wp-json) | direct | 6/7 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:15 | | ||||
| 156 | +| [`medway`](medway.md) | Groupe Medway | Bas-Saint-Laurent | pages HTML (rendu serveur) | direct | 488/498 | 91 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 157 | +| [`mellem`](mellem.md) | Mellem (Groupe Mach) | Outaouais | sitemap XML + pages HTML | direct | 78/87 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 158 | +| [`mercini`](mercini.md) | Groupe Mercini (Gestion Faleschini Merc… | Québec | pages HTML (rendu serveur) | direct | 47/52 | 94 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 159 | +| [`metcap`](metcap.md) | MetCap Living | Montréal | pages HTML (rendu serveur) | direct | 8/8 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 160 | +| [`minto`](minto.md) | Minto Apartments | Montréal | pages HTML (rendu serveur) | direct | 19/20 | 84 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 161 | +| [`mkar`](mkar.md) | Gestion Immobilière MKAR | Saguenay–Lac-Saint-… | sitemap XML + pages HTML | direct | 5/5 | 100 % | 0 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 162 | +| [`moderno`](moderno.md) | Moderno Construction | Lanaudière | pages HTML (rendu serveur) | direct | 7/7 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:16 | | ||||
| 163 | +| [`mondev`](mondev.md) | Mondev | Montréal | pages HTML (rendu serveur) | direct | 47/49 | 49 % | 100 % | 100 % | actif | 2026-08-17 23:17 | | ||||
| 164 | +| [`montagnais`](montagnais.md) | Le Montagnais, résidences étudiantes | Estrie | API admin-ajax (WordPress) | direct | 31/31 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:17 | | ||||
| 165 | +| [`morin`](morin.md) | Constructions Morin | Estrie | pages HTML (rendu serveur) | direct | 6/7 | 83 % | 100 % | 100 % | actif | 2026-08-17 23:17 | | ||||
| 166 | +| [`msi`](msi.md) | MSI Gestion immobilière | Québec | pages HTML (rendu serveur) | direct | 96/105 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:18 | | ||||
| 167 | +| [`multi_logis`](multi_logis.md) | Multi-Logis | Côte-Nord | sitemap XML + pages HTML | direct | 27/27 | 100 % | 96 % | 70 % | actif | 2026-08-17 23:18 | | ||||
| 168 | +| [`niddamour`](niddamour.md) | Nid d'Amour | Montréal | API JSON interne du site | direct | 14/14 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:18 | | ||||
| 169 | +| [`novelo`](novelo.md) | Les Appartements Novelo | Saguenay–Lac-Saint-… | sitemap XML + pages HTML | direct | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:18 | | ||||
| 170 | +| [`oklouer`](oklouer.md) | OK Louer (location temporaire) | Québec | pages HTML (rendu serveur) | direct | 41/41 | 95 % | 100 % | 100 % | actif | 2026-08-17 23:18 | | ||||
| 171 | +| [`omhm`](omhm.md) | OMHM — logements abordables | Montréal | pages HTML (rendu serveur) | direct | 3/3 | 0 % | 100 % | 0 % | actif | 2026-08-17 23:18 | | ||||
| 172 | +| [`osgoode`](osgoode.md) | Osgoode Properties | Outaouais | API JSON interne du site | direct | 4/4 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:18 | | ||||
| 173 | +| [`oxford`](oxford.md) | Appartements Oxford | Estrie | pages HTML (rendu serveur) | direct | 2/2 | 0 % | 100 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 174 | +| [`per`](per.md) | Les Immeubles Paul-E. Richard | Québec | pages HTML (rendu serveur) | direct | 3/3 | 67 % | 100 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 175 | +| [`picard`](picard.md) | Picard Immobilier | Québec | pages HTML (rendu serveur) | direct | 34/34 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 176 | +| [`place_florimay`](place_florimay.md) | Place Florimay | Chaudière-Appalaches | API REST WordPress (wp-json) | direct | 0/0 | — | — | — | actif | 2026-08-17 23:19 | | ||||
| 177 | +| [`plan_a`](plan_a.md) | Plan A Immobilier | Montréal | pages HTML (rendu serveur) | direct | 11/11 | 91 % | 91 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 178 | +| [`progim`](progim.md) | Progim | Montréal | pages HTML (rendu serveur) | direct | 62/68 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 179 | +| [`projection_immo`](projection_immo.md) | Projection Immobilière | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 1/1 | 100 % | 0 % | 100 % | actif | 2026-08-17 23:19 | | ||||
| 180 | +| [`promenade_des_forts`](promenade_des_forts.md) | Promenade des Forts | Québec | pages HTML (rendu serveur) | direct | 2/2 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 181 | +| [`proprio_direct`](proprio_direct.md) | Proprio Direct (location) | Province | API JSON interne du site | direct | 190/190 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 182 | +| [`quanta`](quanta.md) | Gestion Quanta | Outaouais | pages HTML (rendu serveur) | direct | 2/2 | 0 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 183 | +| [`quartier_mosaique`](quartier_mosaique.md) | Quartier Mosaïque (Constrobourg) | Québec | pages HTML (rendu serveur) | direct | 24/24 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 184 | +| [`quartier_oree`](quartier_oree.md) | Quartier Orée | Chaudière-Appalaches | pages HTML (rendu serveur) | direct | 31/31 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 185 | +| [`quartier_plus`](quartier_plus.md) | Le Quartier Plus | Chaudière-Appalaches | sitemap XML + pages HTML | direct | 59/59 | 100 % | 0 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 186 | +| [`quartier_sila`](quartier_sila.md) | Quartier Sila | Québec | pages HTML (rendu serveur) | direct | 199/200 | 100 % | 26 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 187 | +| [`realstar`](realstar.md) | Realstar | Montréal | API JSON interne du site | direct | 9/9 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:20 | | ||||
| 188 | +| [`remax_quebec`](remax_quebec.md) | RE/MAX Québec (location) | Province | pages HTML (rendu serveur) | direct | 3239/3373 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:23 | | ||||
| 189 | +| [`rentals_ca`](rentals_ca.md) | Rentals.ca (Québec) | Province | API GraphQL interne | Scrapfly | 3452/3452 | 100 % | 100 % | 86 % | actif | 2026-08-18 03:14 | | ||||
| 190 | +| [`rentalys`](rentalys.md) | Rentalys | Montréal | pages HTML (rendu serveur) | direct | 10/10 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:23 | | ||||
| 191 | +| [`rivero`](rivero.md) | Le Rivero | Québec | pages HTML (rendu serveur) | direct | 0/214 | — | — | — | désactivé (disabled=True) | — | | ||||
| 192 | +| [`roomies`](roomies.md) | Roomies.ca | Province | sitemap XML + pages HTML | direct | 276/276 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:24 | | ||||
| 193 | +| [`roussin`](roussin.md) | Immeubles Roussin | Québec | pages HTML (rendu serveur) | direct | 36/36 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:24 | | ||||
| 194 | +| [`royal_lepage`](royal_lepage.md) | Royal LePage (location) | Province | pages HTML (rendu serveur) | direct | 952/1043 | 100 % | 100 % | 100 % | actif | 2026-08-18 01:56 | | ||||
| 195 | +| [`savouet`](savouet.md) | Groupe Savouet | Estrie | pages HTML (rendu serveur) | direct | 15/17 | 93 % | 100 % | 100 % | actif | 2026-08-17 23:25 | | ||||
| 196 | +| [`sdg`](sdg.md) | SDG Immobilier | Québec | pages HTML (rendu serveur) | direct | 9/11 | 89 % | 0 % | 100 % | actif | 2026-08-17 23:25 | | ||||
| 197 | +| [`sentinelle`](sentinelle.md) | La Sentinelle (Groupe Immobilier Brochu) | Québec | pages HTML (rendu serveur) | direct | 10/11 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:25 | | ||||
| 198 | +| [`sgiq`](sgiq.md) | SGIQ (Société de gestion immobilière du… | Québec | pages HTML (rendu serveur) | direct | 147/147 | 99 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 199 | +| [`shdm`](shdm.md) | SHDM | Montréal | API GraphQL interne | direct | 2/21 | 50 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 200 | +| [`siagi`](siagi.md) | SIA Gestion Immobilière | Estrie | pages HTML (rendu serveur) | direct | 6/6 | 100 % | 100 % | 0 % | actif | 2026-08-17 23:26 | | ||||
| 201 | +| [`sibelanger`](sibelanger.md) | Société immobilière Bélanger | Québec | pages HTML (rendu serveur) | direct | 12/19 | 83 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 202 | +| [`sig`](sig.md) | Société d'investissement Gilbert (résid… | Québec | pages HTML (rendu serveur) | direct | 4/4 | 75 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 203 | +| [`simard`](simard.md) | Immeubles Simard | Québec | pages HTML (rendu serveur) | direct | 5/5 | 20 % | 40 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 204 | +| [`somex_saintnicolas`](somex_saintnicolas.md) | Somex Saint-Nicolas | Québec | pages HTML (rendu serveur) | direct | 145/145 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 205 | +| [`souleymane`](souleymane.md) | Gestion Souleymane | Outaouais | pages HTML (rendu serveur) | direct | 13/14 | 92 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 206 | +| [`stb_immobilier`](stb_immobilier.md) | STB Immobilier | Bas-Saint-Laurent | sitemap XML + pages HTML | direct | 11/11 | 91 % | 73 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 207 | +| [`summum`](summum.md) | Gestion immobilière Summum | Laurentides | pages HTML (rendu serveur) | direct | 89/95 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:26 | | ||||
| 208 | +| [`sutton`](sutton.md) | Groupe Sutton Québec (location) | Province | sitemap XML + pages HTML | direct | 1224/1392 | 70 % | 73 % | 73 % | actif | 2026-08-17 23:27 | | ||||
| 209 | +| [`terater`](terater.md) | Les Constructions Tèratèr | Estrie | pages HTML (rendu serveur) | direct | 12/14 | 67 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 210 | +| [`terra`](terra.md) | Terra Condos locatifs | Québec | pages HTML (rendu serveur) | direct | 29/51 | 100 % | 90 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 211 | +| [`thrace`](thrace.md) | Gestions Thrace | Mauricie | sitemap XML + pages HTML | direct | 172/182 | 100 % | 66 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 212 | +| [`tri_logis`](tri_logis.md) | Société immobilière Tri-Logis | Abitibi-Témiscaming… | pages HTML (rendu serveur) | direct | 0/1 | — | — | — | actif | 2026-08-17 23:27 | | ||||
| 213 | +| [`trudel`](trudel.md) | Trudel (Fleur de Lys, LGC) | Québec | pages HTML (rendu serveur) | direct | 0/30 | — | — | — | désactivé (disabled=True) | — | | ||||
| 214 | +| [`trylon`](trylon.md) | Trylon Apartments | Montréal | pages HTML (rendu serveur) | direct | 7/7 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 215 | +| [`ubee`](ubee.md) | Ubee (location) | Province | API JSON interne du site | direct | 243/246 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 216 | +| [`uptimo`](uptimo.md) | Uptimo Gestion immobilière | Estrie | pages HTML (rendu serveur) | direct | 62/78 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 217 | +| [`urban_services`](urban_services.md) | Urban Services (Urban Tenant Solutions) | Outaouais | pages HTML (rendu serveur) | direct | 52/56 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 218 | +| [`utile`](utile.md) | UTILE (logement étudiant) | Montréal | pages HTML (rendu serveur) | direct | 28/28 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:27 | | ||||
| 219 | +| [`via_capitale`](via_capitale.md) | Via Capitale (location) | Province | pages HTML (rendu serveur) | Firecrawl | 193/211 | 54 % | 100 % | 100 % | actif | 2026-08-17 23:28 | | ||||
| 220 | +| [`viridi`](viridi.md) | Le Viridi | Québec | pages HTML (rendu serveur) | direct | 16/17 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:28 | | ||||
| 221 | +| [`wandji`](wandji.md) | Gestion Immobilière Wandji | Outaouais | API JSON interne du site | direct | 25/30 | 100 % | 100 % | 100 % | actif | 2026-08-17 23:28 | | ||||
| 222 | +| [`werkliv`](werkliv.md) | Werkliv | Montréal | pages HTML (rendu serveur) | direct | 4/4 | 0 % | 100 % | 100 % | actif | 2026-08-17 23:28 | | ||||
| 223 | + | ||||
| 224 | +## Entrées du registre sans module connecteur | ||||
| 225 | + | ||||
| 226 | +Sources recensées mais non connectées (voir le champ `status` du registre pour la raison détaillée) : | ||||
| 227 | + | ||||
| 228 | +- `alexandre_pelletier` — Les Immeubles Alexandre Pelletier (non connectable) | ||||
| 229 | +- `beaulieu_gestion` — Beaulieu Gestion Immobilière (non connectable) | ||||
| 230 | +- `bloc` — Société Immobilière BLOC (non connectable) | ||||
| 231 | +- `condos_laurentides` — Condos Laurentides (Le Rocher / Le Rivya) (non connectable) | ||||
| 232 | +- `custeau_centro` — Groupe Custeau / Espace Centro (Le MW) (non connectable actuellement) | ||||
| 233 | +- `danelly` — Groupe Immobilier Danelly (non connectable) | ||||
| 234 | +- `devco` — Groupe Devco Immobilier (non connectable) | ||||
| 235 | +- `developlex` — Déveloplex (non connectable) | ||||
| 236 | +- `gci` — Les Immeubles GCI (non connectable) | ||||
| 237 | +- `gestion77` — Gestion Immobilière 7/7 (non connectable) | ||||
| 238 | +- `gestion_buro` — Gestion immobilière Buro (non connectable) | ||||
| 239 | +- `gestion_gt` — Gestion Immeubles GT (GIGT) (non connectable) | ||||
| 240 | +- `gestion_immologis` — Gestion Immo-Logis (non connectable) | ||||
| 241 | +- `gestion_nordsud` — Gestion immobilière Nord-Sud (non connectable) | ||||
| 242 | +- `gestion_traversy` — Gestion Immobilière Lionel Traversy (non connectable) | ||||
| 243 | +- `gocar` — Gestion GOCAR (non connectable actuellement) | ||||
| 244 | +- `godbout` — Gestion A. Godbout (non connectable actuellement) | ||||
| 245 | +- `godin` — Gestion A. Godin (non connectable) | ||||
| 246 | +- `habitat_honguedo` — Habitat Honguedo (non connectable) | ||||
| 247 | +- `hillpark` — Hillpark Capital (non connectable) | ||||
| 248 | +- `hro` — Habitations des Rivières de l'Outaouais (non connectable) | ||||
| 249 | +- `immo_jem` — Immo-Jem inc. (non connectable) | ||||
| 250 | +- `immoestrie` — Gestion immobilière de l'Estrie (non connectable) | ||||
| 251 | +- `immofidelite` — Groupe Immobilier Fidélité (non connectable) | ||||
| 252 | +- `immotop` — ImmoTop (non connectable) | ||||
| 253 | +- `innoplex` — Innoplex Immobilier (non connectable) | ||||
| 254 | +- `jpg` — Construction JPG (non connectable) | ||||
| 255 | +- `landry` — Immeubles Georges Landry (non connectable) | ||||
| 256 | +- `legc` — Le GC (géré par Lafrance & Mathieu) (couvert via lafrance_mathieu) | ||||
| 257 | +- `lib_emd` — Lib Aylmer (EMD-Bâtimo) (non connectable) | ||||
| 258 | +- `lm_gestion` — LM Gestion Immobilière (non connectable) | ||||
| 259 | +- `logements_cote_sud` — Les Logements Côte du Sud (LCS) inc. (non connectable) | ||||
| 260 | +- `lpl` — Immeubles L.P.L. (Loyer Sherbrooke) (non connectable) | ||||
| 261 | +- `maitre_carre` — Maître Carré (non connectable) | ||||
| 262 | +- `maltais` — Gestion Immobilière Maltais (non connectable) | ||||
| 263 | +- `marc_breton` — Gestion Marc Breton (non connectable) | ||||
| 264 | +- `mcf_immo` — MCF Immobilier (Groupe MCF / Marcel Charest et Fils) (non connectable) | ||||
| 265 | +- `mcs5` — Groupe MCS5 (non connectable) | ||||
| 266 | +- `memphremagog` — Groupe Immobilier Memphrémagog (non connectable) | ||||
| 267 | +- `mka` — MKA Gestion Immobilière (non connectable) | ||||
| 268 | +- `mkg_prestige` — MK Gestion Prestige (non connectable) | ||||
| 269 | +- `nicolyn` — Société Nicolyn (non connectable) | ||||
| 270 | +- `novard` — Constructions Novard (non connectable) | ||||
| 271 | +- `odyssee` — Groupe Odyssée (Le Vivo, Novium, Quantum…) (non connectable) | ||||
| 272 | +- `penates` — Gestion Immobilière Pénates et Lares (non connectable) | ||||
| 273 | +- `presquile` — Logis Presqu'Île (non connectable) | ||||
| 274 | +- `prestiplex` — Prestiplex (non connectable) | ||||
| 275 | +- `proplex` — Gestion immobilière Proplex (Immobilier 3C) (non connectable) | ||||
| 276 | +- `quartier_du_moulin` — Quartier du Moulin (non connectable) | ||||
| 277 | +- `quintcap` — Quintcap (non connectable) | ||||
| 278 | +- `ralph` — Ralph condos locatifs (non connectable) | ||||
| 279 | +- `rama` — Groupe Rama (non connectable) | ||||
| 280 | +- `rester` — Rester Management (non connectable) | ||||
| 281 | +- `rivard` — Les Habitations Rivard (non connectable) | ||||
| 282 | +- `rou_bec` — Gestions des immeubles Rou-Bec (non connectable) | ||||
| 283 | +- `serviceplus` — Gestion immobilière Service Plus (non connectable actuellement) | ||||
| 284 | +- `six80` — Appartements Six80 (non connectable) | ||||
| 285 | +- `symphonie` — Symphonie de Cowansville (non connectable) | ||||
| 286 | +- `tourliv` — Tourliv (Rizzo Capital) (non connectable) | ||||
| 287 | +- `vallees` — Gestion des Vallées (non connectable) | ||||
| 288 | +- `verseau` — Gestion Immobilière du Verseau (non connectable) | ||||
added
docs/connecteurs/aalto.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Aalto Suites (Zibi / Dream) — connecteur `aalto` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Outaouais · Backend : direct · Annonces actives : 26/33 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Aalto Suites (aaltosuites.ca — Zibi, Hull) Tours locatives Aalto et Aalto II de Dream, premiers immeubles résidentiels du quartier Zibi (rive québécoise, secteur Hull de Gatineau — 10, rue Jos-Montferrand, J8X 0A6, adresse publiée par le site). Site RentCafe/Yardi (gabarit « ritz ») derrière Cloudflare (403 en direct) : rendu via Firecrawl comme realstar.py/osgoode.py. La page /floorplans (française) publie une carte par PLAN : nom (« Aalto II | S2 »), typologie (« studio / 1 SdB »), superficie en pc, prix « à partir de $1,520.00/mois » et image du plan -> une annonce par plan. Aucun décompte d'unités disponibles publié -> availability vide. NB : le Crawl-delay 10 de zibi.ca ne s'applique qu'à zibi.ca (jamais requêté ici) ; aaltosuites.ca n'impose aucun délai (2 rendus par sync). | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.aaltosuites.ca | ||||
| 12 | +- **Page des annonces** : https://www.aaltosuites.ca/floorplans | ||||
| 13 | +- **Secteurs couverts** : Gatineau (Hull — quartier Zibi) | ||||
| 14 | +- **Module** : `louka/connectors/aalto.py` — classe `AaltoConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : API JSON interne du site | ||||
| 19 | +- **Endpoint de base** : https://www.aaltosuites.ca | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.aaltosuites.ca | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct | ||||
| 24 | +- **Politesse** : 2.0 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, API JSON interne du site) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 26 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | Aalto II \| S2 | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 10, rue Jos-Montferrand, Gatineau | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Gatineau | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Hull | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | Studio | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 520 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 0 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 100 % | 1 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 483 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 0 % | — | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 45.4229721 | | ||||
| 43 | +| `description` | Description | 100 % | studio / 1 SdB — 483 pc — Aalto II — Bienvenue à Aalto et Aalto II — les premiers immeubl… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 1 photo(s) — https://resource.rentcafe.com/image/upload/q_auto,f_auto,c_limit,w_510/s3/2/… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 0 % | [] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"appliances": {"fridge": true}, "balcony": true, "price_from": true} | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.aaltosuites.ca/floorplans | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 26 trouvées, +0 / ~26 / -0 | ||||
| 53 | +- **Throttling** : 2.0 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 33 au total, **26 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync aalto` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='aalto' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 2.0 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/acceslogis_gb.md
+81 −0
@@ -0,0 +1,81 @@ | |||||
| 1 | +# Accès Logis GB — connecteur `acceslogis_gb` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Lanaudière / Mauricie · Backend : direct · Annonces actives : 10/11 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Accès Logis GB (acceslogisgb.com) Gestionnaire de Lanaudière/Mauricie (Joliette, Ste-Élisabeth, St-Ambroise-de-Kildare, Shawinigan…). Site builder mono-page : les cartes « LOGEMENTS DISPONIBLES » vivent dans des grilles .columnswithgap-02 (titre <p.font-026><b>, photo, description <p.font-014> qui se termine par « Disponible … » + « 1150$ PAR MOIS »). Aucune page détail ni URL par annonce : external_id = slug du titre + repère d'étage tiré de la description (les titres se répètent d'un étage à l'autre). 1 requête/sync. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://acceslogisgb.com | ||||
| 12 | +- **Page des annonces** : https://acceslogisgb.com/#logements | ||||
| 13 | +- **Secteurs couverts** : Joliette, Sainte-Élisabeth, Saint-Ambroise-de-Kildare, Crabtree, Berthierville + Shawinigan (rue Frigon) | ||||
| 14 | +- **Module** : `louka/connectors/acceslogis_gb.py` — classe `AccesLogisGBConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : https://acceslogisgb.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://acceslogisgb.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.7 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 10 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 3 1/2, Rang du Ruisseau, Ste-Élisabeth | | ||||
| 33 | +| `address` | Adresse civique | 20 % | 2510 Rang du Ruisseau | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Sainte-Élisabeth | | ||||
| 35 | +| `sector` | Secteur / quartier | 0 % | — | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 125 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 10 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 20 % | 46.0929158 | | ||||
| 43 | +| `description` | Description | 100 % | Logement 3 1/2 à louer, situé au 2510 Rang du Ruisseau à Sainte-Élizabeth, une municipali… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 1 photo(s) — https://acceslogisgb.com/logements-a-louer-lanaudiere/logement-a-louer-saint… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 0 % | [] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 80 % | {} | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://acceslogisgb.com/#logements | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 10 trouvées, +0 / ~10 / -0 | ||||
| 53 | +- **Throttling** : 0.7 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 11 au total, **10 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 20 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 1 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +| Date | Message (sync_log) | | ||||
| 66 | +|---|---| | ||||
| 67 | +| 2026-08-17 17:46 | HTTPSConnectionPool(host='acceslogisgb.com', port=443): Max retries exceeded with url: / (Caused by NewConnectionError("HTTPSConnection(host='acceslogisgb.com'… | | ||||
| 68 | + | ||||
| 69 | +Rejouer la source seule : `python3 run.py sync acceslogis_gb` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='acceslogis_gb' ORDER BY ts DESC LIMIT 5;`). | ||||
| 70 | + | ||||
| 71 | +## Licence, attribution & conditions | ||||
| 72 | + | ||||
| 73 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 74 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.7 s ; cache détail pour minimiser les requêtes. | ||||
| 75 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 76 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 77 | + | ||||
| 78 | +## Historique | ||||
| 79 | + | ||||
| 80 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 81 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/agence_sherbrooke.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Agence de location Sherbrooke (groupe Prestiplex) — connecteur `agence_sherbrooke` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Estrie · Backend : direct · Annonces actives : 14/18 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Agence de location Sherbrooke (agencedelocationsherbrooke.com) — le portail d'annonces du groupe Prestiplex (prestiplex.com n'affiche plus d'inventaire : son sitemap property ne contient qu'une fiche de test). Sherbrooke, East Angus, Magog. Même plateforme WordPress + thème Houzez que Gestion Dynamic : parsing hérité de DynamicConnector. Particularités du site : - la PAGE D'ACCUEIL est la page d'annonces (LIST_PATH = "/") ; - la disponibilité est l'étiquette /label/ de la carte (« Libre maintenant », « Juillet »…) ; - l'adresse complète (Nominatim) est déjà sur la carte (address.item-address) — ville/secteur en sont déduits. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://agencedelocationsherbrooke.com | ||||
| 12 | +- **Page des annonces** : https://agencedelocationsherbrooke.com/ | ||||
| 13 | +- **Secteurs couverts** : Sherbrooke (Fleurimont, Mont-Bellevue, Les Nations), East Angus, Magog | ||||
| 14 | +- **Module** : `louka/connectors/agence_sherbrooke.py` — classe `AgenceSherbrookeConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : sitemap XML + pages HTML | ||||
| 19 | +- **Endpoint de base** : https://agencedelocationsherbrooke.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://agencedelocationsherbrooke.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, sitemap XML + pages HTML) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 14 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 905 Courcelette | | ||||
| 33 | +| `address` | Adresse civique | 100 % | Rue de Courcelette, Mont-Bellevue | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Sherbrooke | | ||||
| 35 | +| `sector` | Secteur / quartier | 79 % | Les Nations | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 795 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 100 % | 1 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 7 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 45.388177 | | ||||
| 43 | +| `description` | Description | 100 % | 3 ½ à louer – Disponible dès maintenant! Caractéristiques : 1 espace de stationnement inc… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 8 photo(s) — https://agencedelocationsherbrooke.com/wp-content/uploads/2026/07/image-2026… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["1 Chambre", "1 Salle de bain", "Chat permis", "Déneigement", "Entré laveuse/sécheuse"] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"inclusions": {"heating": true, "electricity": true}, "appliances": {"washer_dryer": tru… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://agencedelocationsherbrooke.com/property/905-courcelette/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 14 trouvées, +0 / ~14 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 18 au total, **14 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync agence_sherbrooke` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='agence_sherbrooke' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/akelius.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Akelius Montréal — connecteur `akelius` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Montréal · Backend : direct · Annonces actives : 242/290 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Akelius Residential (rent.akelius.com) Page de recherche Canada rendue côté serveur (Angular SSR) : l'état TransferState (<script id="akeliusWebsite-state">) contient le JSON complet des unités canadiennes (adresse, loyer, pi², chambres, photos). On filtre sur le Grand Montréal (Montréal, Westmount, Mont-Royal, Saint-Lambert, Greenfield Park) — Toronto/Ottawa/Gatineau exclus. Chaque unité a aussi un JSON détail (/lettings/marketing/v2/CA/<id>.json) avec les keyfacts complets : inclusions (chauffage, eau chaude, électricité, internet), électroménagers, animaux, meublé, ascenseur, piscine, gym, année de construction, téléphone — visité via le cache self.detail() (max ~150 nouveaux fetchs par synchronisation). | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://rent.akelius.com | ||||
| 12 | +- **Page des annonces** : https://rent.akelius.com/en/search/canada/apartment/montreal | ||||
| 13 | +- **Secteurs couverts** : Plateau, CDN, NDG, Villeray | ||||
| 14 | +- **Module** : `louka/connectors/akelius.py` — classe `AkeliusConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : https://rent.akelius.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://rent.akelius.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 242 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 4557 Sherbrooke Street West — unité 12 | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 4557 Sherbrooke Street West, Montréal, H3Z 1E8 | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Montréal | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Westmount | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 695 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 100 % | 1 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 553 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | 2026-10-01 | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 45.482613 | | ||||
| 43 | +| `description` | Description | 100 % | Type : groundFloor — 553 pi² — 1 salle(s) de bain | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 14 photo(s) — https://ak-let-api-gateway-production.azure-api.net/api/media/marketing/3df… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["553 pi²", "1 sdb", "Laveuse-sécheuse", "Buanderie", "Chauffage inclus", "Eau chaude inc… | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"inclusions": {"heating": true, "hot_water": true, "electricity": false, "internet": fal… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://rent.akelius.com/en/search/canada/detail/50030a-12 | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 242 trouvées, +0 / ~242 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 290 au total, **242 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-06 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync akelius` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='akelius' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-06 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/alexcellence.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Immeubles Alexcellence — connecteur `alexcellence` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Estrie · Backend : direct · Annonces actives : 6/6 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Immeubles Alexcellence (immeublesalexcellence.com) — apparts à Sherbrooke, secteurs Université de Sherbrooke et Mont-Bellevue (clientèle étudiante). WordPress + thème immobilier Houzez : 4e membre de la famille Houzez de l'Estrie — hérite de DynamicConnector (lesgestionsdynamic.com) et n'en redéfinit que les constantes et le crochet de disponibilité. Archive /appartements-a-louer/ paginée (cartes item-listing-wrap v6 avec data-listid, data-images, item-price « 1,010$/par mois »). Particularité locale : les étiquettes label-status portent à la fois le statut (« À LOUER » / « LOUÉ ») et la date de libération (« 1er août 2026 ») — les logements LOUÉ sont écartés, la date devient la disponibilité. Fiches détail Houzez sans bloc adresse structuré ni GPS : description + address.item-address seulement. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://immeublesalexcellence.com | ||||
| 12 | +- **Page des annonces** : https://immeublesalexcellence.com/appartements-a-louer/ | ||||
| 13 | +- **Secteurs couverts** : Sherbrooke (Université de Sherbrooke, Mont-Bellevue) | ||||
| 14 | +- **Module** : `louka/connectors/alexcellence.py` — classe `AlexcellenceConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : https://immeublesalexcellence.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://immeublesalexcellence.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct | ||||
| 24 | +- **Politesse** : 0.7 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 6 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 4½ à proximité du Carrefour de l’Estrie, rue Savio | | ||||
| 33 | +| `address` | Adresse civique | 50 % | 2050 André, Sherbrooke | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Sherbrooke | | ||||
| 35 | +| `sector` | Secteur / quartier | 0 % | — | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 010 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 0 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 50 % | 45.3733923 | | ||||
| 43 | +| `description` | Description | 100 % | Description du loyer Découvrez ce 4½ situé près du Carrefour de l’Estrie , parfait pour l… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 12 photo(s) — https://immeublesalexcellence.com/wp-content/uploads/2025/06/1-FRONT-logeme… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Lits: 2", "Bain: 1"] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 83 % | {"pool": true, "parking": {"available": true, "included": true}} | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://immeublesalexcellence.com/appartements/4%c2%bd-a-proximite-de-luniversite-de-sher… | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 6 trouvées, +0 / ~6 / -0 | ||||
| 53 | +- **Throttling** : 0.7 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 6 au total, **6 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 50 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync alexcellence` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='alexcellence' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.7 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/alias_appartements.md
+81 −0
@@ -0,0 +1,81 @@ | |||||
| 1 | +# Alias Appartements — connecteur `alias_appartements` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Saguenay–Lac-Saint-Jean · Backend : direct · Annonces actives : 1/1 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Alias Appartements (aliasappartements.com — rue des Mouettes, Jonquière, ville de Saguenay ; Groupe Boudreault). Projet locatif neuf UNIQUE de 80 unités 4½ livré en 4 phases (2023-2025). WordPress + Elementor + JetElements rendu serveur, page projet unique SANS fiches d'unités : le site publie le nombre d'unités (« 80 unités »), le type (« 4 1/2 »), le loyer plancher (« À partir de 1575$ »), l'adresse (h3 « Rue des Mouettes, Jonquière »), les caractéristiques (carrousel JetElements) et des photos — disponibilités par formulaire/contact. -> 1 annonce « catalogue » à granularité PROJET (précédent girs/immeubles_guillot), availability vide, rien d'inventé ; price via price_label (« à partir de », plus bas loyer). external_id stable : rue-des-mouettes. robots.txt Yoast ouvert (Disallow vide), sitemap public. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.aliasappartements.com | ||||
| 12 | +- **Page des annonces** : https://www.aliasappartements.com | ||||
| 13 | +- **Secteurs couverts** : Saguenay / Jonquière (rue des Mouettes, près du Mont-Jacob) — projet unique de 80 unités 4½ en 4 phases (Groupe Boudreault) | ||||
| 14 | +- **Module** : `louka/connectors/alias_appartements.py` — classe `AliasAppartementsConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : sitemap XML + pages HTML | ||||
| 19 | +- **Endpoint de base** : https://www.aliasappartements.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.aliasappartements.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, sitemap XML + pages HTML) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 1 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | Alias Appartements — Rue des Mouettes, Jonquière | | ||||
| 33 | +| `address` | Adresse civique | 100 % | Rue des Mouettes, Jonquière | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Saguenay | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Jonquière | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 575 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 0 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 0 % | — | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 48.39603 | | ||||
| 43 | +| `description` | Description | 100 % | Alias Appartements ne vous propose pas seulement de voir votre habitation autrement, mais… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 10 photo(s) — https://www.aliasappartements.com/wp-content/uploads/2023/07/Vue-exterieure… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["80 unités", "Air climatisé mural (Thermopompe)", "Salle de lavage indépendante", "Entré… | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"appliances": {"dishwasher_hookup": true}, "ac": true, "balcony": true, "laundry": true,… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.aliasappartements.com/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 1 trouvées, +0 / ~1 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 1 au total, **1 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +**Note du registre** : actif — 1 annonce « catalogue » à granularité projet (type 4½, à partir de 1575 $, caractéristiques, photos) ; disponibilités par formulaire seulement | ||||
| 68 | + | ||||
| 69 | +Rejouer la source seule : `python3 run.py sync alias_appartements` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='alias_appartements' ORDER BY ts DESC LIMIT 5;`). | ||||
| 70 | + | ||||
| 71 | +## Licence, attribution & conditions | ||||
| 72 | + | ||||
| 73 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 74 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 75 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 76 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 77 | + | ||||
| 78 | +## Historique | ||||
| 79 | + | ||||
| 80 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 81 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/alouer_sherbrooke.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# À Louer Sherbrooke — connecteur `alouer_sherbrooke` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Estrie · Backend : direct · Annonces actives : 1/1 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur À Louer Sherbrooke (alouersherbrooke.com) — 100+ logements dans 5 immeubles regroupés du quartier Université (Sherbrooke) ; clientèle étudiants/professionnels/ retraités. WordPress (thème idconception) : la liste est servie par admin-ajax `pagination-load-posts` (CPT appartements, 8 cartes/page, pagination dans la réponse). Cartes : classe `dispo` (À louer, avec date « À partir du … ») ou `loue` (Loué — exclues), grandeur (3½…), quartier, inclusions et photo. Les fiches (via self.detail, cache BD) ajoutent la description complète et la galerie. AUCUN prix ni adresse civique publiés par la source (immeubles regroupés, quartier Université) — champs laissés vides, rien d'inventé. external_id = slug du billet. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.alouersherbrooke.com | ||||
| 12 | +- **Page des annonces** : https://www.alouersherbrooke.com/appartements-a-louer/ | ||||
| 13 | +- **Secteurs couverts** : Sherbrooke (quartier Université) | ||||
| 14 | +- **Module** : `louka/connectors/alouer_sherbrooke.py` — classe `AlouerSherbrookeConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : API admin-ajax (WordPress) | ||||
| 19 | +- **Endpoint de base** : https://www.alouersherbrooke.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.alouersherbrooke.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : pagination par numéro de page | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, API admin-ajax (WordPress)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 1 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | Laveuse-sécheuse fournies | | ||||
| 33 | +| `address` | Adresse civique | 0 % | — | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Sherbrooke | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Université | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 0 % | — | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 0 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | 2026-09-01 | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 0 % | — | | ||||
| 43 | +| `description` | Description | 100 % | Caractéristiques générales \| Laveuse-sécheuse fournies \| Chauffage et eau chaude inclus… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 20 photo(s) — https://www.alouersherbrooke.com/wp-content/uploads/2020/01/loyersherbrooke… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Balcon", "Chauffage, eau chaude et Internet inclus", "Entrée laveuse/sécheuse"] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"inclusions": {"heating": true, "electricity": true, "hot_water": true, "internet": true… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.alouersherbrooke.com/appartements/laveuse-secheuse-fournies/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 1 trouvées, +0 / ~1 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 1 au total, **1 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 0 % · prix 0 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync alouer_sherbrooke` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='alouer_sherbrooke' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/app_urbains.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Appartements Urbains — connecteur `app_urbains` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Québec · Backend : direct · Annonces actives : 18/21 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Appartements Urbains (appartementsurbains.ca — Ste-Foy, Montcalm, Limoilou, Loretteville, Lévis) Pages projets (Oxygen/WP) : tableau d'unités disponibles avec liens « /unites/?_unite=NNN ». Une annonce par unité disponible. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.appartementsurbains.ca | ||||
| 12 | +- **Page des annonces** : https://www.appartementsurbains.ca | ||||
| 13 | +- **Secteurs couverts** : Ste-Foy, Montcalm, Limoilou, Loretteville, Lévis | ||||
| 14 | +- **Module** : `louka/connectors/app_urbains.py` — classe `AppartementsUrbainsConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : sitemap XML + pages HTML | ||||
| 19 | +- **Endpoint de base** : https://www.appartementsurbains.ca | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.appartementsurbains.ca | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, sitemap XML + pages HTML) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 18 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | Le Charlie — unité 504 | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 1385 Rue Monseigneur-Plessis, Québec, QC | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Québec | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Limoilou | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 89 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 83 % | 1 630 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 89 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 89 % | 915 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 33 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 46.8175411 | | ||||
| 43 | +| `description` | Description | 100 % | Le Charlie est un projet de condos locatifs modernes et branchés. 90 unités construites p… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 16 photo(s) — https://lecharlie.ca/wp-content/uploads/vf-off-caneva-charlie-condo.jpg | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Terrasse sur le toit", "Ascenseurs", "Caméras de sécurité", "Stationnement intérieur", … | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"inclusions": {"cable": true}, "ac": true, "elevator": true, "balcony": true, "gym": tru… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.appartementsurbains.ca/le-charlie/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 18 trouvées, +0 / ~18 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 21 au total, **18 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-06 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 83 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync app_urbains` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='app_urbains' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-06 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/appartements_rimouski.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Appartements Rimouski (Immeubles DTM) — connecteur `appartements_rimouski` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Bas-Saint-Laurent · Backend : direct · Annonces actives : 19/20 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Appartements Rimouski (Immeubles DTM — appartementsrimouski.com, Rimouski et Le Bic, ~100+ logements). WordPress multisite + thème Pro (Cornerstone) + plugin Estatik pour l'annuaire d'immeubles ; la page « Choisir mon logement » /choisir-mon-logement liste les UNITÉS actuellement en location : cartes rendues serveur (titre, prix « 725$/mois », disponibilité « Disponible maintenant »/« 1 septembre 2026 », adresse complète, chambres/SDB, badge Résidentiel/Commercial, photo). Fiche unité /logements/<slug> (via cache BD) : description complète, quartier (« Quartier : Rimouski-Est »), galerie et GPS via le JSON-LD schema.org/House (lat/lng inversés à la source : corrigés). robots.txt : Disallow /pro/* seulement, sitemap XML. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.appartementsrimouski.com | ||||
| 12 | +- **Page des annonces** : https://www.appartementsrimouski.com/choisir-mon-logement | ||||
| 13 | +- **Secteurs couverts** : Rimouski (Centre-ville, Rimouski-Est, Saint-Pie-X, Nazareth, Pointe-au-Père, Terrasse Arthur-Buies, Le Bic) | ||||
| 14 | +- **Module** : `louka/connectors/appartements_rimouski.py` — classe `AppartementsRimouskiConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : sitemap XML + pages HTML | ||||
| 19 | +- **Endpoint de base** : https://www.appartementsrimouski.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.appartementsrimouski.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, sitemap XML + pages HTML) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 19 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 5 1/2 NEUF dans le secteur du Bic | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 25 Rue Adrien Breton, Rimouski, QC, Canada | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Rimouski | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Bic | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 95 % | 5½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 750 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 3 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 89 % | 1 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 0 % | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 48.3760046 | | ||||
| 43 | +| `description` | Description | 100 % | Nous avons un beau logement 5 1/2 neuf de qualité supérieure à vous proposer, parfait pou… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 13 photo(s) — https://www.appartementsrimouski.com/wp-content/uploads/sites/334/2026/08/i… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["3 chambre(s)", "1 SDB"] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 89 % | {"inclusions": {"heating": false, "electricity": false, "internet": true}, "appliances": … | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.appartementsrimouski.com/logements/5-1-2-neuf-dans-le-secteur-du-bic | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 19 trouvées, +0 / ~19 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 20 au total, **19 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync appartements_rimouski` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='appartements_rimouski' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/ascensio.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Groupe Ascensio — connecteur `ascensio` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Estrie · Backend : direct · Annonces actives : 9/10 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Groupe Ascensio (groupeascensio.com) Société immobilière — logements neufs à Sherbrooke (Les Nations : arrondissements Jacques-Cartier et Mont-Bellevue) + Pont-Rouge (région de Québec). WordPress : la page /logements-a-louer/ est rendue serveur — grille `.grid-logements .grid-item` (une carte par logement disponible : type + numéro, date de disponibilité, secteur, immeuble, photo, lien /location/<slug>/). Les fiches (via self.detail, cache BD) ajoutent le numéro de référence stable (external_id, ex. BRY-2030134), la mensualité, la description, les pièces et dimensions et la galerie. Seuls les logements affichés (tous « Disponible ») deviennent des annonces. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://groupeascensio.com | ||||
| 12 | +- **Page des annonces** : https://groupeascensio.com/logements-a-louer/ | ||||
| 13 | +- **Secteurs couverts** : Sherbrooke (Les Nations : Jacques-Cartier, Mont-Bellevue) — aussi Pont-Rouge (Capitale-Nationale) | ||||
| 14 | +- **Module** : `louka/connectors/ascensio.py` — classe `AscensioConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : https://groupeascensio.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://groupeascensio.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 9 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 3½ Logement 301 — 20 Bryant | | ||||
| 33 | +| `address` | Adresse civique | 44 % | 20 Bryant | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Sherbrooke | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Les Nations - Arrondissement Jacques-Cartier (Nord) | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 3½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 425 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 1 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 727 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 44 % | 45.3991595 | | ||||
| 43 | +| `description` | Description | 100 % | Luxueux logement neuf d’une superficie de 727 pi2 avec plafond de 9,2 pieds de hauteur. V… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 9 photo(s) — https://groupeascensio.com/wp-content/uploads/2024/11/IMG_1907.jpg | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Immeuble : 20 Bryant", "Cuisine : 13'-8\\" x 9'-4\\"", "Salle à manger : 12'-6\\" x 6'-… | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"elevator": true, "balcony": true, "storage": true} | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://groupeascensio.com/location/20-bryant-3%c2%bd-modele-4-logement-301/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 9 trouvées, +0 / ~9 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 10 au total, **9 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 44 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync ascensio` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='ascensio' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/atlas_immo.md
+82 −0
@@ -0,0 +1,82 @@ | |||||
| 1 | +# Atlas société immobilière — connecteur `atlas_immo` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Chaudière-Appalaches · Backend : direct · Annonces actives : 0/0 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Atlas société immobilière (atlasimmo.ca — Beauce : Saint-Georges, Saint-Victor, Notre-Dame-des-Pins, ~50-100 logements 2½–6½). CMS custom « webchef », pages .php statiques servies en HTTP (pas de TLS). Page /logements-a-louer-en-beauce.php : toutes les unités disponibles sont rendues serveur (cartes `div.resultat` — nom d'immeuble, rue + ville, description « 4X 4 et demi moderne », drapeaux Disponible/Chauffé/Éclairé avec icônes ok/cancel, photo) ; le filtre ville/grandeur/prix est purement client (JS). Quand aucun logement n'est libre, seule la mention « Aucun appartement n'est disponible… » s'affiche et le connecteur retourne [] — situation normale (parc beauceron plein). Prix jamais affiché sur les cartes -> None (rien d'inventé) ; granularité immeuble assumée (précédent immeubles_guillot). Les fiches /logement-a-louer/<id>-<slug>.php existent mais leur structure n'a jamais été observée (aucune archive) : pas d'appel détail pour l'instant. robots.txt : Disallow répertoires internes (/webchef, /inc…) seulement. | ||||
| 10 | + | ||||
| 11 | +- **Site** : http://www.atlasimmo.ca | ||||
| 12 | +- **Page des annonces** : http://www.atlasimmo.ca/logements-a-louer-en-beauce.php | ||||
| 13 | +- **Secteurs couverts** : Beauce : Saint-Georges, Saint-Victor, Notre-Dame-des-Pins — espaces commerciaux exclus | ||||
| 14 | +- **Module** : `louka/connectors/atlas_immo.py` — classe `AtlasImmoConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : http://www.atlasimmo.ca | ||||
| 20 | +- **URLs de départ (constantes du module)** : http://www.atlasimmo.ca | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 0 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | — | — | | ||||
| 33 | +| `address` | Adresse civique | — | — | | ||||
| 34 | +| `city` | Ville (normalisée) | — | — | | ||||
| 35 | +| `sector` | Secteur / quartier | — | — | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | — | — | | ||||
| 37 | +| `price` | Loyer mensuel ($) | — | — | | ||||
| 38 | +| `bedrooms` | Chambres | — | — | | ||||
| 39 | +| `bathrooms` | Salles de bain | — | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | — | — | | ||||
| 41 | +| `availability_date` | Date de disponibilité | — | — | | ||||
| 42 | +| `lat` | GPS (lat/lng) | — | — | | ||||
| 43 | +| `description` | Description | — | — | | ||||
| 44 | +| `images` | Photos (JSON) | — | — | | ||||
| 45 | +| `amenities` | Commodités (JSON) | — | — | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | — | — | | ||||
| 47 | +| `url` | URL de l'annonce source | — | — | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:15 — 0 trouvées, +0 / ~0 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 0 au total, **0 actives** | ||||
| 59 | +- **Première ingestion** : — · **Dernière observation** : — | ||||
| 60 | +- **Complétude clé (actives)** : GPS — · prix — · photos — · description — | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +**Note du registre** : actif — inventaire à 0 le 2026-08-09 (parc plein, le site ne rend des cartes que pour les logements libres) ; fixture rejouant l'état réel du 2023-02-24 via la Wayback Machine | ||||
| 68 | + | ||||
| 69 | +Rejouer la source seule : `python3 run.py sync atlas_immo` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='atlas_immo' ORDER BY ts DESC LIMIT 5;`). | ||||
| 70 | + | ||||
| 71 | +## Licence, attribution & conditions | ||||
| 72 | + | ||||
| 73 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 74 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 75 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 76 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 77 | + | ||||
| 78 | +## Historique | ||||
| 79 | + | ||||
| 80 | +- 2026-08-09 — mention au registre : « …actif — inventaire à 0 le 2026-08-09 (parc plein, le site ne rend des cartes que pour les logements libres) ; fixture rejouant… » | ||||
| 81 | +- 2023-02-24 — mention au registre : « …site ne rend des cartes que pour les logements libres) ; fixture rejouant l'état réel du 2023-02-24 via la Wayback Machine… » | ||||
| 82 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/aula.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# AULA Lévis — connecteur `aula` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Québec · Backend : direct · Annonces actives : 68/70 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur AULA Lévis (aulalevis.com) 4700, boulevard Guillaume-Couture, Lévis — 163 condos locatifs (loft à 5½). Même plateforme WordPress « do-selecteur-plans » que La Cour Appartements (sélecteur SVG /plans-et-prix/ + REST /wp-json/do-selecteur-plans/v1/unite) : tout le parsing est hérité de LaCourConnector, seules les constantes du projet changent. Particularités AULA : classe « attente » en plus de disponible/indisponible (exclue), inclusions REST vides — les commodités viennent des pages /projet/ et /interieurs/ (widgets Jet Engine + h6). | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://aulalevis.com | ||||
| 12 | +- **Page des annonces** : https://aulalevis.com/plans-et-prix/ | ||||
| 13 | +- **Secteurs couverts** : Lévis (Vieux-Lévis / Desjardins) | ||||
| 14 | +- **Module** : `louka/connectors/aula.py` — classe `AulaConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : API REST WordPress (wp-json) | ||||
| 19 | +- **Endpoint de base** : https://aulalevis.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://aulalevis.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, API REST WordPress (wp-json)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 68 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | AULA Lévis — Unité 101 | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 4700, boulevard Guillaume-Couture, Lévis, G6W 5N6 | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Lévis | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Lévis | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 1 665 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 976 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 46.7852244 | | ||||
| 43 | +| `description` | Description | 100 % | 4½ + bureau — 976 pi² — terrasse 106 pi² — étage 1 | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 11 photo(s) — https://aulalevis.com/wp-content/uploads/2025/03/TypeU_2.png | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Piscine intérieure", "Salle commune", "Gym", "Terrasse dernier étage", "3 ascenseurs", … | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"ac": true, "elevator": true, "balcony": true, "pool": true, "gym": true, "parking": {"a… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://aulalevis.com/plans-et-prix/#unite-101 | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:16 — 68 trouvées, +0 / ~68 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 70 au total, **68 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-08 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync aula` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='aula' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-08 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/axia.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Axia Appartements — connecteur `axia` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Montréal · Backend : direct · Annonces actives : 2/2 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur AXIA Appartements (axiaappartements.com) Complexe locatif neuf à Lachine (Montréal), géré par Pur Immobilia. Site vitrine WordPress/WPBakery une page : deux configurations (2 chambres 4½ et 3 chambres 5½) avec superficie et prix « à partir de » — 1 annonce par configuration. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.axiaappartements.com | ||||
| 12 | +- **Page des annonces** : https://www.axiaappartements.com/ | ||||
| 13 | +- **Secteurs couverts** : Lachine | ||||
| 14 | +- **Module** : `louka/connectors/axia.py` — classe `AxiaConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : pages HTML (rendu serveur) | ||||
| 19 | +- **Endpoint de base** : https://www.axiaappartements.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.axiaappartements.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, pages HTML (rendu serveur)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 2 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | AXIA Appartements — 2 chambres (4½) | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 200, boul. Saint-Joseph, Lachine (Québec) H8S 2L3 | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Montréal | | ||||
| 35 | +| `sector` | Secteur / quartier | 100 % | Lachine | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 2 095 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 852 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 45.4367674 | | ||||
| 43 | +| `description` | Description | 100 % | À partir de 852 pi 2. Louez un nouvel appartement moderne de 2 ou 3 chambres avec gym, co… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 17 photo(s) — https://www.axiaappartements.com/wp-content/uploads/2026/02/banner-scaled.j… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Hall d’entrée", "Stationnement souterrain", "Salle d’entrainement", "Salle de divertiss… | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"appliances": {"fridge": true}, "balcony": true, "gym": true, "laundry": true, "parking"… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.axiaappartements.com/#appartements | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:16 — 2 trouvées, +0 / ~2 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 2 au total, **2 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-06 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync axia` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='axia' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-06 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/barnes_quebec.md
+86 −0
@@ -0,0 +1,86 @@ | |||||
| 1 | +# BARNES Québec (location) — connecteur `barnes_quebec` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Montréal · Backend : direct · Annonces actives : 101/103 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +BARNES Québec (barnes-quebec.com) — LOCATIONS Agence de prestige (Montréal, Québec, Laval, Mont-Tremblant…). Site WordPress indexé dans Algolia ; la config expose l'App ID et une clé API dans le HTML. L'index « quebec_all » mélange ventes (type "property") et locations (type "rental") : on filtre côté serveur avec facetFilters=[["type:rental"]]. Chaque location porte le loyer mensuel numérique (property_rent), l'adresse, chambres/salles de bains, superficie et géolocalisation. Les enregistrements sont dupliqués par langue (FR/EN) → on dédoublonne par titre normalisé en gardant la fiche FR. Adapté du connecteur « à vendre » d'Immo-Ka (agent-courtage/immoka). | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://barnes-quebec.com | ||||
| 12 | +- **Page des annonces** : https://barnes-quebec.com/louer/ | ||||
| 13 | +- **Secteurs couverts** : Montréal et environs — locations haut de gamme (index Algolia, facette type:rental) | ||||
| 14 | +- **Module** : `louka/connectors/barnes_quebec.py` — classe `BarnesQuebecConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : API JSON interne du site | ||||
| 19 | +- **Endpoint de base** : https://barnes-quebec.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://{APP_ID}-dsn.algolia.net/1/indexes/{INDEX}/query · https://barnes-quebec.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : pagination par numéro de page | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.25 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, API JSON interne du site) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 101 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 6675 Rue St-Urbain #302 Montréal (Rosemont/La Petite-Patrie) (Montréal) | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 6675 Rue St-Urbain #302 | | ||||
| 34 | +| `city` | Ville (normalisée) | 99 % | Montréal | | ||||
| 35 | +| `sector` | Secteur / quartier | 72 % | Rosemont/La Petite-Patrie | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 96 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 98 % | 2 600 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 96 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 97 % | 1 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 71 % | 775 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 0 % | — | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 99 % | 45.53074 | | ||||
| 43 | +| `description` | Description | 100 % | La PETITE-ITALIE et un dernier étage !! Face aux studios Mila et Behaviour Interactive, c… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 42 photo(s) — https://barnes-quebec.com/wp-content/uploads/2026/08/24043507-addcb7eda4967… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 0 % | [] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"inclusions": {"electricity": true}, "appliances": {"fridge": true, "stove": true, "dish… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://barnes-quebec.com/rental/6675-rue-st-urbain-302-montreal-rosemont-la-petite-patri… | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 2.0 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:16 — 101 trouvées, +0 / ~101 / -0 | ||||
| 53 | +- **Throttling** : 0.25 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | +- **Caps / budgets du module** : `HITS_PER_PAGE` = 100, `MAX_PAGES` = 40 | ||||
| 56 | + | ||||
| 57 | +## Volumétrie & complétude | ||||
| 58 | + | ||||
| 59 | +- **Annonces en BD** : 103 au total, **101 actives** | ||||
| 60 | +- **Première ingestion** : 2026-08-12 · **Dernière observation** : 2026-08-18 | ||||
| 61 | +- **Complétude clé (actives)** : GPS 99 % · prix 98 % · photos 100 % · description 100 % | ||||
| 62 | +- **Runs journalisés (60 derniers)** : 60, dont 12 en erreur | ||||
| 63 | + | ||||
| 64 | +## Erreurs connues & dépannage | ||||
| 65 | + | ||||
| 66 | +| Date | Message (sync_log) | | ||||
| 67 | +|---|---| | ||||
| 68 | +| 2026-08-15 19:18 | 403 Client Error: Forbidden for url: https://hcw55viqnm-dsn.algolia.net/1/indexes/quebec_all/query | | ||||
| 69 | +| 2026-08-15 17:25 | 403 Client Error: Forbidden for url: https://hcw55viqnm-dsn.algolia.net/1/indexes/quebec_all/query | | ||||
| 70 | +| 2026-08-15 15:31 | 403 Client Error: Forbidden for url: https://hcw55viqnm-dsn.algolia.net/1/indexes/quebec_all/query | | ||||
| 71 | +| 2026-08-15 14:56 | 403 Client Error: Forbidden for url: https://hcw55viqnm-dsn.algolia.net/1/indexes/quebec_all/query | | ||||
| 72 | +| 2026-08-15 12:58 | 403 Client Error: Forbidden for url: https://hcw55viqnm-dsn.algolia.net/1/indexes/quebec_all/query | | ||||
| 73 | + | ||||
| 74 | +Rejouer la source seule : `python3 run.py sync barnes_quebec` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='barnes_quebec' ORDER BY ts DESC LIMIT 5;`). | ||||
| 75 | + | ||||
| 76 | +## Licence, attribution & conditions | ||||
| 77 | + | ||||
| 78 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 79 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.25 s ; cache détail pour minimiser les requêtes. | ||||
| 80 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 81 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 82 | + | ||||
| 83 | +## Historique | ||||
| 84 | + | ||||
| 85 | +- 2026-08-12 — premières annonces de la source ingérées dans la BD. | ||||
| 86 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/beaudoin.md
+79 −0
@@ -0,0 +1,79 @@ | |||||
| 1 | +# Société Beaudoin Immobilier — connecteur `beaudoin` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Montréal · Backend : direct · Annonces actives : 12/12 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Société Beaudoin immobilier (beaudoinimmobilier.ca — Longueuil, Boucherville, Montréal : Anjou, Lachine, Saint-Léonard). Thème WordPress Houzez : les logements sont des posts « property » exposés par l'API REST (/wp-json/wp/v2/properties) avec prix, adresse géocodée, lat/lng, taxonomies (type d'unité, ville, disponibilité, commodités) et galerie d'images (IDs de médias résolus via /wp-json/wp/v2/media). Le site couvre d'autres régions : seul le Grand Montréal est conservé. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://www.beaudoinimmobilier.ca | ||||
| 12 | +- **Page des annonces** : https://www.beaudoinimmobilier.ca/index.php/decouvrez-nos-immeubles | ||||
| 13 | +- **Secteurs couverts** : Longueuil, Boucherville, Lachine | ||||
| 14 | +- **Module** : `louka/connectors/beaudoin.py` — classe `BeaudoinConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : API REST WordPress (wp-json) | ||||
| 19 | +- **Endpoint de base** : https://www.beaudoinimmobilier.ca | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://www.beaudoinimmobilier.ca | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : pagination par numéro de page | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.5 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, API REST WordPress (wp-json)) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 12 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | Grand 5 1/2 au Bois de Champbellé – 525 Saint-Charles O | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 525, Rue Saint-Charles Ouest | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Longueuil | | ||||
| 35 | +| `sector` | Secteur / quartier | 42 % | — | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 5½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 100 % | 2 235 $ | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 3 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 100 % | 2 | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 67 % | 1250 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 100 % | now | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 45.5344619 | | ||||
| 43 | +| `description` | Description | 100 % | Ce magnifique grand 5 ½, entièrement rénové, est situé dans le secteur recherché du Vieux… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 16 photo(s) — https://www.beaudoinimmobilier.ca/wp-content/uploads/2026/07/20240809_13105… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 100 % | ["Eau chaude incluse", "Cuisinière incluse", "Réfrigérateur inclus", "Lave-vaisselle incl… | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 75 % | {"inclusions": {"hot_water": true}, "appliances": {"fridge": true, "stove": true, "dishwa… | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://www.beaudoinimmobilier.ca/index.php/property/grand-5-1-2-au-bois-de-champbelle-52… | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:16 — 12 trouvées, +0 / ~12 / -0 | ||||
| 53 | +- **Throttling** : 0.5 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 12 au total, **12 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-06 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 100 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +Rejouer la source seule : `python3 run.py sync beaudoin` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='beaudoin' ORDER BY ts DESC LIMIT 5;`). | ||||
| 68 | + | ||||
| 69 | +## Licence, attribution & conditions | ||||
| 70 | + | ||||
| 71 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 72 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.5 s ; cache détail pour minimiser les requêtes. | ||||
| 73 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 74 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 75 | + | ||||
| 76 | +## Historique | ||||
| 77 | + | ||||
| 78 | +- 2026-08-06 — premières annonces de la source ingérées dans la BD. | ||||
| 79 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/beaulieu_groupe.md
+82 −0
@@ -0,0 +1,82 @@ | |||||
| 1 | +# Beaulieu Groupe Immobilier (BGI) — connecteur `beaulieu_groupe` | ||||
| 2 | + | ||||
| 3 | +_Fiche générée automatiquement par `scripts/gen_connector_docs.py` le 2026-08-18 03:30 — ne pas éditer à la main, régénérer._ | ||||
| 4 | + | ||||
| 5 | +**État : actif** · Région : Bas-Saint-Laurent · Backend : direct · Annonces actives : 4/4 | ||||
| 6 | + | ||||
| 7 | +## Description de la source | ||||
| 8 | + | ||||
| 9 | +connecteur Beaulieu Groupe Immobilier / BGI (beaulieugroupeimmobilier.com — Rimouski, Bas-Saint-Laurent ; distinct des Immeubles Beaulieu et Collin `immeubles_bc` et de Beaulieu Gestion à Rivière-du-Loup). WordPress + Elementor avec un shortcode maison : - archive /batiment/?category=residentiel : cartes `div.card-batiment` par immeuble avec statut « COMPLET » ou « Locaux disponibles : N » ; - fiche /batiment/<slug>/ : description de l'immeuble + cartes d'unités `div.card-local` (« 418 Alcide-C.-Horth, app #206 | 4 1/2 ») dont le `p.card-text` vaut « Indisponible » (image générique Complet.png) ou, pour les unités libres, « Superficie : N pi² » avec photo réelle. Le connecteur ne visite que les fiches des immeubles NON marqués COMPLET (politesse) et n'émet que les unités non « Indisponible ». Aucun prix publié -> price=None, rien d'inventé. Tout le parc affiché est à Rimouski. external_id stable : slug de la fiche + numéro d'appartement (418-rue-alcide-c-horth--app-206). robots.txt Yoast ouvert (Disallow vide), sitemap public. | ||||
| 10 | + | ||||
| 11 | +- **Site** : https://beaulieugroupeimmobilier.com | ||||
| 12 | +- **Page des annonces** : https://beaulieugroupeimmobilier.com/batiment/?category=residentiel | ||||
| 13 | +- **Secteurs couverts** : Rimouski (5 immeubles résidentiels dont 24 logements neufs au 418 rue Alcide-C.-Horth) — commercial exclu | ||||
| 14 | +- **Module** : `louka/connectors/beaulieu_groupe.py` — classe `BeaulieuGroupeConnector` | ||||
| 15 | + | ||||
| 16 | +## Accès | ||||
| 17 | + | ||||
| 18 | +- **Type d'accès** : sitemap XML + pages HTML | ||||
| 19 | +- **Endpoint de base** : https://beaulieugroupeimmobilier.com | ||||
| 20 | +- **URLs de départ (constantes du module)** : https://beaulieugroupeimmobilier.com | ||||
| 21 | +- **Authentification** : aucune — contenu public | ||||
| 22 | +- **Pagination** : page de liste unique (pas de pagination) | ||||
| 23 | +- **Backend anti-bot / rendu** : requests direct (session UA LouKaBot, throttling poli) | ||||
| 24 | +- **Politesse** : 0.6 s entre requêtes, timeout 30 s, User-Agent identifiable `LouKaBot/1.0 (+https://www.lou-ka.com/bot)` | ||||
| 25 | + | ||||
| 26 | +## Champs récupérés → schéma cible | ||||
| 27 | + | ||||
| 28 | +Le connecteur (direct, sitemap XML + pages HTML) alimente les colonnes de la table `listings`. Complétude mesurée en SQL sur les 4 annonces actives ; exemple tiré d'une ligne réelle de la BD. | ||||
| 29 | + | ||||
| 30 | +| Colonne `listings` | Contenu | Renseignée (actives) | Exemple réel | | ||||
| 31 | +|---|---|---|---| | ||||
| 32 | +| `title` | Titre de l'annonce | 100 % | 418 Alcide-C.-Horth, app #206 \| 4 1/2 | | ||||
| 33 | +| `address` | Adresse civique | 100 % | 418 Alcide-C.-Horth, Rimouski | | ||||
| 34 | +| `city` | Ville (normalisée) | 100 % | Rimouski | | ||||
| 35 | +| `sector` | Secteur / quartier | 0 % | — | | ||||
| 36 | +| `unit_type` | Type d'unité (3½, 4½…) | 100 % | 4½ | | ||||
| 37 | +| `price` | Loyer mensuel ($) | 0 % | — | | ||||
| 38 | +| `bedrooms` | Chambres | 100 % | 2 | | ||||
| 39 | +| `bathrooms` | Salles de bain | 0 % | — | | ||||
| 40 | +| `area_sqft` | Superficie (pi²) | 100 % | 1000 | | ||||
| 41 | +| `availability_date` | Date de disponibilité | 0 % | — | | ||||
| 42 | +| `lat` | GPS (lat/lng) | 100 % | 48.4461098 | | ||||
| 43 | +| `description` | Description | 100 % | Beaulieu Groupe Immobilier propose 24 logements neufs modernes et spacieux, conçus pour o… | | ||||
| 44 | +| `images` | Photos (JSON) | 100 % | 1 photo(s) — https://beaulieugroupeimmobilier.com/wp-content/uploads/2026/05/Cuisine-B-in… | | ||||
| 45 | +| `amenities` | Commodités (JSON) | 0 % | [] | | ||||
| 46 | +| `details` | Détails additionnels (JSON) | 100 % | {"ac": true, "balcony": true} | | ||||
| 47 | +| `url` | URL de l'annonce source | 100 % | https://beaulieugroupeimmobilier.com/batiment/418-rue-alcide-c-horth/ | | ||||
| 48 | + | ||||
| 49 | +## Fréquence & budget | ||||
| 50 | + | ||||
| 51 | +- **Cadence observée** (médiane des passages OK, sync_log) : ≈ 1.9 h | ||||
| 52 | +- **Dernier passage OK** : 2026-08-18 03:16 — 4 trouvées, +0 / ~4 / -0 | ||||
| 53 | +- **Throttling** : 0.6 s entre requêtes (constante de classe `request_delay`) | ||||
| 54 | +- **Cache des pages détail (BD `detail_cache`)** : activé — évite de re-visiter les fiches inchangées | ||||
| 55 | + | ||||
| 56 | +## Volumétrie & complétude | ||||
| 57 | + | ||||
| 58 | +- **Annonces en BD** : 4 au total, **4 actives** | ||||
| 59 | +- **Première ingestion** : 2026-08-09 · **Dernière observation** : 2026-08-18 | ||||
| 60 | +- **Complétude clé (actives)** : GPS 100 % · prix 0 % · photos 100 % · description 100 % | ||||
| 61 | +- **Runs journalisés (60 derniers)** : 60, dont 0 en erreur | ||||
| 62 | + | ||||
| 63 | +## Erreurs connues & dépannage | ||||
| 64 | + | ||||
| 65 | +Aucune erreur dans les 60 derniers runs journalisés. | ||||
| 66 | + | ||||
| 67 | +**Note du registre** : actif — prix et dates jamais publiés (unités libres = cartes non « Indisponible », superficie et photo réelles) ; 4 immeubles sur 5 COMPLET au 2026-08-09 | ||||
| 68 | + | ||||
| 69 | +Rejouer la source seule : `python3 run.py sync beaulieu_groupe` · vérifier ensuite `sync_log` (`SELECT * FROM sync_log WHERE source='beaulieu_groupe' ORDER BY ts DESC LIMIT 5;`). | ||||
| 70 | + | ||||
| 71 | +## Licence, attribution & conditions | ||||
| 72 | + | ||||
| 73 | +- Scraping poli d'annonces **publiques** (données factuelles : prix, adresse, disponibilité) publiées par le gestionnaire sur son propre site. | ||||
| 74 | +- User-Agent **identifiable** avec page d'information et contact : `LouKaBot/1.0 (+https://www.lou-ka.com/bot; contact@spboucher.ai)` ; throttling 0.6 s ; cache détail pour minimiser les requêtes. | ||||
| 75 | +- Chaque annonce affichée sur Lou-Ka **pointe vers l'annonce d'origine** (colonne `url`) — la source garde le trafic de conversion. | ||||
| 76 | +- Retrait sur demande : contact@spboucher.ai. | ||||
| 77 | + | ||||
| 78 | +## Historique | ||||
| 79 | + | ||||
| 80 | +- 2026-08-09 — premières annonces de la source ingérées dans la BD. | ||||
| 81 | +- 2026-08-09 — mention au registre : « …cartes non « Indisponible », superficie et photo réelles) ; 4 immeubles sur 5 COMPLET au 2026-08-09… » | ||||
| 82 | +- 2026-08-18 — vague d'enrichissement : standardisation de la documentation des connecteurs (fiche générée par `scripts/gen_connector_docs.py`). | ||||
added
docs/connecteurs/bestlife.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/boardwalk.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/bons_locataires.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/boreal_abitibi.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/bribourg.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/brigil.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/brio.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/brivia_1sp.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/brochu.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/cap_gestion.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/capital_rdr.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/capreit.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/carat_immobilier.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/centurion.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/cite_immobilier.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/cogir.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/contraste.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/copley.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/cosoltec.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/courtemanche.md
+78 −0
Large diff (78 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/cromwell.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/denux.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/desmarais.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/desroches.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/devcore.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/devimco.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/dma_locago.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/duproprio.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/dynamic.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/edifia.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/elements.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/elite.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/elk.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/equinoxe_batimo.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/evoludev.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/fb_marketplace.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/ferrovia.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/firma.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/floria.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/forsa.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/fournelle.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/garic.md
+85 −0
Large diff (85 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gesteco.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestimmo_estrie.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_fauvel.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_habitation.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_isr.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_jdm.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_laprise.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_legrand.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_montreal.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_tb.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestion_valco.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gestipro.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gia_t.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gimcote.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gio.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/girescom.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/girs.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/gparadis.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/groupe_dallaire.md
+88 −0
Large diff (88 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/groupe_jacques.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/groupe_maurice.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/groupe_robin.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/groupe_theoret.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/habitations_jeanne.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/habitations_sf.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/halfred.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/hazelview.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/headway.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/heafey.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/hestia.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/huma.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_aeb.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_bc.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_bois.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_db.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_dcl.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_guillot.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_ouellet.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immeubles_pm.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immnasr.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immobilia.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immogex.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immomarketing.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/immostar.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/info_logement.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/interrent.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/jutras.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/kangalou.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/kass.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/katasa.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/kijiji.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/la_cour.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/laberge.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/labonte.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lachance.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lacite.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lafrance_mathieu.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lakle.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lambert.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/laureat_richard.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/le_baronet.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/le_st_georges.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/leclif.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/ledomaine.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lelaureat.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lequerre.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lespac.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/leviu.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/location_di.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/location_saguenay.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/loftsmtl.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logement_mauricie.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logis_experts.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logisbourg.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logisco.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logisma.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logispro.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/logisquebec.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lokalia.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/louer_ca.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/louer_saguenay.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/louis14.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lr_gestion.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/luxuor.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/lynk_olymbec.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/m_immobilier.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/majestic.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/matinale.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/may_bourg.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/medway.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/mellem.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/mercini.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/metcap.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/minto.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/mkar.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/moderno.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/mondev.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/montagnais.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/morin.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/msi.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/multi_logis.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/niddamour.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/novelo.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/oklouer.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/omhm.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/osgoode.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/oxford.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/per.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/picard.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/place_florimay.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/plan_a.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/progim.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/projection_immo.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/promenade_des_forts.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/proprio_direct.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/quanta.md
+82 −0
Large diff (82 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/quartier_mosaique.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/quartier_oree.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/quartier_plus.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/quartier_sila.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/realstar.md
+81 −0
Large diff (81 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/remax_quebec.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/rentals_ca.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/rentalys.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/rivero.md
+89 −0
Large diff (89 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/roomies.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/roussin.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/royal_lepage.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/savouet.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sdg.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sentinelle.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sgiq.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/shdm.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/siagi.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sibelanger.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sig.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/simard.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/somex_saintnicolas.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/souleymane.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/stb_immobilier.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/summum.md
+85 −0
Large diff (85 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/sutton.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/terater.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/terra.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/thrace.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/tri_logis.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/trudel.md
+89 −0
Large diff (89 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/trylon.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/ubee.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/uptimo.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/urban_services.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/utile.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/via_capitale.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/viridi.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/wandji.md
+80 −0
Large diff (80 lines) is not loaded by default to keep the page fast.Load diff
added
docs/connecteurs/werkliv.md
+79 −0
Large diff (79 lines) is not loaded by default to keep the page fast.Load diff
added
scripts/gen_connector_docs.py
+587 −0
Large diff (588 lines) is not loaded by default to keep the page fast.Load diff