SPB Git

spb/ora-ka Public

Ora-Ka — cinq agrégateurs Ka, une barre de recherche hybride (exact + sémantique)

Python 80% TypeScript 12.9% CSS 6.8%
1.5 KB · 39 lines python
Raw Blame History
1# -----------------------------------------------------------------------------2# Fabri-Ka — Agrégateur de produits québécois3# Auteur : Simon-Pierre Boucher — contact@spboucher.ai4# connectors/__init__.py : dispatch plateforme -> connecteur générique5# -----------------------------------------------------------------------------6from __future__ import annotations78from .base import BaseConnector9from .generic import GenericConnector10from .shopify import ShopifyConnector11from .squarespace import SquarespaceConnector12from .wix import WixConnector13from .woocommerce import WooCommerceConnector1415PLATFORM_CONNECTORS: dict[str, type[BaseConnector]] = {16    "shopify": ShopifyConnector,17    "woocommerce": WooCommerceConnector,18    "wordpress": WooCommerceConnector,   # WordPress avec Store API active19    "squarespace": SquarespaceConnector,20    "wix": WixConnector,21    # plateformes à rendu serveur → extraction du balisage produit (JSON-LD…)22    "prestashop": GenericConnector,23    "magento": GenericConnector,24    "bigcommerce": GenericConnector,25    "lightspeed": GenericConnector,26    "snipcart": GenericConnector,27    "generic": GenericConnector,28}2930# endpoint sentinelle : boutique validée pour le connecteur générique31GENERIC_ENDPOINT = "__generic__"323334def connector_for(store: dict) -> BaseConnector | None:35    if store.get("catalog_endpoint") == GENERIC_ENDPOINT:36        return GenericConnector(store)37    cls = PLATFORM_CONNECTORS.get(store.get("platform") or "")38    return cls(store) if cls else None39