diff --git a/app/extractors/tubes/pornbusy.py b/app/extractors/tubes/pornbusy.py index cbdc7c2..4267eb7 100644 --- a/app/extractors/tubes/pornbusy.py +++ b/app/extractors/tubes/pornbusy.py @@ -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