fix(pornbusy): probuj generycznego hostera zamiast od razu poddawac

Zgloszenie 3b03a744 ("Pornbusy pisze ze temporary problem with the host"). Wbrew
mojej pierwszej diagnozie to NIE byla awaria rodziny seekplayera: pornbusy w ogole
juz jej nie uzywa. Probka 10 najswiezszych scen (2026-08-21): morencius.com 4,
cdn.loadvid.com 4, playmate.to 1, upload18 1.

Morencius to zwykly JWPlayer z P.A.C.K.E.R.-em i HLS-em, bez Turnstile, wiec radzi
sobie z nim nasz generyczny rozpakowywacz BEZ zadnych zmian (oddaje gotowy
master.m3u8). Zamiast wiec zwracac None dla kazdego nieznanego hostera, najpierw
podajemy embed generycznemu: najgorszy przypadek to None, czyli stan sprzed zmiany.

Bylo 0/5, jest 3/5. Zostaja playmate.to (rozpakowywacz go nie zna) oraz upload18,
ktory pomijamy swiadomie, bo ma token zwiazany z IP.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
goon-foss 2026-08-21 11:51:04 +02:00
parent ae5f2aa7ac
commit 83a6092d89

View file

@ -22,6 +22,7 @@ from urllib.parse import urlparse
from app.extractors._fetch import fetch_tube_html
from app.extractors._models import StreamSource
from app.extractors.hoster import extract_stream_from_hoster
from app.extractors.hosters import loadvid, seekplayer_engine
log = logging.getLogger(__name__)
@ -78,5 +79,20 @@ def extract(page_url: str, *, timeout: float = 60.0) -> list[StreamSource] | Non
)
]
# Serwis dosypuje nowych hosterow: probka 10 najswiezszych scen (2026-08-21) dala
# morencius.com 4, cdn.loadvid.com 4, playmate.to 1, upload18 1. Morencius to zwykly
# JWPlayer z P.A.C.K.E.R.-em i HLS-em, bez Turnstile, wiec radzi sobie z nim nasz
# generyczny rozpakowywacz bez zadnych zmian (sprawdzone: oddaje gotowy master.m3u8).
# Probujemy go dla KAZDEGO nieznanego hostera zamiast od razu poddawac: gorszy
# przypadek to None, czyli dokladnie to, co bylo wczesniej.
try:
link = extract_stream_from_hoster(embed, referer=page_url)
except Exception as e:
log.info("pornbusy: generyczny hoster padl dla %s: %s", host, e)
link = None
if link:
log.info("pornbusy: %s rozwiazany generycznym hosterem", host)
return [StreamSource(link=link, type="m3u8" if ".m3u8" in link else "mp4")]
log.info("pornbusy: unsupported hoster %s (%s)", host, page_url)
return None