1 from .common
import InfoExtractor
8 class FczenitIE(InfoExtractor
):
9 _VALID_URL
= r
'https?://(?:www\.)?fc-zenit\.ru/video/(?P<id>[0-9]+)'
11 'url': 'http://fc-zenit.ru/video/41044/',
12 'md5': '0e3fab421b455e970fa1aa3891e57df0',
16 'title': 'Так пишется история: казанский разгром ЦСКА на «Зенит-ТВ»',
17 'timestamp': 1462283735,
18 'upload_date': '20160503',
22 def _real_extract(self
, url
):
23 video_id
= self
._match
_id
(url
)
24 webpage
= self
._download
_webpage
(url
, video_id
)
26 msi_id
= self
._search
_regex
(
27 r
"(?s)config\s*=\s*{.+?video_id\s*:\s*'([^']+)'", webpage
, 'msi id')
29 msi_data
= self
._download
_json
(
30 'http://player.fc-zenit.ru/msi/video', msi_id
, query
={
33 title
= msi_data
['name']
36 'format_id': q
.get('label'),
38 'height': int_or_none(q
.get('label')),
39 } for q
in msi_data
['qualities'] if q
.get('url')]
41 tags
= [tag
['label'] for tag
in msi_data
.get('tags', []) if tag
.get('label')]
46 'thumbnail': msi_data
.get('preview'),
48 'duration': float_or_none(msi_data
.get('duration')),
49 'timestamp': int_or_none(msi_data
.get('date')),