place_florimay — Place Florimay (Montmagny, Chaudière-Appalaches)
- site: https://placeflorimay.ca (sélecteur d'unités sur l'accueil ; page /selecteur/ identique)
- méthode: html (sélecteur SVG « do1011 ») + REST WordPress
do-selecteur-plans(cache BDself.detail) - annonces: 0 au 2026-08-09 — connecteur fonctionnel, inventaire de la source vide (voir ci-dessous)
- couverture: n/a (aucune unité disponible à la source)
- fixture: non enregistrée (une fixture à 0 annonce rendrait
test_listings_are_validrouge) · test: n/a — à enregistrer dès qu'une unité repasse à « disponible » (run.py record place_florimay)
État du marché à la source (vérifié deux fois)
- L'accueil annonce « Phases 1 et 3 complètes! Quelques unités disponibles en phase 2 », mais le sélecteur ne contient que la phase 2 (60 unités, 5 étages × 12) et les 60 polygones portent la classe
indisponible(libellé « Louée »). - Vérification indépendante unité par unité via le REST (
/wp-json/do-selecteur-plans/v1/unite?id=<post-id>, 60 appels) :etat = "indisponible"pour les 60 → aucune annonce à produire. Le connecteur retourne donc 0 sans erreur, et produira des annonces automatiquement dès qu'une unité changera d'état. - Les phases 1 (60 unités) et 3 (50 unités, livrée juin 2026) ne sont pas exposées dans le sélecteur.
Champs extraits (mapping validé)
Le mapping a été validé de bout en bout en rejouant le HTML réel avec une unité forcée à « disponible » et la réponse REST réelle de cette unité :
place_florimay:101 | Place Florimay — Unité 101 | 136, boulevard Taché Ouest, Montmagny, QC G5V 3A5 | Montmagny | 4½ | 1300 $ par mois → 1 300 $ | Libre 1 septembre 2026 → 2026-09-01 | 1 280 pi² | balcon 144 pi² | étage 1 | 7 commodités | plan PDF + 9 photos
- Polygones SVG :
data-numero(id du contenu WP, clé de cache),data-etage(→details.floor),data-type(« 4½ coin », « 3½ ») → type d'unité,data-prix(loyer),data-promotion. - REST par unité :
unite(n° affiché →external_id),etat+etat_titre(« Louée »),type,superficie_habitable(pi²),superficie_terrasse(balcon),style,nb_chambres,pdf(→details.plan_pdf),gallery(plan PNG en tête des images),date_libre. - Prix : cette variante du plugin n'expose pas de champ
montant(contrairement à La Cour / AULA / Le St-Georges) → le loyer retenu est celui publié sur le polygone (data-prix), rien d'autre n'est supposé. - Commodités de l'immeuble (
.qodef-icon-list-item) : structure béton, chute à déchets, ascenseur, architecture moderne, lockers, grande insonorisation, toiture plate. - Photos réelles du projet (uploads de l'accueil), logos/plans/miniatures filtrés.
Champs indisponibles à la source
- Adresse par phase : le site ne publie qu'une adresse, celle du bureau de location (136, boulevard Taché Ouest) — utilisée comme adresse des annonces, faute de mieux, et signalée ici comme telle. Les adresses 105-125 boul. Taché Ouest citées dans l'étude d'expansion ne figurent pas sur le site : elles ne sont pas utilisées.
- Secteur (Montmagny n'a pas de découpage publié), lat/lng, animaux, meublé : non publiés.
Fragilités
- Cloudflare : 403 pour un UA non-navigateur ; le UA de base.py (Chrome + LouKaBot) passe.
robots.txt=Allow: /pour les agents génériques (blocage ciblé des robots d'entraînement IA : Amazonbot, Bytespider…) ; signaux de contenu « search=yes, ai-train=no, use=reference » — compatible avec un agrégateur qui renvoie vers la source. - Budget REST plafonné (
max_rest_units = 70) et cache BD par unité (clé = attributs du polygone) : en régime normal, quelques requêtes par sync. - Le sélecteur n'expose que la phase 2 : si le promoteur ajoute les phases 1 et 3, elles seront captées sans changement de code (le connecteur lit tous les polygones de la page).
- Plugin partagé avec
la_cour/aula/le_st_georges, mais variante différente (« do1011 », pas dedata-nom, pas demontant) : d'où un connecteur autonome plutôt qu'une sous-classe.