SPB Git forge

spb/rent-ka

Public
8commits 1branches 0releases
7.4 MBsize
maindefault branch
20 days agolast push
Python 68.8% TypeScript 18.6% CSS 8.7% JavaScript 3.3% HTML 0.6%
1.4 KB · 33 lines python
Raw Blame History
1# -----------------------------------------------------------------------------2# Rent-Ka — Rental listings aggregator (Canada, outside Québec)3# Author: 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.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"[rent-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            if getattr(obj, "disabled", False):   # source hors-ligne (voir le module)31                continue32            CONNECTORS[obj.source_id] = obj33