Browse Source

[cnbc] Add new extractor(closes #8012)

totalwebcasting
remitamine 9 years ago
parent
commit
c02ec7d430
3 changed files with 34 additions and 4 deletions
  1. +1
    -0
      youtube_dl/extractor/__init__.py
  2. +29
    -0
      youtube_dl/extractor/cnbc.py
  3. +4
    -4
      youtube_dl/extractor/theplatform.py

+ 1
- 0
youtube_dl/extractor/__init__.py View File

@ -127,6 +127,7 @@ from .cloudy import CloudyIE
from .clubic import ClubicIE
from .clyp import ClypIE
from .cmt import CMTIE
from .cnbc import CNBCIE
from .cnet import CNETIE
from .cnn import (
CNNIE,


+ 29
- 0
youtube_dl/extractor/cnbc.py View File

@ -0,0 +1,29 @@
# coding: utf-8
from __future__ import unicode_literals
from .common import InfoExtractor
from ..utils import smuggle_url
class CNBCIE(InfoExtractor):
_VALID_URL = r'https?://video\.cnbc\.com/gallery/\?video=(?P<id>[0-9]+)'
_TEST = {
'url': 'http://video.cnbc.com/gallery/?video=3000503714',
'md5': '',
'info_dict': {
'id': '3000503714',
'ext': 'mp4',
'title': 'Video title goes here',
}
}
def _real_extract(self, url):
video_id = self._match_id(url)
return {
'_type': 'url_transparent',
'ie_key': 'ThePlatform',
'url': smuggle_url(
'http://link.theplatform.com/s/gZWlPC/media/guid/2408950221/%s?mbr=true&manifest=m3u' % video_id,
{'force_smil_url': True}),
'id': video_id,
}

+ 4
- 4
youtube_dl/extractor/theplatform.py View File

@ -82,7 +82,7 @@ class ThePlatformBaseIE(OnceIE):
class ThePlatformIE(ThePlatformBaseIE):
_VALID_URL = r'''(?x)
(?:https?://(?:link|player)\.theplatform\.com/[sp]/(?P<provider_id>[^/]+)/
(?:(?P<media>(?:(?:[^/]+/)+select/)?media/)|(?P<config>(?:[^/\?]+/(?:swf|config)|onsite)/select/))?
(?:(?:(?:[^/]+/)+select/)?(?P<media>media/(?:guid/\d+/)?)|(?P<config>(?:[^/\?]+/(?:swf|config)|onsite)/select/))?
|theplatform:)(?P<id>[^/\?&]+)'''
_TESTS = [{
@ -170,10 +170,10 @@ class ThePlatformIE(ThePlatformBaseIE):
if not provider_id:
provider_id = 'dJ5BDC'
path = provider_id
path = provider_id + '/'
if mobj.group('media'):
path += '/media'
path += '/' + video_id
path += mobj.group('media')
path += video_id
qs_dict = compat_parse_qs(compat_urllib_parse_urlparse(url).query)
if 'guid' in qs_dict:


Loading…
Cancel
Save