Browse Source

Add an extractor for spike.com (#2072)

Added a generic _real_extract to MTVServicesInfoExtractor
totalwebcasting
Jaime Marquínez Ferrándiz 11 years ago
parent
commit
8d9453b9e8
3 changed files with 33 additions and 0 deletions
  1. +1
    -0
      youtube_dl/extractor/__init__.py
  2. +13
    -0
      youtube_dl/extractor/mtv.py
  3. +19
    -0
      youtube_dl/extractor/spike.py

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

@ -171,6 +171,7 @@ from .southparkstudios import (
from .space import SpaceIE from .space import SpaceIE
from .spankwire import SpankwireIE from .spankwire import SpankwireIE
from .spiegel import SpiegelIE from .spiegel import SpiegelIE
from .spike import SpikeIE
from .stanfordoc import StanfordOpenClassroomIE from .stanfordoc import StanfordOpenClassroomIE
from .statigram import StatigramIE from .statigram import StatigramIE
from .steam import SteamIE from .steam import SteamIE


+ 13
- 0
youtube_dl/extractor/mtv.py View File

@ -7,6 +7,8 @@ from ..utils import (
compat_urllib_parse, compat_urllib_parse,
ExtractorError, ExtractorError,
fix_xml_ampersands, fix_xml_ampersands,
url_basename,
RegexNotFoundError,
) )
def _media_xml_tag(tag): def _media_xml_tag(tag):
@ -89,6 +91,17 @@ class MTVServicesInfoExtractor(InfoExtractor):
'Downloading info', transform_source=fix_xml_ampersands) 'Downloading info', transform_source=fix_xml_ampersands)
return [self._get_video_info(item) for item in idoc.findall('.//item')] return [self._get_video_info(item) for item in idoc.findall('.//item')]
def _real_extract(self, url):
title = url_basename(url)
webpage = self._download_webpage(url, title)
try:
# the url is in the format http://media.mtvnservices.com/fb/{mgid}.swf
fb_url = self._og_search_video_url(webpage)
mgid = url_basename(fb_url).rpartition('.')[0]
except RegexNotFoundError:
mgid = self._search_regex(r'data-mgid="(.*?)"', webpage, u'mgid')
return self._get_videos_info(mgid)
class MTVIE(MTVServicesInfoExtractor): class MTVIE(MTVServicesInfoExtractor):
_VALID_URL = r'''(?x)^https?:// _VALID_URL = r'''(?x)^https?://


+ 19
- 0
youtube_dl/extractor/spike.py View File

@ -0,0 +1,19 @@
from __future__ import unicode_literals
from .mtv import MTVServicesInfoExtractor
class SpikeIE(MTVServicesInfoExtractor):
_VALID_URL = r'https?://www\.spike\.com/(video-clips|episodes)/.+'
_TEST = {
'url': 'http://www.spike.com/video-clips/lhtu8m/auction-hunters-can-allen-ride-a-hundred-year-old-motorcycle',
'md5': '1a9265f32b0c375793d6c4ce45255256',
'info_dict': {
'id': 'b9c8221a-4e50-479a-b86d-3333323e38ba',
'ext': 'mp4',
'title': 'Can Allen Ride A Hundred Year-Old Motorcycle?',
'description': 'md5:fbed7e82ed5fad493615b3094a9499cb',
},
}
_FEED_URL = 'http://www.spike.com/feeds/mrss/'

Loading…
Cancel
Save