-import re
-
from .common import InfoExtractor
from ..utils import (
clean_html,
class TVCIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?tvc\.ru/video/iframe/id/(?P<id>\d+)'
+ _EMBED_REGEX = [r'<iframe[^>]+?src=(["\'])(?P<url>(?:http:)?//(?:www\.)?tvc\.ru/video/iframe/id/[^"]+)\1']
_TEST = {
'url': 'http://www.tvc.ru/video/iframe/id/74622/isPlay/false/id_stat/channel/?acc_video_id=/channel/brand/id/17/show/episodes/episode_id/39702',
'md5': 'bbc5ff531d1e90e856f60fc4b3afd708',
},
}
- @classmethod
- def _extract_url(cls, webpage):
- mobj = re.search(
- r'<iframe[^>]+?src=(["\'])(?P<url>(?:http:)?//(?:www\.)?tvc\.ru/video/iframe/id/[^"]+)\1', webpage)
- if mobj:
- return mobj.group('url')
-
def _real_extract(self, url):
video_id = self._match_id(url)
video = self._download_json(
- 'http://www.tvc.ru/video/json/id/%s' % video_id, video_id)
+ f'http://www.tvc.ru/video/json/id/{video_id}', video_id)
formats = []
for info in video.get('path', {}).get('quality', []):
'height': int_or_none(info.get('height')),
'tbr': int_or_none(info.get('bitrate')),
})
- self._sort_formats(formats)
return {
'id': video_id,