0
0
Fork 0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-11-30 03:33:02 +00:00
yt-dlp/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 05:32:47 +00: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 05:32:47 +00: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 05:32:47 +00:00
},
2014-11-26 12:03:22 +00:00
'params': {
'skip_download': True,
2013-10-14 05:32:47 +00:00
},
2014-11-26 12:03:22 +00:00
'skip': 'Test file has been deleted.',
2013-10-14 05:32:47 +00:00
}
def _real_extract(self, url):
2014-11-26 12:03:22 +00:00
video_id = self._match_id(url)
2013-10-14 05:32:47 +00:00
webpage_url = 'http://videopremium.tv/' + video_id
webpage = self._download_webpage(webpage_url, video_id)
2016-02-14 09:37:17 +00:00
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 05:32:47 +00: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 05:32:47 +00:00
return {
2014-11-23 20:20:46 +00:00
'id': video_id,
2016-02-14 09:37:17 +00:00
'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',
2014-11-23 20:20:46 +00:00
'ext': 'f4v',
'title': video_title,
2013-11-27 01:54:51 +00:00
}