Skip to content
# location_di — Location DI (Groupe Sphère DI)
- site: https://locationdi.com (page /logements + pages régionales /logements/region/*)
- méthode: html SSR (Astro) — cartes avec attributs data-* structurés + JSON-LD schema.org « Apartment » par fiche
- annonces: 9 (unités disponibles affichées ; le parc total est de +750 logements — seules les dispos sont publiées)
- couverture (sur 9 annonces): prix 100%, adresse 100%, dispo 100%, superficie 100%, commodités 100%, images 100%, ville 100%
- fixture: ok (22 requêtes) · test: ok (2 verts)
- villes servies aujourd'hui : Trois-Rivières (4), Saint-Ambroise-de-Kildare (2), Bécancour, Berthierville, Saint-Gabriel-de-Brandon — 2 régions du périmètre (Mauricie + Lanaudière) d'un coup
- Liste /logements : chaque carte
.logement-card porte des ATTRIBUTS STRUCTURÉS
data-slug, data-ville, data-region, data-type (3½…), data-etage
(→ details.floor_label), data-prix (nombre), data-date (ISO) + badge de
disponibilité affiché (« Disponible dès maintenant » / « Libre le … »).
Les pages régionales découvertes dans la nav sont balayées en filet
(dédup par slug) — garde-fou max_region_pages=12.
- Fiche (via self.detail, plafond 60 vraies requêtes/sync) : JSON-LD
« Apartment » → adresse civique (streetAddress) + ville (addressLocality),
superficie (floorSize pi²), chambres (numberOfRooms → details.bedrooms),
galerie photo (cdn.sanity.io), description synthétique de la source.
Commodités : items de la section « Commodités et inclusions »
(insonorisation, thermopompe, échangeur d'air, animaux acceptés, Wi-Fi $…).
- external_id : identifiant numérique final du slug (ex. 509827) — stable.
- price_label « À partir de X$ / mois » quand la carte l'affiche → price_from.
- availability_date : data-date ISO normalisé (une date passée = « now »).
# Champs indisponibles à la source
- GPS : non publié (ni JSON-LD geo, ni carte avec coordonnées) — géocodeur.
- Animaux : « Animaux acceptés (sous certaines conditions) » apparaît dans les
commodités quand applicable → dérivé par textmine, pas de champ dédié.
- Meublé : non publié.
- Pas de bloc
User-agent: * ni de crawl-delay : les UA non listés (dont
LouKaBot) sont permis par défaut. Les bots IA « live fetch » sont
explicitement AUTORISÉS ; seuls les bots d'ENTRAÎNEMENT (GPTBot, ClaudeBot,
CCBot…) et les bots SEO tiers sont bloqués. Notre usage — indexation
d'annonces avec lien vers la source, UA transparent — est conforme.
request_delay = 0,7 s.
# Fragilités
- Pages servies SANS charset dans l'en-tête HTTP : le connecteur force
UTF-8 (resp.encoding), sinon mojibake (« Trois-Rivières »).
- Les attributs data-* de la carte sont la source primaire : un refactor du
thème Astro casserait la liste (le test fixture le détecterait).
- Le prix JSON-LD de la fiche peut différer du data-prix de la carte
(« À partir de » : la carte affiche le plus bas — conservé tel quel).
# Échantillon
- 509827 : 3½ — 1894 Rue Saint Philippe, Trois-Rivières, 1025 $ (à partir de),
625 pi², 3e étage, dispo maintenant, 5 photos, 5 commodités.
- 446229 : 3½ — 330 Rue de Bienville, Berthierville, 1025 $, 615 pi².
- 691081 : 3½ — 989 Route 343, Saint-Ambroise-de-Kildare, 1025 $, 800 pi².