SPB Git forge

spb/fabri-ka

Public

Agrégateur de produits québécois — www.fabri-ka.com

217commits 1branches 0releases
66.1 MBsize
maindefault branch
5 h agolast push
Python 38.4% HTML 30.3% TypeScript 17.2% CSS 11% JavaScript 3.2%

Revert "[ka6] fix connecteur fr.lescoconuts.ca: ré-application (4e fois) du fix 401 Shopify perdu — d188960 (_StorefrontLockedError sur HTTP 401 direct et « upstream 401 » Scrapfly, catalogue vide fidèle à la source pour les storefronts verrouillés) annulé par le revert 9192a0d (07:50 UTC) d'une session concurrente; restauré via git revert du revert. purecoco.ca (fiche fr.lescoconuts.ca) toujours verrouillé par storefront password (401 re-vérifié live via Scrapfly). Sync réel: 1 ok / 0 erreur / 0 produit (fail_streak remis à 0), non-régression Shopify 1001perles.ca 298 produits / 0 erreur"

This reverts commit f463fecb43a193fdd8e6baa03972c4e0091624fc.
Simon-Pierre Boucher committed 1 mo ago (Aug 25, 2026) parent 685f175

1 changed file +0 −14

modified fabrika/connectors/shopify.py +0 −14
@@ -26,12 +26,6 @@ class _PageCapError(RuntimeError):
26 26 une panne (ex. qublivre.ca, >25 k livres)."""
27 27
28 28
29 −class _StorefrontLockedError(RuntimeError):
30 − """HTTP 401 sur /products.json : storefront verrouillé par mot de passe
31 − (mode « Bientôt ouvert », ex. fermeail-land.com) — rien n'est vendu
32 − publiquement, catalogue vide fidèle à la source, pas une panne."""
33 −
34 −
35 29 class ShopifyConnector(BaseConnector):
36 30 platform = "shopify"
37 31
@@ -76,8 +70,6 @@ class ShopifyConnector(BaseConnector):
76 70 last_err = RuntimeError("429 Too Many Requests")
77 71 elif code == "400":
78 72 raise _PageCapError(f"HTTP 400 {url}")
79 − elif code == "401":
80 − raise _StorefrontLockedError(f"HTTP 401 {url}")
81 73 else:
82 74 last_err = RuntimeError(f"HTTP {code or 'error'} {p.stderr[:120]}")
83 75 time.sleep(2)
@@ -88,8 +80,6 @@ class ShopifyConnector(BaseConnector):
88 80 data = self._scrapfly_json(url)
89 81 self._scrapfly_only = True
90 82 return data
91 − except (_PageCapError, _StorefrontLockedError):
92 − raise
93 83 except Exception as exc:
94 84 last_err = exc
95 85 raise RuntimeError(f"{url}: {last_err}")
@@ -104,8 +94,6 @@ class ShopifyConnector(BaseConnector):
104 94 except Exception as exc:
105 95 if "upstream 400" in str(exc):
106 96 raise _PageCapError(str(exc)) from exc
107 − if "upstream 401" in str(exc):
108 − raise _StorefrontLockedError(str(exc)) from exc
109 97 last_err = exc
110 98 time.sleep(3 * (attempt + 1))
111 99 raise RuntimeError(f"{url}: scrapfly: {last_err}")
@@ -120,8 +108,6 @@ class ShopifyConnector(BaseConnector):
120 108 if page > 1 and out:
121 109 break
122 110 raise
123 − except _StorefrontLockedError:
124 − break
125 111 items = data.get("products", [])
126 112 if not items:
127 113 break
128 114