# habitations_sf — Les Habitations SF / S&F Gestion (leshabitationssf.com) - site: https://www.leshabitationssf.com (Wix — mais les pages dynamiques `/copy-of-location/` de la collection d'annonces sont rendues côté serveur : parsable sans JS ni Firecrawl) - méthode: html — accueil (répéteur d'annonces) + 1 fiche/annonce via cache BD (clé = hash des liens + textes du répéteur : tout changement d'accueil déclenche la relecture des fiches) - annonces: 7 (Saint-Charles-Borromée ×5, Piedmont ×1, Saint-Félix-de-Valois ×1) - couverture (sur 7): type 100 %, ville 100 %, dispo 100 %, prix 86 % (une fiche multi-typologies « à partir de », une fiche sans prix publié), chambres/sdb 100 %, images 100 %, description ~86 %, adresse 43 % (rue sans n° civique quand publiée) - fixture: ok (8 requêtes) · test: ok (2 verts) · sync: 7 ajoutées ## Champs extraits - Index : liens `a[href*="copy-of-location/"]` de l'accueil (dédupliqués, ordre conservé) ; **external_id = slug d'URL décodé et translittéré** (« appartement-3-1%2F2-%C3%A0-louer » → appartement-3-1-2-a-louer). - Fiche (page dynamique Wix, éléments `[data-testid="richTextElement"]`) : - `` → title (« APPARTEMENT 3 1/2 À LOUER À SAINT-CHARLES BORROMÉE ») → unit_type ; - statut isolé (« Disponible » / « Loué » / « Réservé ») → les unités parties sont filtrées ; - séquence structurée : valeur précédant « Chambre(s) », « Salle(s) de bain », « Pieds² » → amenities/area ; « <n> $ / mois » (ou « <n> / mois » sans $, variante du site) → price_label ; - plus long bloc riche (>200 car.) → description ; sa ligne « Adresse: … » → address + city (dictionnaire de villes sans accents/espaces) ; sa ligne « DISPONIBLE DÈS LE … » → availability ; - fiche multi-typologies (« 3 1/2 À PARTIR DE 1150$… ») → price_label « À partir de <min>$ » (convention Lou-Ka du prix plancher) ; - galerie : images wixstatic grand format (w_900+), dédupliquées par id de média `…~mv2` (le carrousel duplique chaque visuel). - Animaux (« Animaux acceptés sous certaines conditions ») : laissés à l'extraction commune sur la description (jamais devinés ici). ## Champs indisponibles à la source - N° civiques complets, GPS, superficies (champ « Pieds² » vide sur toutes les fiches actuelles). ## Fragilités - Wix : refonte du gabarit = re-travail ; le rendu serveur des pages dynamiques est un comportement Wix standard depuis 2020 mais pas garanti. - Les dates « DISPONIBLE DÈS LE 1ER AOUT 2025 » datent parfois de la mise en ligne (fiches encore affichées comme Disponible) : texte source conservé tel quel. - Pages lourdes (~1,8 Mo) : le cache BD limite les relectures ; délai 0,8 s. ## Échantillon - appartement-3-1-2-a-louer : 3½ rue de la Visitation, Saint-Charles-Borromée, 1150 $/mois, construction neuve 2025, 8 photos. - condo-4-1-2-a-louer : 4½ à Piedmont, 1 800 $/mois, « Disponible dès maintenant », 20 photos.