X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fwebcaster.py;h=7486cb347d8523a932c2bddd56f26c9a95f78641;hb=83f1481baae72ca17364a12bec6ebcbe30234a3f;hp=d366511a20818d5640a6125195f06f4ca3b30120;hpb=f25e1c8d8c145ea4044b56786256cd71f861cf62;p=youtube-dl diff --git a/youtube_dl/extractor/webcaster.py b/youtube_dl/extractor/webcaster.py index d366511a2..7486cb347 100644 --- a/youtube_dl/extractor/webcaster.py +++ b/youtube_dl/extractor/webcaster.py @@ -74,6 +74,23 @@ class WebcasterFeedIE(InfoExtractor): 'only_matching': True, } + @staticmethod + def _extract_url(ie, webpage): + mobj = re.search( + r'<(?:object|a[^>]+class=["\']webcaster-player["\'])[^>]+data(?:-config)?=(["\']).*?config=(?Phttps?://bl\.webcaster\.pro/feed/start/free_.*?)(?:[?&]|\1)', + webpage) + if mobj: + return mobj.group('url') + for secure in (True, False): + video_url = ie._og_search_video_url( + webpage, secure=secure, default=None) + if video_url: + mobj = re.search( + r'config=(?Phttps?://bl\.webcaster\.pro/feed/start/free_[^?&=]+)', + video_url) + if mobj: + return mobj.group('url') + def _real_extract(self, url): video_id = self._match_id(url)