Resto·Ka — tous les restaurants du Québec, menus complets et prix réels (famille ·Ka)
Python 69.3%
TypeScript 16.7%
CSS 7.9%
JavaScript 4.7%
HTML 1.4%
1# ==============================================================================2# Author: Simon-Pierre Boucher <contact@spboucher.ai>3# File: restoka/connectors/__init__.py4# Desc: Registre AUTO-DÉCOUVRANT des connecteurs : tout module de ce paquet5# contenant une sous-classe de BaseConnector avec un source_id non6# vide est enregistré automatiquement (même patron que Lou·Ka).7# ==============================================================================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"[resto-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