get_file jest przypiety do IP i sesji ladujacej strone i bywa jednorazowy. Gdy resolver na telefonie zawiodl, proxy dostawalo ten sam zuzyty adres i oddawalo 410/503: 14 urzadzen w tydzien mialo na tych serwisach same porazki (inne serwisy graly im bez problemu). Teraz po 403/404/410 albo trwalym 503 proxy pobiera strone na nowo (try_extract) i bierze adres w tej samej jakosci. Test: adres pobrany z innego IP przez proxy 410 -> z odswiezaniem 206 video/mp4. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
19 lines
965 B
Python
19 lines
965 B
Python
"""fullmovies.xxx, `<source>/get_file` tube z IP-bound fpvcdn. Patrz _source_getfile.py.
|
|
|
|
Ta sama platforma co hdporn.gg (`/get_file/8512/`). 2026-06-04 (DevTools + cross-IP):
|
|
stary extractor zakładał „get_file IP-bound → 403 → force_proxy". Faktycznie get_file
|
|
binduje fpvcdn do IP **fetchera** (mobile), więc oddajemy get_file NIEZRESOLWOWANY
|
|
(mobile_direct, ZERO proxy), telefon follow-uje 302 → fpvcdn z IP telefonu, gra. Pomijamy
|
|
4K/2160p (konsekwentnie time-outuje na fpvcdn ~30s; reszta gra ~1s). Bug 19866e9e: scena z
|
|
TYLKO fullmovies+hdporngg nie grała (extractor nie był zarejestrowany).
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
from app.extractors._models import StreamSource
|
|
from app.extractors.tubes import _source_getfile
|
|
|
|
_BASE = "https://www.fullmovies.xxx"
|
|
|
|
|
|
def extract(page_url: str, *, timeout: float = 30.0) -> list[StreamSource] | None:
|
|
return _source_getfile.resolve(page_url, _BASE, timeout=timeout, sitetag="fullmoviesxxx")
|