fix(extractor/yespornvip): switch to WebView fallback - both URL paths fail
Previous attempts to extract direct stream URL from yesporn.vip flashvars both
turned out broken (verified 2026-05-30):
- video_url ('/get_file/7/'): requires PHPSESSID cookie from embed page session;
standalone mobile fetch returns 404
- event_reporting2 ('/get_file/1/'): returns HTTP 200 but Content-Type: image/gif
(1x1 analytics tracker pixel, not video)
Switch yespornvip -> _vps_blocked_fallback.extract. Mobile loads embed in WebView
with phone IP; kt_player JS decodes URL inside browser context (cookies + session
set properly); INJECTED_JS scrapes <video>.src and posts to ExoPlayer. UX flicker
(page renders before video) is the trade-off but aligns with no-video-proxy policy
(public-app bandwidth/anonymity priority).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
177a45eee7
commit
a0481060f3
1 changed files with 12 additions and 6 deletions
|
|
@ -116,12 +116,18 @@ _REGISTRY: dict[str, Callable[[str], list[StreamSource] | None]] = {
|
||||||
# mobile dostaje proxy URL od razu, ExoPlayer gra bez WebView.
|
# mobile dostaje proxy URL od razu, ExoPlayer gra bez WebView.
|
||||||
"porn00org": porn00.extract,
|
"porn00org": porn00.extract,
|
||||||
"pornxpph": _vps_blocked_fallback.extract,
|
"pornxpph": _vps_blocked_fallback.extract,
|
||||||
# yesporn.vip — KVS engine. flashvars `video_url: 'function/0/<get_file_url>'`,
|
# yesporn.vip — KVS engine. Initial extractor probował dwóch ścieżek z
|
||||||
# function/0 to passthrough wrapper, URL po prefixie direct streamuje (480p).
|
# flashvars, oba okazały się ślepe (2026-05-30 verify):
|
||||||
# Wymagało odrębnego extractora bo origin `tube:yespornvip` był w
|
# - `video_url` (`/get_file/7/`) wymaga PHPSESSID z embed page session;
|
||||||
# playback_sources ale brak handlera w _REGISTRY → mobile no-source (bug-report
|
# mobile fetch bez cookies → 404.
|
||||||
# 2026-05-27 "Yespornvip dalej nie działa").
|
# - `event_reporting2` (`/get_file/1/`) zwraca 200 OK ale `Content-Type:
|
||||||
"yespornvip": yespornvip.extract,
|
# image/gif` — to 1px analytics tracker, NIE video.
|
||||||
|
# Switch na WebView fallback: mobile loaduje embed w WebView z phone IP,
|
||||||
|
# kt_player JS decoduje URL inside browser context (cookies + session set
|
||||||
|
# properly), INJECTED_JS scrapuje `<video>.src` po decode. UX flicker
|
||||||
|
# (page renderuje się przed video) vs bandwidth/anonimowość — public-app
|
||||||
|
# priorytet wygrywa (zob. [[feedback-no-video-proxy]]).
|
||||||
|
"yespornvip": _vps_blocked_fallback.extract,
|
||||||
# Direct-scraping tubes (mają też search scraper w connectors/direct_scrapers/)
|
# Direct-scraping tubes (mają też search scraper w connectors/direct_scrapers/)
|
||||||
# — używają identycznego embed-iframe pattern dla streamingu.
|
# — używają identycznego embed-iframe pattern dla streamingu.
|
||||||
# hdporn92com — DELISTED 2026-05-18. Scene pages to SEO shell bez player iframe,
|
# hdporn92com — DELISTED 2026-05-18. Scene pages to SEO shell bez player iframe,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue