goon/app/extractors/tubes
jtrzupek 6e3ad870a7 fix(freshporno): backend KVS resolve (portable CDN) — corrects #20
Re-investigated with the proper method (Chrome DevTools network capture + cross-IP
test via Bright Data residential proxy + curl_cffi browser-TLS) instead of guessing.
freshporno's real flow is get_file -> 302 -> cdn4.freshporno.org/remote_control.php
-> 206 video/mp4. The CDN URL is PORTABLE cross-IP (a token generated from one
residential IP replays fine from the VPS and from a different Bright Data residential
IP), it only rejects non-browser TLS fingerprints (plain curl -> 000, curl_cffi
chrome / ExoPlayer -> 206).

In #20 I tested the final URL with a standalone plain curl, got 000, and wrongly
concluded "unreachable from residential" -> kept it on the WebView fallback, which
barely worked (ad-heavy page, flaky). That false negative is the regression the user
reported. freshporno is function/0 KVS, so _kvs.resolve_kvs (which uses curl_cffi
chrome) already decodes + resolves it to a portable mp4 — switch to backend resolve
like yespornvip/pornditt: native, multi-quality, no proxy, no WebView.

Verified: backend resolve returns 3x mp4 (1080/720/480, mobile_direct) + cdn 206;
user confirmed native playback on device.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 21:12:17 +02:00
..
__init__.py Initial commit 2026-05-20 10:10:22 +02:00
_embed_iframe.py filemoon: resurrect via mobile-side resolver (Byse SPA RE) 2026-05-22 13:18:26 +02:00
_kvs.py fix(kvs): cap get_file timeout + early-break on dead scenes 2026-06-02 21:33:05 +02:00
_kvs_source.py Initial commit 2026-05-20 10:10:22 +02:00
_vps_blocked_fallback.py Initial commit 2026-05-20 10:10:22 +02:00
_ytdlp.py Initial commit 2026-05-20 10:10:22 +02:00
eporner.py Initial commit 2026-05-20 10:10:22 +02:00
freshporno.py fix(freshporno): backend KVS resolve (portable CDN) — corrects #20 2026-06-05 21:12:17 +02:00
fullmovies.py Initial commit 2026-05-20 10:10:22 +02:00
hqporner.py fix(extractor/hqporner): wire dedicated extractor + reject ad iframes/CDNs 2026-05-27 15:10:47 +02:00
latestpornvideo.py Initial commit 2026-05-20 10:10:22 +02:00
paradisehill.py Initial commit 2026-05-20 10:10:22 +02:00
porn00.py Initial commit 2026-05-20 10:10:22 +02:00
pornditt.py fix(pornditt): server-side KVS resolve; extract shared _kvs helper 2026-06-01 10:36:33 +02:00
pornhat.py Initial commit 2026-05-20 10:10:22 +02:00
porntrex.py fix(porntrex): resolve get_file 302 backend-side, return portable CDN url 2026-05-31 21:47:26 +02:00
pornxp.py Initial commit 2026-05-20 10:10:22 +02:00
sxyprn.py Initial commit 2026-05-20 10:10:22 +02:00
yespornvip.py fix(pornditt): server-side KVS resolve; extract shared _kvs helper 2026-06-01 10:36:33 +02:00