# ----------------------------------------------------------------------------- # Lou-Ka — Agrégateur de logements à louer (province de Québec) # Auteur : Simon-Pierre Boucher — contact@spboucher.ai # connectors/agence_sherbrooke.py : connecteur Agence de location Sherbrooke # (agencedelocationsherbrooke.com) — le portail d'annonces du groupe # Prestiplex (prestiplex.com n'affiche plus d'inventaire : son sitemap # property ne contient qu'une fiche de test). Sherbrooke, East Angus, Magog. # Même plateforme WordPress + thème Houzez que Gestion Dynamic : parsing # hérité de DynamicConnector. Particularités du site : # - la PAGE D'ACCUEIL est la page d'annonces (LIST_PATH = "/") ; # - la disponibilité est l'étiquette /label/ de la carte # (« Libre maintenant », « Juillet »…) ; # - l'adresse complète (Nominatim) est déjà sur la carte # (address.item-address) — ville/secteur en sont déduits. # ----------------------------------------------------------------------------- from __future__ import annotations from .dynamic import DynamicConnector class AgenceSherbrookeConnector(DynamicConnector): source_id = "agence_sherbrooke" BASE = "https://agencedelocationsherbrooke.com" LIST_PATH = "/" CITY_DEFAULT = "Sherbrooke" max_pages = 6 # -- crochets par site -------------------------------------------------------- def _card_availability(self, card, title: str) -> str: """Agence : étiquette /label/ de la carte (« Libre maintenant », « Juillet »…) — le lien /status/ porte plutôt le secteur.""" label_el = card.select_one("a[href*='/label/']") return label_el.get_text(" ", strip=True) if label_el else ""