mirror of
https://github.com/l1ving/youtube-dl
synced 2024-12-22 13:22:51 +08:00
[matchtv] Modernize
This commit is contained in:
parent
6d28c408cf
commit
80ae228b34
@ -4,16 +4,12 @@ from __future__ import unicode_literals
|
|||||||
import random
|
import random
|
||||||
|
|
||||||
from .common import InfoExtractor
|
from .common import InfoExtractor
|
||||||
from ..compat import compat_urllib_parse_urlencode
|
from ..utils import xpath_text
|
||||||
from ..utils import (
|
|
||||||
sanitized_Request,
|
|
||||||
xpath_text,
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class MatchTVIE(InfoExtractor):
|
class MatchTVIE(InfoExtractor):
|
||||||
_VALID_URL = r'https?://matchtv\.ru/?#live-player'
|
_VALID_URL = r'https?://matchtv\.ru(?:/on-air|/?#live-player)'
|
||||||
_TEST = {
|
_TESTS = [{
|
||||||
'url': 'http://matchtv.ru/#live-player',
|
'url': 'http://matchtv.ru/#live-player',
|
||||||
'info_dict': {
|
'info_dict': {
|
||||||
'id': 'matchtv-live',
|
'id': 'matchtv-live',
|
||||||
@ -24,12 +20,16 @@ class MatchTVIE(InfoExtractor):
|
|||||||
'params': {
|
'params': {
|
||||||
'skip_download': True,
|
'skip_download': True,
|
||||||
},
|
},
|
||||||
}
|
}, {
|
||||||
|
'url': 'http://matchtv.ru/on-air/',
|
||||||
|
'only_matching': True,
|
||||||
|
}]
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
video_id = 'matchtv-live'
|
video_id = 'matchtv-live'
|
||||||
request = sanitized_Request(
|
video_url = self._download_json(
|
||||||
'http://player.matchtv.ntvplus.tv/player/smil?%s' % compat_urllib_parse_urlencode({
|
'http://player.matchtv.ntvplus.tv/player/smil', video_id,
|
||||||
|
query={
|
||||||
'ts': '',
|
'ts': '',
|
||||||
'quality': 'SD',
|
'quality': 'SD',
|
||||||
'contentId': '561d2c0df7159b37178b4567',
|
'contentId': '561d2c0df7159b37178b4567',
|
||||||
@ -40,11 +40,10 @@ class MatchTVIE(InfoExtractor):
|
|||||||
'contentType': 'channel',
|
'contentType': 'channel',
|
||||||
'timeShift': '0',
|
'timeShift': '0',
|
||||||
'platform': 'portal',
|
'platform': 'portal',
|
||||||
}),
|
},
|
||||||
headers={
|
headers={
|
||||||
'Referer': 'http://player.matchtv.ntvplus.tv/embed-player/NTVEmbedPlayer.swf',
|
'Referer': 'http://player.matchtv.ntvplus.tv/embed-player/NTVEmbedPlayer.swf',
|
||||||
})
|
})['data']['videoUrl']
|
||||||
video_url = self._download_json(request, video_id)['data']['videoUrl']
|
|
||||||
f4m_url = xpath_text(self._download_xml(video_url, video_id), './to')
|
f4m_url = xpath_text(self._download_xml(video_url, video_id), './to')
|
||||||
formats = self._extract_f4m_formats(f4m_url, video_id)
|
formats = self._extract_f4m_formats(f4m_url, video_id)
|
||||||
self._sort_formats(formats)
|
self._sort_formats(formats)
|
||||||
|
Loading…
Reference in New Issue
Block a user