SPB Git

spb/lou-ka Public

Lou·Ka — tous les logements à louer du Québec, un seul endroit.

HTML 99.7%
3.9 KB

# cromwell — Cromwell Management (site unités : cromwellmontreal.ca)

# Champs extraits

  • title, address, price_label (« Starting at $1,345/month »), beds/baths, superficie (« 334 Sq. ft » dans .item-amenities) : cartes liste .item-listing-wrap.
  • unit_type : « X 1/2 » du bloc Détails de la fiche (« 1 Bedroom (3 1/2) »), sinon nb de chambres (0.5 = Studio).
  • availability : étiquettes de la fiche (.property-labels-wrap : « Available Now, Promotion 1 Free Month ») + NOUVEAU repli sur « Property Status » du bloc Détails.
  • amenities : NOUVEAU — liste Features complète de la fiche (.property-features-wrap li : Balcony, Elevator, Heating, Hot Water, Laundry Room, Parking, Refrigerator, Security Cameras…) fusionnée aux items de la carte + « X Bathroom(s) » du bloc Détails.
  • sector : NOUVEAU — bloc Adresse de la fiche (« City/ Ville: Montreal, Plateau Mont-Royal ») en repli du parsing de titre/adresse.
  • description : bloc Description de la fiche ; images : uploads WP (variantes -NxN exclues).

# Champs indisponibles à la source

  • Animaux, meublé, date précise de disponibilité (seulement « Available Now » / « Rented »).
  • lat/lng : aucune coordonnée dans la page (la carte Houzez n'est pas configurée).
  • Inclusions précises au bail : « Heating », « Hot Water » listés comme features sans dire explicitement « inclus » (interprétés centralement comme inclusions — plausible ici).

# Fragilités

  • Thème Houzez : sélecteurs .item-listing-wrap, .detail-wrap, .property-features-wrap, .property-labels-wrap — stables tant que le thème ne change pas.
  • Le vrai site corporatif (cromwellmgt.ca) ne publie pas d'unités ; tout repose sur le site jumeau cromwellmontreal.ca (12 annonces seulement, souvent « starting at » par immeuble).
  • Pagination suivie via a[rel=next] ; une seule page actuellement.
  • Villes défusionnées (Westmount/Hampstead) détectées par heuristique adresse/titre.

# Améliorations apportées

  • Fiches détail migrées vers le cache BD self.detail() (clé = sha1 titre|prix|adresse| amenities de la carte) : les re-syncs ne revisitent plus chaque fiche.
  • Amenities enrichies par la liste Features complète de la fiche (avant : 3-6 items de carte ; après : jusqu'à ~16 items → inclusions.heating/hot_water, elevator, laundry, parking, ac… dérivés centralement).
  • « X Bathroom(s) » et repli « Property Status » extraits du bloc Détails.
  • sector depuis le bloc Adresse de la fiche (ex. « Plateau Mont-Royal »).

# Échantillon avant/après

Renovated Plateau Studio Apartment

  • avant : 1345.0 | Studio | Available Now, Promotion 1 Free Month | now | 334 pi² | details={"appliances":{"fridge":true,"stove":true,"dishwasher":true,"washer_dryer":true},"laundry":true,"parking":{"available":true},"price_from":true} | amenities=[334 Sq. ft, …carte]
  • après : 1345.0 | Studio | Available Now, Promotion 1 Free Month | now | 334 pi² | details={"inclusions":{"heating":true,"hot_water":true},"appliances":{…},"elevator":true,"balcony":true,"laundry":true,"parking":{…},"price_from":true} | amenities=[334 Sq. ft, 1 Bathroom(s), Balcony, City Views, Cooking Stove, Dishwasher, Elevator, Fully Renovated, Heating, Hot Water, Laundry Room, Lobby, Microwave, Parking, Refrigerator, Security Cameras]

1 bedroom Apartment on Mount-Royal

  • avant : 1525.0 | 3½ | Available Now, Promotion 1 Free Month | now | 700 pi² | details={"appliances":{…},"pool":true,"gym":true,"price_from":true}
  • après : 1525.0 | 3½ | idem | now | 700 pi² | details={"inclusions":{"heating":true,"hot_water":true},"appliances":{…},"ac":true,"elevator":true,"balcony":true,"pool":true,"gym":true,…} | amenities enrichies (Features fiche)