mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-12-15 15:52:38 +00:00
[cbsinteractive] fix extractor
This commit is contained in:
parent
e8bfe2a946
commit
d68afc5bc9
1 changed files with 19 additions and 1 deletions
|
@ -4,6 +4,7 @@ from __future__ import unicode_literals
|
|||
import re
|
||||
|
||||
from .theplatform import ThePlatformIE
|
||||
from ..compat import compat_urllib_parse
|
||||
from ..utils import int_or_none
|
||||
|
||||
|
||||
|
@ -80,7 +81,7 @@ class CBSInteractiveIE(ThePlatformIE):
|
|||
|
||||
media_guid_path = 'media/guid/%d/%s' % (self.MPX_ACCOUNTS[site], vdata['mpxRefId'])
|
||||
formats, subtitles = [], {}
|
||||
for (fkey, vid) in vdata['files'].items():
|
||||
for (fkey, vid) in vdata.get('files', {}).items():
|
||||
if fkey == 'hls_phone' and 'hls_tablet' in vdata['files']:
|
||||
continue
|
||||
release_url = self.TP_RELEASE_URL_TEMPLATE % vid
|
||||
|
@ -89,6 +90,23 @@ class CBSInteractiveIE(ThePlatformIE):
|
|||
tp_formats, tp_subtitles = self._extract_theplatform_smil(release_url, video_id, 'Downloading %s SMIL data' % fkey)
|
||||
formats.extend(tp_formats)
|
||||
subtitles = self._merge_subtitles(subtitles, tp_subtitles)
|
||||
|
||||
if 'm3u8' in vdata:
|
||||
parsed_url = compat_urllib_parse.urlparse(url)
|
||||
m3u8_url = ('%s://%s%s'
|
||||
% (parsed_url.scheme, parsed_url.netloc, vdata['m3u8']))
|
||||
m3u8_formats = self._extract_m3u8_formats(m3u8_url, video_id)
|
||||
for format in m3u8_formats:
|
||||
format['url'] = format['url'].replace('https://', 'http://')
|
||||
formats.extend(m3u8_formats)
|
||||
|
||||
if 'mp4' in vdata:
|
||||
formats.append({
|
||||
'url': vdata['mp4'],
|
||||
'format_id': 'mp4',
|
||||
'ext': 'mp4',
|
||||
})
|
||||
|
||||
self._sort_formats(formats)
|
||||
|
||||
info = self._extract_theplatform_metadata('kYEXFC/%s' % media_guid_path, video_id)
|
||||
|
|
Loading…
Reference in a new issue