goon/scripts/probe_all_extract.py
goon-foss ad0284585b Initial commit
Goon — self-hosted aggregator for adult-content scene metadata.

Indexes scenes from TPDB, StashDB, and 30+ public adult tube sites.
Cross-source deduplication via perceptual hash + Levenshtein distance.
FastAPI backend + APScheduler worker + React Native (Expo) mobile client.

FOSS, ad-free, donation-funded. See README for details.
2026-05-20 10:10:22 +02:00

46 lines
2.8 KiB
Python

"""Audit type+raw returned by każdy active extractor."""
from app.extractors import try_extract
TESTS = [
# Critical
("pornhatcom", "https://www.pornhat.com/video/rocking-logan-and-riley-s-pornohub-action/"),
("porn00org", "https://www.porn00.org/video/gia-derza-intense-rectal-gaping/"),
("pornxpph", "https://pornxp.ph/videos/73009503575"),
# Aggregators with m3u8 risk
("latestpornvideocom", "https://latestpornvideo.com/777904/"),
("mypornerleakcom", "https://mypornerleak.com/mila-koi-gets-fucked-hard-by-brickzilla-bbc/"),
("perverzijacom", "https://tube.perverzija.com/bangbrosclips-peta-jensen-peta-jensen-daily-dick-fix/"),
("porndishcom", "https://www.porndish.com/porn/private-sata-jones-britney-dutch-milf-sata-jones-with-britney-dutch-in-an-anal-threesome/"),
# VPS-blocked (WebView)
("xhamstercom", "https://xhamster.com/videos/brunette-mom-diana-prince-fucks-the-biggest-cock-shes-ever-seen-xhKGZTw"),
("porndittcom", "https://v.pornditt.com/videos/162604/allgirlmassage-charlotte-sins-addison-vodka-and-scarlett-bloom-wrb"),
("sxylandcom", "https://sxyland.com/22140/momswap-annie-king-and-kell-fire-one-pussy-forever-nah-lets-make-a-deal-wedding-day-swap/"),
("fpoxxx", "https://www.fpo.xxx/video/1168558/bang-for-a-buck-rocky-emerson/"),
# Direct mp4 expected (safe)
("hqpornercom", "https://hqporner.com/hdporn/114981-if_no_one_else_is_coming---.html"),
("freshpornoorg", "https://freshporno.org/videos/a-caring-step-sister/"),
("epornercom", "https://www.eporner.com/video-HPQBR5TeKjv/annie-reiss-5k/"),
("sxyprncom", "https://sxyprn.com/post/68adbb3b6bf1b.html"),
# yt-dlp mainstream
("pornhubcom", "https://pornhub.com/view_video.php?viewkey=68597f719a5db"),
("xvideoscom", "https://www.xvideos.com/video.ulklkike487/i_helped_my_stepbro_to_cum_with_my_hands_boobs_and_mouth_-_julia_goddess"),
("xnxxcom", "https://www.xnxx.com/video-5pc3of3/kimberly_kendall_and_jon_jon"),
("youporncom", "https://www.youporn.com/watch/17136141/matchmaker-bangs-milf-teen-she-matched"),
("redtubecom", "https://redtube.com/43048211"),
("porntrexcom", "https://www.porntrex.com/video/1626524/sidra-sage-viral-video"),
]
for sitetag, url in TESTS:
print(f"=== {sitetag} ===")
try:
ss = try_extract(sitetag, url)
types = [s.type for s in (ss or [])]
flags = [s.raw for s in (ss or [])]
# First link domain for diagnosis
first = (ss or [None])[0]
domain = ""
if first and first.link:
from urllib.parse import urlparse
domain = urlparse(first.link).hostname or ""
print(f" count={len(ss or [])} types={types[:5]} first_domain={domain} flags={flags[:2]}")
except Exception as e:
print(f" ERROR: {e}")