spb/immo-ka Public
Immo-Ka — agrégateur des propriétés à vendre au Québec (73 connecteurs, ~40 000 annonces, React+FastAPI)
Python 66.4%
TypeScript 19.9%
CSS 13.2%
HTML 0.5%
1# -----------------------------------------------------------------------------2# Immo-Ka — Agrégateur de maisons à vendre (province de Québec)3# Auteur : Simon-Pierre Boucher — contact@spboucher.ai4# connectors/__init__.py : registre AUTO-DÉCOUVRANT des connecteurs5# Tout module de ce paquet contenant une sous-classe de BaseConnector avec un6# source_id non vide est enregistré automatiquement — aucun fichier partagé7# à modifier pour ajouter un connecteur (1 connecteur = 1 agence).8# -----------------------------------------------------------------------------9from __future__ import annotations1011import importlib12import pkgutil13import sys1415from .base import BaseConnector1617CONNECTORS: dict[str, type[BaseConnector]] = {}1819for _mod in pkgutil.iter_modules(__path__):20 if _mod.name in ("base", "__init__"):21 continue22 try:23 module = importlib.import_module(f"{__name__}.{_mod.name}")24 except Exception as exc: # un connecteur cassé ne bloque pas les autres25 print(f"[immo-ka] connecteur '{_mod.name}' ignoré : {exc}", file=sys.stderr)26 continue27 for obj in vars(module).values():28 if (isinstance(obj, type) and issubclass(obj, BaseConnector)29 and obj is not BaseConnector and getattr(obj, "source_id", "")):30 CONNECTORS[obj.source_id] = obj31