youtube-dl/youtube_dl/extractor/videopremium.py

47 lines
1.5 KiB
Python
Raw Normal View History

2014-11-26 12:03:22 +00:00
from __future__ import unicode_literals
2013-10-14 06:32:47 +01:00
import re
import random
from .common import InfoExtractor
class VideoPremiumIE(InfoExtractor):
2014-11-26 12:03:22 +00:00
_VALID_URL = r'https?://(?:www\.)?videopremium\.(?:tv|me)/(?P<id>\w+)(?:/.*)?'
2013-10-14 06:32:47 +01:00
_TEST = {
2014-11-26 12:03:22 +00:00
'url': 'http://videopremium.tv/4w7oadjsf156',
'info_dict': {
'id': '4w7oadjsf156',
'ext': 'f4v',
'title': 'youtube-dl_test_video____a_________-BaW_jenozKc.mp4.mp4'
2013-10-14 06:32:47 +01:00
},
2014-11-26 12:03:22 +00:00
'params': {
'skip_download': True,
2013-10-14 06:32:47 +01:00
},
2014-11-26 12:03:22 +00:00
'skip': 'Test file has been deleted.',
2013-10-14 06:32:47 +01:00
}
def _real_extract(self, url):
2014-11-26 12:03:22 +00:00
video_id = self._match_id(url)
2013-10-14 06:32:47 +01:00
webpage_url = 'http://videopremium.tv/' + video_id
webpage = self._download_webpage(webpage_url, video_id)
if re.match(r"^<html><head><script[^>]*>window.location\s*=", webpage):
# Download again, we need a cookie
webpage = self._download_webpage(
webpage_url, video_id,
2014-11-26 12:03:22 +00:00
note='Downloading webpage again (with cookie)')
2013-10-14 06:32:47 +01:00
video_title = self._html_search_regex(
2014-11-26 12:03:22 +00:00
r'<h2(?:.*?)>\s*(.+?)\s*<', webpage, 'video title')
2013-10-14 06:32:47 +01:00
return {
2014-11-23 20:20:46 +00:00
'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,
2013-11-27 01:54:51 +00:00
}