spb/fabri-ka Public
Agrégateur de produits québécois — www.fabri-ka.com
HTML 57.9%
Python 18.6%
TypeScript 15.6%
CSS 7.8%
1import requests, json, time2HDRS={"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 Chrome/126 Safari/537.36"}3vendors={}4page=15while page<80:6 r=requests.get(f"https://www.signelocal.com/products.json?limit=250&page={page}",headers=HDRS,timeout=25)7 ps=r.json().get("products",[])8 if not ps: break9 for p in ps:10 v=p["vendor"]11 d=vendors.setdefault(v,{"vendor":v,"product_types":set(),"n":0,"sample_products":[]})12 d["n"]+=113 if p.get("product_type"): d["product_types"].add(p["product_type"])14 if len(d["sample_products"])<3: d["sample_products"].append(p["title"])15 page+=1; time.sleep(0.3)16for v in vendors.values(): v["product_types"]=sorted(v["product_types"])17print("pages:",page,"vendors:",len(vendors))18with open("data/raw/signelocal_vendors.json","w") as f:19 json.dump(list(vendors.values()),f,ensure_ascii=False,indent=1)20