spb/food-ka Public
Food-Ka — agrégateur de produits d'épicerie du Québec — www.food-ka.com
Python 57.7%
TypeScript 24.9%
CSS 16.7%
HTML 0.6%
1# -----------------------------------------------------------------------------2# Food-Ka — connecteur Giant Tiger (magasin escompte, rayons épicerie)3# Auteur : Simon-Pierre Boucher — contact@spboucher.ai4# Boutique Shopify -> le catalogue complet mêle vêtements et articles de5# maison ; on cible donc les collections « épicerie » (voir _shopify.py).6# -----------------------------------------------------------------------------7from ..schema import Product8from ._shopify import ShopifyConnector910# product_type Giant Tiger que normalize_category ne reconnaît pas11_TYPE_MAP = {12 "non-perishable": "Garde-manger",13 "fish": "Poissons et fruits de mer",14}151617class GiantTigerConnector(ShopifyConnector):18 source_id = "giant_tiger"19 domain = "www.gianttiger.com"2021 # collections épicerie du site ; "" = déduire la catégorie du product_type22 collections = [23 ("grocery", ""),24 ("frozen", "Surgelés"),25 ("dairy-and-eggs", "Produits laitiers et œufs"),26 ("meat-and-seafood", "Viandes et volailles"),27 ("drinks-1", "Boissons"),28 ("chocolate-and-candy", "Collations et confiseries"),29 ("granola-bars-and-snacks", "Collations et confiseries"),30 ("international-food", "Garde-manger"),31 ("baby-food", "Bébé"),32 ]3334 def _to_product(self, product: dict, category: str = "") -> Product | None:35 # rabat les product_type maison ("Non-Perishable", "Fish"…) que la36 # normalisation générique ne connaît pas37 if not category:38 category = _TYPE_MAP.get((product.get("product_type") or "").lower(), "")39 return super()._to_product(product, category)40