cogir — Cogir Immobilier (cogir.net)
- site: https://www.cogir.net/gestion-immeubles-residentiels.html (+ ~100 fiches immeuble)
- méthode: html (rendu serveur, liste + fiches immeuble)
- annonces: 270 → 283 (une par modèle offert ; +modèles autrefois écrasés par collision d'uid, +penthouses ; −modèles « Pas disponible »/« Liste d'attente »)
- couverture après (sur 283 annonces): prix 97%, adresse 100%, dispo 97%, superficie 0% (non publiée), commodités 56% (beaucoup d'immeubles sans section Services), contact 94%
- fixture: ok · test: ok (104 requêtes rejouées)
Champs extraits
- Liste : liens des immeubles par ville (slugs
immeuble-residentiel-<ville>/<id>-…), filtrés Québec/Lévis + Grand Montréal - Fiche immeuble : nom (h1), adresse (
p.adresse, désormais dédupliquée : « …, Québec, QC, Québec, Québec G1M 0E6 » → sans doublons), description (+ NOUVEAU section « Promotion » en tête quand présente), services de l'immeuble (ul), photos DATA/PHOTO - Tableau
#tableModele(NOUVEAU parsing par classes de colonnes colType/colModele/colPrix au lieu d'un balayage positionnel) : type, nom du modèle (« 1 chambre + bureau », intégré au titre), prix « à partir de » - availability : NOUVEAU — « Disponible » pour les modèles offerts (tableau « Modèles disponibles ») ; les modèles marqués « Pas disponible » ou « Liste d'attente » sont EXCLUS (avant : listés avec prix comme s'ils étaient offerts)
- details.contact : NOUVEAU — téléphone et courriel de l'immeuble (liens tel:/mailto: de « Personne(s) à contacter », en excluant le pied de page corporatif info@cogir.net / 1-866 ; les mailto « %20… » sont décodés)
- Penthouses : NOUVEAU — lignes « Penthouse » du tableau désormais admises
Champs indisponibles à la source
- Superficies (aucun pi² sur les fiches), dates précises de disponibilité (juste offert / pas disponible / liste d'attente)
- Animaux, meublé, étage ; inventaire unité par unité (une annonce = un modèle)
- GPS (la carte est chargée en JS sans coordonnées lisibles dans le HTML)
Fragilités
- CORRIGÉ mais à surveiller : deux modèles du même type (ex. « 3 1/2 » et « 3 1/2 + den ») produisaient le même external_id → une annonce en écrasait une autre (288 trouvées / 270 stockées). Le premier modèle garde l'uid historique
{id}-{type}; les suivants reçoivent{id}-{type}-{slug modèle}. Si l'ORDRE des lignes du tableau change chez Cogir, l'uid de base peut « glisser » d'un modèle à l'autre (prix mis à jour, pas de doublon) - ~100 fiches immeuble re-crawlées à chaque sync (~90 s à 0,6 s/req). Le cache
self.detail()est INAPPLICABLE proprement : la page liste ne porte ni prix ni modèles (seulement nom/adresse/photo), donc aucune clé de contenu ne peut détecter un changement de prix — un cache figerait les loyers. Pas de visites additionnelles ajoutées par cette passe - Sélecteurs dépendants du gabarit maison (
p.adresse,#tableModele, h2 littéraux « Description », « Services dans l'immeuble », « Promotion ») - Certains immeubles mettent « À partir de » dans la colonne Modèle (géré) ; colonnes parfois vides
- L'exclusion aînés/étudiantes repose sur une regex sur le nom/description — un changement de vocabulaire (« résidence services ») passerait au travers
Améliorations apportées
- Exclusion des modèles « Pas disponible » / « Liste d'attente » (annonces fantômes avant)
- availability = « Disponible » sur les modèles offerts (avant : 100 % des annonces sans disponibilité)
- Fin des collisions d'uid : 13 modèles ré-apparus (dont « + den », 2e modèles) + penthouses admis
- Titre enrichi du nom de modèle ; prix du BON modèle sur l'uid historique (avant : le dernier modèle du tableau écrasait le premier)
- Adresse dédupliquée ; promotion en tête de description ; contact structuré par immeuble (94 % des annonces)
- 2026-08-08 — Expansion provinciale (lot 0) : slugs Outaouais ajoutés à
_GM_SLUGS(gatineau,hull,aylmer→ ville « Gatineau », secteur Hull/Aylmer le cas échéant). +7 annonces Gatineau : Le Vibe (6 modèles 3½–5½, 1 544 $–2 750 $) et Bloome Appartements (fiche immeuble, tableau de modèles vide actuellement). Les slugsottawarestent exclus (Ontario). 283 → 290 annonces. Fixture réenregistrée, 2 tests verts.
Échantillon avant/après
L'Aventura Condos Locatifs — 3½ (uid cogir:2677-3) — avant :
1789.0 | 3½ | (dispo vide) | ∅ | area=∅ | pets=∅ | {"ac": true, "balcony": true, "pool": true, "gym": true, "parking": {…}, "price_from": true} | 1769 Rue Careau, Québec, QC, Québec, Québec G1M 0E6 (titre sans modèle ; le prix affiché était celui du « 3 1/2 + den » qui écrasait le « 3 1/2 »)
après :
1496.0 | 3½ | Disponible | now | area=∅ | pets=∅ | {…, "contact": {"phone": "418-254-2588", "email": "infolaventura@cogir.net"}} | 1769 Rue Careau, Québec, QC, Québec G1M 0E6 — titre « — 3½ (1 chambre) » ; le « + den » est maintenant sa propre annonce (cogir:2677-3-1-chambre-bureau, 1789 $)
L'Aventura — 5½ — avant : listé à 2659 $ alors que la fiche indique « Pas disponible » après : retiré (désactivé après le délai de grâce)