SPB Git

spb/lou-ka Public

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

HTML 99.7%
3.8 KB

# thrace — Gestions Thrace

  • site: https://www.gestionsthrace.com/fr/residential
  • méthode: html (flux RSC Livya rendu serveur)
  • annonces: 181 (unités disponibles, résidentielles et locatives seulement)
  • couverture (sur 181 annonces): prix 69%, adresse 100%, dispo 100%, superficie 40%, commodités 61%, description 100%, images 100%, GPS 100%
  • fixture: ok · test: ok

# Champs extraits

  • Le portail /fr/residential embarque le module « inventory » Livya (client thrace, ~143 immeubles). Ce module charge ses unités côté client via api.realvuu.com — robots.txt Disallow: / : API volontairement non utilisée. Contournement conforme : les pages « plans » des trois projets Livya du client (thrace, radisson, carree-radisson) sur app.livya.com (robots permissif, Allow: /) sont rendues côté serveur — leur flux RSC (self.__next_f.push) contient l'inventaire JSON complet, comme pour somex_saintnicolas/louis14/quartier_sila.
  • 6 requêtes par sync : page WordPress (data-client + data-entity), sitemap public d'app.livya.com (découverte des slugs de projets, replis constants), 3 pages de plans, 1 dédup.
  • Par unité ({"unitId": …} via raw_decode) : numéro, statut (AVAILABLE seulement), loyer réel (rentalPrice -> prix + price_label), pièces (rooms 3.5 -> « 3½ »), chambres/sdb (details), étage, superficie (unitSize IMPERIAL -> area_sqft, publiée pour 72 unités), adresse civique + ville + code postal par unité, GPS, inclusions/caractéristiques publiées (attributes : « Eau chaude », « Animaux interdits », « Stationnement: 1 extérieur »… -> amenities), promotions (pricePrecision : « - RABAIS DE 100$ / MOIS » -> description), date de libération future (futureAvailability.startsOn -> availability_date ISO), photos du type + plan d'étage (CloudFront).
  • Immeubles ({"buildingId": …}) : nom + slug -> titre « Gestions Thrace (Le Bellefeuille) — unité 503 » et URL profonde ?building=<slug> (comprise par le module inventory du site).
  • external_id = unitId (UUID Livya) — stable.
  • Filtres : availability == AVAILABLE, rental == true (vente exclue), segment == RESIDENTIAL (3 locaux commerciaux exclus), stateCode == QC.

# Champs indisponibles à la source

  • Prix : 56 unités AVAILABLE sans loyer publié (rentalPrice: 0 — prélocation Le Bellefeuille surtout) — prix None, jamais inventé.
  • Superficie : publiée pour 72/181 unités seulement (unitSize: 0 ailleurs).
  • Secteur/quartier : non exposé par le flux (ville seulement : Trois-Rivières 180, Bécancour 1).
  • Animaux/meublé : parfois dans attributes (« Animaux interdits ») — repris tel quel, extrait ensuite par le pipeline.

# Fragilités

  • Le rendu serveur des unités n'existe que sur la route projects/<slug>/plans/<entity> d'app.livya.com (le paramètre entity est accepté même pour un module inventory) ; si Livya passe au rendu 100 % client (comme sa route /units), le connecteur ne retournera plus rien — alerte de volume au sync.
  • Découverte des slugs de projets via le sitemap public (/fr/thrace/projets/<slug>) avec replis constants (thrace, radisson, carree-radisson) : un 4e projet créé chez Livya serait capté par le sitemap.
  • Pages volumineuses (jusqu'à 6 Mo) — fixture ~10 Mo, dans la lignée de louis14 (2,7 Mo).

# Notes

  • ~2 500 logements gérés selon l'étude ; 429 unités publiées dans le module (dont 299 NOT_AVAILABLE) -> 181 annonces.
  • Le total du module inventory (API interdite) affiche 217 unités disponibles : l'écart (~15) correspond à des unités non poussées dans les pages de plans — couverture assumée, sans toucher à l'API.
  • robots.txt : gestionsthrace.com permissif (Yoast, Disallow vide) ; app.livya.com Allow: / ; api.realvuu.com Disallow: / (respecté — non utilisé).