SPB Git

spb/lou-ka

Public

Lou·Ka — tous les logements à louer du Québec, un seul endroit.

History of docs Clear filter
page 1
  1. Mon, Aug 24, 2026 1

    1. Simon-Pierre Boucher · 2 files
  2. Sat, Aug 22, 2026 2

    1. apartments_com : acteur Apify maison ka-apartments-com (toute la province via Bright Data) + enrichissement PDP fb_marketplace
      …
      - nouvel acteur actors/ka-apartments-com : recherche /qc/ paginée (arrêt sur
        retombée page 1 via <title>), fiches détail en français (GPS, description,
        plans d'unités dédoublonnés, commodités, galerie), déblocage Akamai délégué
        au Web Unlocker Bright Data (curl_cffi/Scrapfly/Oxylabs → 403)
      - connecteur louka/connectors/apartments_com.py : 1 annonce = 1 propriété,
        prix « à partir de » (minimum des plans), bedrooms/bathrooms = minimum,
        cache détail 30 j, cadence LOUKA_APTS_INTERVAL_H (12 h) avec ré-émission
        des actives entre deux runs — 615 propriétés QC au premier passage
      - fb_marketplace : acteur 0.1.3 (adresse civique, beds/sdb, commodités,
        disponibilité, walk/transit/bike scores, visite virtuelle) + PAYLOAD_VERSION
        pour re-visiter progressivement le cache, filtre hors-Québec state+bbox GPS
      - sources.json : apartments_com passe de « non connectable » à actif
      - docs connecteurs régénérées (218 fiches)
      
      Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
      Simon-Pierre Boucher · 219 files +817 −739
    2. fb_marketplace : acteur Apify maison ka-fb-marketplace (33 villes, tout le Québec)
      …
      Remplace la chaîne Scrapfly par un acteur Apify maison (curl_cffi sans rendu
      JS, proxy Oxylabs résidentiel CA via proxyUrlTemplate) : recherche 116 URLs
      (10 grandes villes × 7 tranches de prix + 23 régions par ID Marketplace),
      fiches détail (GPS, description, statut) et galerie complète via le
      MediaViewer préchargé. Filtre hors-Québec à deux niveaux : state du
      reverse_geocode dès la recherche + filet bbox GPS côté connecteur (FB glisse
      des suggestions d'autres provinces dans le flux public). Coût ~100× moindre.
      
      Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
      Simon-Pierre Boucher · 218 files +1,862 −1,815
  3. Wed, Aug 19, 2026 1

    1. Simon-Pierre Boucher · 1 file +3
  4. Tue, Aug 18, 2026 3

    1. Qualité des données + solidité mobile + framework de juste valeur (fair value)
      …
      Mission 1 — enrichissement des connecteurs et qualité :
      - quality.py : score de complétude 0-100 + seuil de publication (quarantaine
        des annonces sans prix plausible / localisation / contenu exploitable)
      - imgcheck.py : audit des images (liens morts 404/410, minuscules, placeholders
        multi-adresses, doublons) -> galeries nettoyées images_ok, cache image_checks,
        politesse 3 requêtes/hôte, écriture hors transaction réseau
      - 26 connecteurs enrichis (galeries complètes, descriptions, prix, adresses) :
        kangalou, royal_lepage, medway, remax_quebec, groupe_maurice, mellem, sutton,
        lespac, heafey, kijiji, fb_marketplace, zumper, equinoxe_batimo, logis_experts,
        quartier_sila, msi, summum, quartier_plus, urban_services, cosoltec, garic,
        lakle, matinale, huma, jutras, groupe_theoret, ferrovia
      - normalize : clean_city/clean_sector (rues et entités HTML retirées des menus),
        kijiji : adresses françaises « 89, rue X » correctement découpées
      - geocode : virgule après le n° civique corrigée (lot AQ), base en WAL
      - dedup : une annonce en quarantaine ne masque jamais un doublon publié
      
      Mission 2 — mobile :
      - /api/img : miniatures WebP servies à la taille de l écran (cache disque)
      - SmartImg : miniature -> original -> visuel de secours Lou-Ka (jamais d icône cassée)
      - lightbox tactile : balayage scroll-snap + pincement + double-tape
      - bannière témoins : ne recouvre plus le bouton Filtres (--consent-h)
      - cibles tactiles >= 44 px (pointer: coarse) ; KA Agent plein écran à l ouverture
      - stats : complétude moyenne, quarantaine par source
      
      Mission 3 — juste valeur locative (fairvalue.py, fv-logement-1.0) :
      - 3 niveaux : segments médians (repli en échelle) + coefficients de
        caractéristiques appris et centrés + comparables kNN géographiques (médiane
        pondérée) ; couloir de sécurité, fourchette, indice de confiance
      - prudence : pas de verdict si confiance faible, prix « à partir de »,
        prix non mensuel, écart hors plausible ; chambres/coloc = segment dédié
      - pastilles sous/dans/au-dessus du marché (cartes + fiche), bloc Analyse de
        prix avec histogramme, filtre « Sous le marché » + tri, page /juste-valeur
      - API : champs fv_* + deal/sort, /api/fairvalue/{uid} ; stats + PDF ;
        historisation fv_segments ; tests synthétiques ; docs/FAIRVALUE*.md
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +210
    2. Vague 3 : connecteurs Zumper (API directe), Atimco (Livya), Simplex (Supabase)
      …
      - zumper : API JSON interne en DIRECT (bundle CSRF -> pages/listables par bbox
        -> fiches /buildings avec cache BD cle modified_on), 8 bbox QC, filtre
        state=QC ; 4 345 annonces au premier sync (2 391 absorbees par la dedup =
        +1 954 nettes). PadMapper = meme API (ids 100/100 identiques) : couvert.
      - _livya : base commune des gestionnaires servis par Livya (ex-RealVuu),
        patron generalise du connecteur thrace (flux RSC des pages plans).
      - atimco : ~18 projets Monteregie (Longueuil, St-Constant, St-Hyacinthe,
        Chambly, Chateauguay, St-Jean, Sorel, Cowansville) — 299 unites disponibles,
        prix/GPS/chambres/sdb complets, 0 doublon.
      - simplex : catalogue Supabase public (RPC get_public_rental_listings_page),
        Trois-Rivieres/Shawinigan — 3 annonces actives (28 publiees en rotation).
      - sources.json : +6 entrees (zumper, atimco, simplex actifs ; padmapper
        couvert via zumper ; apartments.com non connectable — 403 CoStar ;
        cloria non connectable — inventaire Livya complet mais 0 prix publie).
      - docs/connecteurs regeneres (217 fiches).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 218 files +1,181 −943
    3. 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>
      Simon-Pierre Boucher · 215 files +17,301
  5. Mon, Aug 17, 2026 2

    1. Simon-Pierre Boucher · 1 file
    2. Simon-Pierre Boucher · 9 files
  6. Sat, Aug 15, 2026 2

  7. Thu, Aug 13, 2026 2

    1. docs: ka-maps-lou-ka.md — intégration Lou-Ka Maps
      …
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +36
Menu

Theme