1
0
mirror of https://github.com/l1ving/youtube-dl synced 2025-02-03 06:42:52 +08:00

[cbnc] Add support for new URL schema (closes #14193)

This commit is contained in:
gfabiano 2018-07-30 18:15:20 +02:00 committed by Ni Ndogo
parent 1b7763aa9d
commit fe118e27f3
2 changed files with 44 additions and 2 deletions

View File

@ -1,8 +1,12 @@
# coding: utf-8 # coding: utf-8
from __future__ import unicode_literals from __future__ import unicode_literals
from .common import InfoExtractor from .common import InfoExtractor
from ..utils import smuggle_url from ..utils import (
js_to_json,
smuggle_url,
)
class CNBCIE(InfoExtractor): class CNBCIE(InfoExtractor):
@ -34,3 +38,38 @@ class CNBCIE(InfoExtractor):
{'force_smil_url': True}), {'force_smil_url': True}),
'id': video_id, 'id': video_id,
} }
class CNBCNewIE(InfoExtractor):
IE_NAME = 'CNBC:new'
_VALID_URL = r'https?://(?:www)?\.cnbc\.com/video.*/(?P<id>[^.]+)'
_TEST = {
'url': 'https://www.cnbc.com/video/2018/07/19/trump-i-dont-necessarily-agree-with-raising-rates.html',
'info_dict': {
'id': '7000031301',
'ext': 'mp4',
'title': 'Trump: I don\'t necessarily agree with raising rates',
'description': 'md5:878d8f0b4ebb5bb1dda3514b91b49de3',
'timestamp': 1531958400,
'upload_date': '20180719',
'uploader': 'NBCU-CNBC',
},
'params': {
# m3u8 download
'skip_download': True,
},
}
CNBC_URL_TEMPLATE = 'http://video.cnbc.com/gallery/?video=%s'
def _real_extract(self, url):
display_id = self._match_id(url)
webpage = self._download_webpage(url, display_id)
video_id = self._parse_json(
self._search_regex(
r'(?s).*<script[^>]*>.*?({.+?content_id.+?}).*?</script>',
webpage, display_id),
display_id, transform_source=js_to_json
)['content_id']
return self.url_result(self.CNBC_URL_TEMPLATE % video_id, 'CNBC')

View File

@ -209,7 +209,10 @@ from .cloudy import CloudyIE
from .clubic import ClubicIE from .clubic import ClubicIE
from .clyp import ClypIE from .clyp import ClypIE
from .cmt import CMTIE from .cmt import CMTIE
from .cnbc import CNBCIE from .cnbc import (
CNBCIE,
CNBCNewIE,
)
from .cnn import ( from .cnn import (
CNNIE, CNNIE,
CNNBlogsIE, CNNBlogsIE,