SPB Git

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%
687 B · 15 lines python
Raw Blame History
1#!/usr/bin/env python32"""Retire de la BD les boutiques absentes du registre (et leurs produits)."""3import json, sqlite3, sys4sys.path.insert(0, '.')5reg = {s["id"] for s in json.load(open("data/stores.json"))["stores"]}6con = sqlite3.connect("data/fabrika.db")7db_stores = {r[0] for r in con.execute("SELECT id FROM stores")}8orphans = db_stores - reg9for sid in orphans:10    con.execute("DELETE FROM products_fts WHERE uid IN (SELECT uid FROM products WHERE store_id=?)", (sid,))11    con.execute("DELETE FROM products WHERE store_id=?", (sid,))12    con.execute("DELETE FROM stores WHERE id=?", (sid,))13con.commit()14print(f"purged {len(orphans)} orphan stores:", sorted(orphans)[:10])15