SPB Git forge

spb/crea-ka

Public

Créa·Ka — annuaire public cross-plateforme des créateurs de contenu québécois (crea-ka.com)

52commits 1branches 0releases
11.3 MBsize
maindefault branch
19 days agolast push
Python 73.6% HTML 13.2% TypeScript 6% JavaScript 4.5% CSS 1.7% Dockerfile 0.6%
1.2 KB · 30 lines python
Raw Blame History
1# ==============================================================================2# Author: Simon-Pierre Boucher <contact@spboucher.ai>3# File:   creaka/connectors/__init__.py4# Desc:   Registre AUTO-DÉCOUVRANT des connecteurs (calqué sur Lou-Ka) —5#         tout module contenant une sous-classe de BaseConnector avec un6#         source_id non vide est enregistré automatiquement7# ==============================================================================8from __future__ import annotations910import importlib11import pkgutil12import sys1314from .base import BaseConnector1516CONNECTORS: dict[str, type[BaseConnector]] = {}1718for _mod in pkgutil.iter_modules(__path__):19    if _mod.name in ("base", "__init__"):20        continue21    try:22        module = importlib.import_module(f"{__name__}.{_mod.name}")23    except Exception as exc:  # un connecteur cassé ne bloque pas les autres24        print(f"[crea-ka] connecteur '{_mod.name}' ignoré : {exc}", file=sys.stderr)25        continue26    for obj in vars(module).values():27        if (isinstance(obj, type) and issubclass(obj, BaseConnector)28                and obj is not BaseConnector and getattr(obj, "source_id", "")):29            CONNECTORS[obj.source_id] = obj30