diff --git a/app/extractors/__init__.py b/app/extractors/__init__.py index 6e93a17..e2f23ad 100644 --- a/app/extractors/__init__.py +++ b/app/extractors/__init__.py @@ -28,15 +28,12 @@ from app.extractors.tubes import ( _vps_blocked_fallback, _ytdlp, eporner, - freshporno, hqporner, latestpornvideo, paradisehill, - porn00, pornditt, pornhat, porntrex, - pornxp, sxyprn, yespornvip, ) @@ -87,6 +84,9 @@ _REGISTRY: dict[str, Callable[[str], list[StreamSource] | None]] = { # server-side (decode + follow 302 → portable twa.tgprn.com CDN). Wcześniej WebView # fallback łapał VAST preroll (trafostatic) zamiast contentu. Patrz pornditt.py/_kvs.py. "porndittcom": pornditt.extract, + # fpoxxx — KVS, plain get_file + license. 2026-06-01 (task #20): get_file 302 → + # `videos3.fpo.xxx/remote_control.php?acctoken=` — zdekodowany acctoken + # zawiera WBITY IP serwera-resolvera → definitywnie IP-bound. WebView only. "fpoxxx": _vps_blocked_fallback.extract, "sxylandcom": _vps_blocked_fallback.extract, # Aggregator tubes — generic embed-iframe → hoster unpacker @@ -110,15 +110,21 @@ _REGISTRY: dict[str, Callable[[str], list[StreamSource] | None]] = { # (2026-05-28: krótko-żywy switch na freshporno.extract z force_proxy=True # cofnięty po feedbacku Jana "video proxy mnie nie interesuje, idziemy # publicznie".) + # 2026-06-01 (task #20): _kvs.resolve_kvs dekoduje function/0 OK, ale finalny + # cdn2.freshporno.org/remote_control.php?cv=... jest nieosiągalny z residential + # IP (connect 000) → backend-resolve bezużyteczny. WebView pozostaje. "freshpornoorg": _vps_blocked_fallback.extract, - # porn00 — KVS engine z v-acctoken w URL. Backend extract działa (zweryfikowane - # 2026-05-23), zwraca świeże get_file URL-e z `force_proxy=True` flag. - # `_proxify_link` rozwija je przez VPS proxy (CDN token IP-bound do VPS, mobile - # direct = 403). Bug-reports `5037b3e3`/`e8e3198b` 2026-05-22: WebView fallback - # pokazywał reklamę full-screen (porn00.org ma agresywny ad-network) — mobile - # nigdy nie dochodził do `