SPB Git

spb/lou-ka Public

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

HTML 99.7%
2.6 KB

# per — Les Immeubles Paul-E. Richard

  • site: https://immeublesper.com/logements/ (fiches /logement//)
  • méthode: html
  • annonces: 2 → 2
  • couverture après (sur 2 annonces): prix 100%, adresse 100%, dispo 100%, superficie 0%, commodités 100%
  • fixture: ok · test: ok

# Champs extraits

  • Informations générales (paires ls-label/ls-data) : secteur, adresse, format, prix, disponibilité, nombre de chambres, étage, animaux permis.
  • pets (corrigé) : le champ structuré "Animaux permis: Oui/Non" est maintenant mappé explicitement → pets="non"/"oui"/"conditions" (avant : le texte brut "Animaux permis : Non" était mal interprété en pets="oui" par la normalisation générique).
  • Caractéristiques (liste <ul> après le h2 "Caractéristiques") → amenities ; "3e étage" → floor, "Chauffé"/"Eau chaude" → inclusions, balcon, remise, stationnement dérivés par finalize().
  • Numéro d'unité (#32), galerie fancybox pleine taille, prix "895$ / mois".

# Champs indisponibles à la source

  • Superficie : jamais affichée.
  • Description : les fiches n'ont aucun paragraphe descriptif (vérifié dans .ls-single).
  • lat/lng : non exposés.
  • La source ne publie que les unités disponibles (2 en ce moment sur 18 immeubles) — le sitemap Yoast (logement-sitemap.xml) confirme : 2 fiches publiées, rien de plus à découvrir.

# Fragilités

  • Volume très variable (unités retirées dès qu'elles sont louées) ; 0 annonce possible hors saison.
  • Le thème WordPress "verteb" est artisanal ; les classes ls-info/ls-label/ls-data sont le seul ancrage.
  • Disponibilité en mots seuls ("AOÛT", "SEPTEMBRE") — bien gérée par parse_availability_date (mois passé → "now").

# Améliorations apportées

  • pets explicite depuis le champ structuré (corrige une inversion oui/non).
  • Le texte "Animaux permis : X" reste dans amenities pour l'affichage (la valeur explicite a priorité dans details).

# Échantillon avant/après

  • Avant : 80 Sapinière Dorion Ouest, #32, 3 1/2 | 895 | AOÛT → now | pets=oui (FAUX) | details={... "pets": "oui" ...}
  • Après : 80 Sapinière Dorion Ouest, #32, 3 1/2 | 895 | AOÛT → now | pets=non | details={"inclusions": {"heating": true, "hot_water": true}, "balcony": true, "storage": true, "pets": "non", "parking": {"available": true}, "floor": 3}

# Note de normalisation (générique)

  • _PETS_YES_RE matche "animaux permis" dans "Animaux permis : Non" (le "Non" suit le mot-clé au lieu de le précéder) — _PETS_NO_RE n'attend que "animaux non permis". Les connecteurs dont la source expose "Animaux permis: Non" doivent mapper explicitement, sinon dérivation erronée.