SPB Git forge

spb/lou-ka

Public

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

232commits 1branches 0releases
172.9 MBsize
maindefault branch
2 days agolast push
HTML 98.9% Python 0.6%

History of louka/hydro.py · clear filter

  1. Mon, Aug 24, 2026 1

    1. hydro : postal rooftop (géocodage avant Mapbox + proximity), cache négatif, fix civiques ordinaux
      …
      - _resolve_postal : géocodage AVANT de l adresse complète ancré par proximity
        lat/lng (CP rooftop précis, vérif du numéro civique) au lieu de l inverse
        du lat/lng approximatif — récupère des adresses qui échouaient (ex.
        2038 Charlemagne : 0 -> 618 $/an)
      - cache négatif (NEG_TTL 30 j) : les adresses inconnues d HQ ne re-consomment
        plus de captcha à chaque cycle watch
      - _civic rejette les rues ordinales (15e Avenue, 1re Avenue, 2e Rang) tout en
        gardant la lettre d appartement (2457A)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +79 −13
  2. Sun, Aug 23, 2026 5

    1. hydro : cache par uid + dérivation du code postal via lat/lng (Mapbox)
      …
      - cache indexé aussi par uid (clé stable annonce) : affichage cache-only sur
        la fiche sans code postal ni appel Mapbox
      - code postal dérivé du lat/lng par géocodage inverse Mapbox quand l adresse
        n en porte pas (cas Immo-Ka) — au moment du calcul seulement
      - estimate(uid, lat, lng) ; endpoint et fiche passent uid+lat+lng ;
        cache-only renvoie en_attente (bouton) si un calcul est faisable
      - precompute sélectionne lat/lng/uid, saute ce qui est déjà en cache par uid
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +102 −26
    2. hydro : pré-calcul des 100 annonces récentes + auto pour les nouvelles
      …
      - hydro.precompute(limit, budget) : calcule l estimation des annonces les plus
        récentes non encore en cache, plafond de résolutions captcha par appel
        (coût borné) ; run.py hydro-precompute [N] [budget]
      - watch : precompute(100, budget=30) à chaque cycle -> nouvelles annonces
        estimées automatiquement ; le cache data/hydro.db persiste entre releases
      - estimate(solve=False) = lecture cache seule (aucun captcha) ;
        GET /api/hydro cache-only par défaut, solve=1 pour forcer
      - fiche : le bloc s affiche AUTOMATIQUEMENT quand l estimation est en cache,
        sinon bouton de calcul à la demande
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +66 −3
    3. hydro : flux live fonctionnel (2captcha) — structure API réelle
      …
      - lieu-consommation : clé listeLieuxConsommation + cleUnique au niveau racine,
        code postal reformaté avec espace (exigé), idConso = item.id
      - estimation : {cleUnique, idConso} -> montantAnnuel + consommationAnnuelle
      - expose kwh_annuel ; testé live : 20 rue Lockwell = 283 $/an / 1100 kWh (12 s),
        2e appel servi du cache
      Activé via HQ_CAPTCHA_KEY (2captcha) dans .env.
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +24 −20
    4. Simon-Pierre Boucher committed 1 mo ago · 1 file +1 −3
    5. Fiche : estimation du coût d electricite Hydro-Quebec (a la demande)
      …
      - louka/hydro.py : parcours PUBLIC rétro-conçu de l outil « Estimer les coûts
        d électricité à une résidence » — 2 étapes (lieu-consommation -> estimation)
        sur services-cl.solutions.hydroquebec.com, jeton reCAPTCHA v2 via solveur
        enfichable (2captcha/CapSolver, clé HQ_CAPTCHA_KEY), sortie par proxy
        résidentiel CA (Oxylabs/Bright Data), cache 6 mois data/hydro.db ; sans clé
        captcha -> {disponible:false} et bloc masqué (jamais d estimation inventée)
      - GET /api/hydro?adresse= ; bloc fiche à la demande (bouton, 1 captcha/appel)
        affichant le coût mensuel et annuel estimés
      
      Activation : définir HQ_CAPTCHA_KEY (+ HQ_CAPTCHA_PROVIDER) dans .env.
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +228