X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fbeeg.py;h=e6c928699c1e2f66de4af8a0fa623f149918c378;hb=33a513faf716e5d4a170da50d6fde541817dca09;hp=775f6be6b82e9aaf351a5b9b5cc1ce9e1540543d;hpb=2aebbccefceec3eb2cad147204123cb28b9d81d1;p=youtube-dl diff --git a/youtube_dl/extractor/beeg.py b/youtube_dl/extractor/beeg.py index 775f6be6b..e6c928699 100644 --- a/youtube_dl/extractor/beeg.py +++ b/youtube_dl/extractor/beeg.py @@ -1,48 +1,67 @@ from __future__ import unicode_literals -import re - from .common import InfoExtractor +from ..utils import ( + int_or_none, + parse_iso8601, +) class BeegIE(InfoExtractor): _VALID_URL = r'https?://(?:www\.)?beeg\.com/(?P\d+)' _TEST = { 'url': 'http://beeg.com/5416503', - 'md5': '634526ae978711f6b748fe0dd6c11f57', + 'md5': '46c384def73b33dbc581262e5ee67cef', 'info_dict': { 'id': '5416503', 'ext': 'mp4', 'title': 'Sultry Striptease', - 'description': 'md5:6db3c6177972822aaba18652ff59c773', + 'description': 'md5:d22219c09da287c14bed3d6c37ce4bc2', + 'timestamp': 1391813355, + 'upload_date': '20140207', + 'duration': 383, + 'tags': list, + 'age_limit': 18, } } def _real_extract(self, url): - mobj = re.match(self._VALID_URL, url) - video_id = mobj.group('id') + video_id = self._match_id(url) + + video = self._download_json( + 'http://beeg.com/api/v1/video/%s' % video_id, video_id) - webpage = self._download_webpage(url, video_id) + formats = [] + for format_id, video_url in video.items(): + height = self._search_regex( + r'^(\d+)[pP]$', format_id, 'height', default=None) + if not height: + continue + formats.append({ + 'url': self._proto_relative_url(video_url.replace('{DATA_MARKERS}', ''), 'http:'), + 'format_id': format_id, + 'height': int(height), + }) + self._sort_formats(formats) - video_url = self._html_search_regex(r"'480p'\s*:\s*'([^']+)'", webpage, 'video URL') + title = video['title'] + video_id = video.get('id') or video_id + display_id = video.get('code') + description = video.get('desc') - title = self._html_search_regex(r'([^<]+)\s*-\s*beeg\.?', webpage, 'title') - - description = self._html_search_regex( - r'