Skip to content
# gestion_fauvel — Gestion Fauvel
- site: https://gestionfauvel.com (WordPress + Elementor + JetEngine)
- méthode: html plat — grille JetEngine de /logements-a-louer/ (1 requête) + fiches détail Elementor (cache BD)
- annonces: 11 (l'immeuble « Grands-Ducs » marqué COMPLET! est exclu)
- couverture (sur 11 annonces): prix 91%, adresse 91%, dispo 100%, type 91%, images 100%, ville 100%, description 100% — superficie/GPS jamais publiés
- fixture: ok (12 requêtes) · test: ok (2 verts)
- Grille
.jet-listing-grid__item de la page liste :
data-post-id (id de post WordPress) → external_id stable ;
data-url de l'overlay JetEngine → URL de la fiche ;
- en-têtes
.elementor-heading-title de la carte : le dernier = titre
(« Littera – 4 ½ »), celui qui contient $ = price_label
(« à partir de 1475$/mois »), le reste concaténé = availability
(« Disponible à partir du 1er juillet 2026 ») ;
.jet-listing-dynamic-terms = ville réelle (taxonomie JetEngine) :
Drummondville, Saint-Léonard-d'Aston, Notre-Dame-du-Bon-Conseil ;
- vignette de la carte → image de secours.
- unit_type = normalize_unit_type(titre), gardé seulement si le résultat est
un format d'unité (« Carré Degranpré – Condos locatifs » → type vide).
- Fiche détail (via self.detail, cache BD, budget 25) :
- adresse civique = h3 d'en-tête qui matche une regex rue/boul/rang…
(« 555, rue des Écoles, app. 105 Drummondville ») ;
- description = blocs après le h2 « Description » jusqu'au h2 suivant :
liste des unités dispo (#315: 3½ type B, 1275$/mois…) + inclusions
(câble/internet Cogeco, eau chaude, stationnement, animaux…) — textmine
structure tout ça au finalize() ;
- photos = liens pleine taille du carrousel Elementor (jusqu'à 30).
# Champs indisponibles à la source
- Superficie, GPS, commodités structurées : jamais publiés (les inclusions
restent en texte dans la description).
- Le « prix » de la carte est celui d'une unité type : plusieurs unités par
fiche avec des prix différents (détaillés dans la description).
- Carré Degranpré (2499) : projet de condos locatifs sans prix ni adresse
publiés sur la carte (page de projet).
# Fragilités
- La classification des en-têtes de carte est positionnelle (titre = dernier
en-tête, prix = celui avec $) : un remaniement du gabarit JetEngine
casserait le tri — le test de fixture le détecterait.
- L'exclusion COMPLET!/commercial repose sur des mots-clés dans le titre et
la disponibilité.
- L'adresse vient d'une regex sur les h3 de la fiche : un immeuble sans h3
d'adresse (ex. Carré Degranpré) reste sans adresse (jamais deviné).
# Échantillon
- 1288 : Littera – 4 ½, 1600$/mois, disponible maintenant, 555 rue des
Écoles app. 105, Drummondville, 12 photos.
- 3082 : 100 Boisbriand – 5 ½, à partir de 1650$/mois, 1er juillet 2026,
100 rue de Boisbriand, Drummondville.
- 2873 : Le Zéa – 5 ½, 1595$/mois, disponible maintenant, 762 9e rang,
Saint-Léonard-d'Aston, 28 photos.