Skip to content
# somex_saintnicolas — Somex Saint-Nicolas (Groupe Mahlex / OÏKOS Construction)
- site: https://www.somexsaintnicolas.com (page /plans/ → module de plans Livya, app.livya.com, client « hulix », projet « somex »)
- méthode: html + flux RSC Next.js rendu serveur (self.__next_f.push → JSON complet de l'inventaire)
- annonces: 145 (sur 221 unités au total : 63 NOT_AVAILABLE, 12 OFF_MARKET, 1 RESERVED — seules les AVAILABLE sont retenues)
- couverture (sur 145 annonces): prix 100%, adresse 100%, dispo 100%, superficie 100%, commodités 100%, images 100%, GPS 100%
- fixture: ok (2 requêtes) · test: ok
- Inventaire JSON structuré par unité (payload Livya, aucun scraping de mise en page) : numéro, étage (→ details.floor), statut, loyer exact par unité (1775–2850 $ ; pas un « à partir de »), pièces (3.5/4.5/5.5 → 3½/4½/5½, 0.5 → Studio), superficie en pi² (measurementSystem IMPERIAL), balcon (pi²), chambres/salles de bain/bureau (description), modèle (typeName).
- address : « 710 Route des Rivières, Saint-Nicolas, G7A 2T6 » (champ address/city/postalCode du payload) ; lat/lng par unité (46.7331, -71.2931).
- images : photos du type d'unité (CloudFront) + image du plan d'étage ; lien du plan PDF dans la description.
- external_id :
unitId (UUID) de Livya — l'identifiant d'unité de la source, stable.
- details.contact : téléphone du bureau (lien tel: du pied de page WordPress, 418-520-4412).
- amenities : inclusions affichées sur la page /appartements/ (eau chaude, électros en inox, éclairage, accès internet, air climatisé) — valables pour tout le projet → inclusions/ac/appliances dérivés.
- Découverte dynamique : le connecteur lit data-client/data-project/data-entity sur /plans/ à chaque sync (résiste à un changement d'id d'entité Livya).
# Champs indisponibles à la source
- Date de disponibilité par unité : le champ
futureAvailability du payload est vide pour toutes les unités — statut « Disponible » (→ now). Le connecteur utilisera la date si la source se met à la publier.
- Animaux :
dogsAllowed=false sur les étages, jamais affiché dans l'interface publique — non interprété (pets=None).
- Meublé : non publié.
# Fragilités
- Dépend du format RSC de Next.js (
self.__next_f.push) : une migration de Livya vers un autre framework casserait l'extraction (le sélecteur "units":[ est toutefois robuste aux réordonnancements).
- L'API REST de Livya (api.realvuu.com/app) exige une authentification : pas de repli JSON direct possible.
- Le payload est volumineux (~1,2 Mo) mais tient en 1 requête ; 2 requêtes par sync au total.
- Les inclusions (amenities) sont un texte du site s'appliquant au projet entier — à revalider si le site les modifie.
# Échantillon
- Unité 934 (3½, étage 9) : 2035 $/mois, 1078 pi², balcon 86 pi², modèle W, plan PDF + photo, GPS.
- Unité 1203 (4½, étage 12) : 2070 $/mois, 1087 pi², « 710 Route des Rivières, Saint-Nicolas, G7A 2T6 ».
- Prix par typologie : 3½ 1775–2510 $ (73 unités), 4½ 1950–2690 $ (69), 5½ 2300–2850 $ (3).