X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fvideopremium.py;h=cf690d7b0a669b67b84d2aedae992079040e7a64;hb=a61ce71468cb222338ccd8039dc631f3619dc585;hp=65f39b98259bc0050b512073b2f26e5bd0e49605;hpb=f219743e33a9a640bfc3845d74282774e51e1ad4;p=youtube-dl diff --git a/youtube_dl/extractor/videopremium.py b/youtube_dl/extractor/videopremium.py index 65f39b982..cf690d7b0 100644 --- a/youtube_dl/extractor/videopremium.py +++ b/youtube_dl/extractor/videopremium.py @@ -1,3 +1,5 @@ +from __future__ import unicode_literals + import re import random @@ -5,36 +7,40 @@ from .common import InfoExtractor class VideoPremiumIE(InfoExtractor): - _VALID_URL = r'(?:https?://)?(?:www\.)?videopremium\.tv/(?P\w+)(?:/.*)?' + _VALID_URL = r'https?://(?:www\.)?videopremium\.(?:tv|me)/(?P\w+)(?:/.*)?' _TEST = { - u'url': u'http://videopremium.tv/4w7oadjsf156', - u'file': u'4w7oadjsf156.f4v', - u'info_dict': { - u"title": u"youtube-dl_test_video____a_________-BaW_jenozKc.mp4.mp4" + 'url': 'http://videopremium.tv/4w7oadjsf156', + 'info_dict': { + 'id': '4w7oadjsf156', + 'ext': 'f4v', + 'title': 'youtube-dl_test_video____a_________-BaW_jenozKc.mp4.mp4' }, - u'params': { - u'skip_download': True, + 'params': { + 'skip_download': True, }, + 'skip': 'Test file has been deleted.', } def _real_extract(self, url): - mobj = re.match(self._VALID_URL, url) - - video_id = mobj.group('id') + video_id = self._match_id(url) webpage_url = 'http://videopremium.tv/' + video_id webpage = self._download_webpage(webpage_url, video_id) - self.report_extraction(video_id) - - video_title = self._html_search_regex(r'\s*(.+?)\s*<', - webpage, u'video title') - - return [{ - 'id': video_id, - 'url': "rtmp://e%d.md.iplay.md/play" % random.randint(1, 16), - 'play_path': "mp4:%s.f4v" % video_id, - 'page_url': "http://videopremium.tv/" + video_id, - 'player_url': "http://videopremium.tv/uplayer/uppod.swf", - 'ext': 'f4v', - 'title': video_title, - }] + if re.match(r'^]*>window\.location\s*=', webpage): + # Download again, we need a cookie + webpage = self._download_webpage( + webpage_url, video_id, + note='Downloading webpage again (with cookie)') + + video_title = self._html_search_regex( + r'\s*(.+?)\s*<', webpage, 'video title') + + return { + 'id': video_id, + 'url': 'rtmp://e%d.md.iplay.md/play' % random.randint(1, 16), + 'play_path': 'mp4:%s.f4v' % video_id, + 'page_url': 'http://videopremium.tv/' + video_id, + 'player_url': 'http://videopremium.tv/uplayer/uppod.swf', + 'ext': 'f4v', + 'title': video_title, + }