All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 43s
Market app now follows the events app pattern — URLs include the post slug prefix (e.g. /market/suma-market/). Hydrate loads both post and market, verifying market belongs to post. Scraper default URLs updated accordingly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
27 lines
688 B
Python
27 lines
688 B
Python
# replace your existing upsert_product with this version
|
|
|
|
import os
|
|
import httpx
|
|
|
|
from typing import List
|
|
|
|
async def capture_listing(
|
|
url: str,
|
|
items: List[str],
|
|
total_pages: int
|
|
):
|
|
|
|
sync_url = os.getenv("CAPTURE_LISTING_URL", "http://localhost:8001/market/suma-market/api/products/listing/")
|
|
|
|
async with httpx.AsyncClient(timeout=httpx.Timeout(20.0, connect=10.0)) as client:
|
|
_d = {
|
|
"url": url,
|
|
"items": items,
|
|
"total_pages": total_pages
|
|
}
|
|
resp = await client.post(sync_url, json=_d)
|
|
# Raise for non-2xx
|
|
resp.raise_for_status()
|
|
data = resp.json() if resp.content else {}
|
|
return data
|
|
|