extractors: register fullmoviesxxx + hdporngg (WebView fallback)

Bug 19866e9e ("problem z oboma hosterami"): a scene whose only two sources were
fullmovies.xxx and hdporn.gg wouldn't play at all — neither had an entry in the
extractor registry, so try_extract returned None ("no stream"). fullmovies.xxx
serves a <source ...get_file...mp4> but the get_file CDN times out from the VPS
(unreachable, like freshporno), so backend resolve isn't viable; hdporn.gg sample
pages 404. Route both through the WebView fallback so the phone (residential IP)
loads the page and plays / the injected-JS scrape can grab the URL — strictly
better than no playback path. Surfaced by the hoster sweep + this bug report.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
jtrzupek 2026-06-03 22:16:05 +02:00
parent 4f0fb1636c
commit c18ed24330

View file

@ -153,6 +153,15 @@ _REGISTRY: dict[str, Callable[[str], list[StreamSource] | None]] = {
# /watch/<id> z phone IP, player JS dekoduje video.src, INJECTED_JS scrape.
# 0 VPS bandwidth — zgodne z pre-public bandwidth/anonimowość priorytet.
"porndoecom": _vps_blocked_fallback.extract,
# fullmovies.xxx + hdporn.gg — BRAKOWAŁO extractora (try_extract→None→"no stream";
# bug 19866e9e "problem z oboma hosterami" — scena mająca TYLKO te dwa źródła nie
# grała w ogóle). fullmovies ma `<source src=...get_file...mp4>`, ale get_file
# time-outuje z VPS (CDN nieosiągalny, jak freshporno) → backend-resolve odpada.
# hdporn.gg sample-scena 404 (część contentu usunięta). Oba → WebView fallback:
# telefon (residential IP) ładuje stronę, player JS/`<source>` gra, INJECTED_JS
# scrape łapie URL. Lepsze niż brak ścieżki playbacku. (2026-06-03)
"fullmoviesxxx": _vps_blocked_fallback.extract,
"hdporngg": _vps_blocked_fallback.extract,
}