goon/app/connectors
jtrzupek 1ca503b7be feat(ingest): add xnxx browse scraper (JSON-LD only, alongside search)
Browse over /best/<YYYY-MM>/<page> (SSR; xnxx has no clean /new/ and its homepage is
JS-rendered) for a latest-feed freshness signal next to the performer-driven search
scraper. JSON-LD VideoObject only — xnxx detail (unlike its xvideos twin) doesn't
expose /models/ or /tags/ in SSR, so performers/tags come via canonical merge + the
search scraper. Title is html.unescaped (JSON-LD ships &comma;/&excl; entities).

xhamster and sxyprn intentionally left search-only: xhamster Cloudflare-blocks the
VPS on listing pages (1KB challenge), sxyprn has no clean SSR listing (IP-bound) —
a flaky browse scraper would be worse than the working search + 168h watchdog.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 15:52:32 +02:00
..
direct_scrapers feat(ingest): add xnxx browse scraper (JSON-LD only, alongside search) 2026-06-24 15:52:32 +02:00
__init__.py fix(scheduler): per-connector hard timeout + reorder mangoporn-first 2026-05-31 11:19:13 +02:00
base.py Initial commit 2026-05-20 10:10:22 +02:00
dooplay.py fix(connectors/dooplay): max_pages cap to unblock movie ingest queue 2026-05-28 23:23:50 +02:00
paradisehill.py fix(movies): paradisehill delta date-granularity + browse cadence docs 2026-06-01 17:00:10 +02:00
stashdb.py Initial commit 2026-05-20 10:10:22 +02:00
tpdb.py Initial commit 2026-05-20 10:10:22 +02:00