SPB Git

spb/lou-ka Public

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

HTML 99.7%
3.7 KB

# mercini — Groupe Mercini (Gestion Faleschini Mercier)

  • site: https://groupemercini.com/appartements/
  • méthode: html
  • annonces: 35
  • couverture (sur 35 annonces): prix 100%, adresse 100% (avec code postal), dispo 100%, superficie 0%, commodités 100%, description 100%, images 100%
  • fixture: ok · test: ok

# Champs extraits

  • Liste /appartements/ paginée (WordPress + thème WpResidence, 12 cartes/page, 3 pages actuellement, garde-fou 10 pages). Par carte : titre complet (alt de l'image — le h4 est tronqué), catégorie (action_tag_wrapper : « 4½ », « Studio ou 2½ », « Chambre », « Maison de ville »… → details.category), statut (ribbon-inside : « Disponible pour visite », « Bientôt disponible », « Nouveau » → details.status ; « Loué » = exclu), prix (« 1380 $ par mois »), chambres/salles de bain (→ amenities), carrousel d'images.
  • Titre structuré par l'agence : « 4-1/2 | Secteur : Duberger | Disponible : Juillet 2026 » → sector, availability (« Disponible : … » ou « Livraison … » pour les projets neufs), unit_type (« 4-1/2 » → 4½).
  • Fiche détail (via self.detail + cache BD, budget 60 vraies requêtes/sync) :
    • adresse civique complète avec code postal (.property_categs, texte hors liens : « 3135 Rue Dubé, Québec, QC G1M 2N2 ») ;
    • taxonomies (liens property_city/property_area) → secteur (Duberger, Limoilou, Sainte-Foy…) et ville (Québec/Lévis) ;
    • description riche (1500 c.) : bullets ▪️ (charges, internet, meublé, entrées laveuse-sécheuse, stationnement, animaux, fumeur) — l'Unicode décoratif (𝐏𝐫𝐢𝐱, 𝘙𝘦́𝘧) est normalisé NFKC pour que la couche extract_details fonctionne (inclusions négatives « NON Chauffé/NON Éclairé » bien détectées) ;
    • n° de référence de l'annonce (REF…) → details.reference ;
    • overview (« 2 Chambres », « 1.5 Salles de bain ») + caractéristiques (« Entrée indépendante », « Stationnement extérieur ») fusionnées aux amenities ;
    • galerie complète : carrousel #owl-demo (background-image), suffixe -1170x660 retiré → pleine taille.
  • external_id = slug WordPress estate_property (ex. 2575-2) — stable.

# Champs indisponibles à la source

  • Superficie : jamais publiée.
  • lat/lng : le thème expose general_latitude mais la valeur est erronée (latitude négative -46.8, identique sur toutes les fiches = coordonnées du siège avec coquille de signe) — ignorée, le géocodeur Lou-Ka prend le relais sur l'adresse (qui est excellente : code postal partout).
  • pets/furnished structurés : dérivés de la description par la normalisation commune quand mentionnés (« 2 chats maximum » → conditions, « Non meublé » → false).

# Fragilités

  • Sélecteurs WpResidence (.property_listing, .property_categs, #owl-demo, .overview_element) — sensibles à un changement de thème.
  • Le titre-annonce (« … | Secteur : … | Disponible : … ») est une convention rédactionnelle de l'agence : si elle change, secteur et disponibilité retomberaient sur les taxonomies et le ribbon.
  • Les cartes de la liste tronquent le titre : l'alt de l'image sert de titre complet — si l'agence cesse de renseigner les alt, prévoir un repli sur le h1 de la fiche.

# Notes

  • 35 annonces actives (595 $ chambre – 1 895 $ maison de ville) réparties : Limoilou 18, Sainte-Foy 6, Duberger 3, Vanier 2, Saint-Sacrement 2, Beauport/Montcalm/Saint-Sauveur/Sillery 1. Aucune annonce Lévis au moment de l'écriture (la détection Lévis via property_area est en place).
  • « Juillet 2026 » (déjà passé au moment de la sync) → availability_date = now, comportement standard de la normalisation.