X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=youtube_dl%2FInfoExtractors.py;h=9d885d238882c99752dc8b49fc5c2f81ce3d9f20;hb=1736dec629bd3da25bea21145794adfa7a835ea3;hp=8fcd19ca2146ec648df075d8eb7565728dc4963b;hpb=cbf46c737c3f4156dee019b70521dcd3194877ac;p=youtube-dl.git diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py index 8fcd19ca2..9d885d238 100755 --- a/youtube_dl/InfoExtractors.py +++ b/youtube_dl/InfoExtractors.py @@ -31,11 +31,15 @@ from .extractor.gametrailers import GametrailersIE from .extractor.generic import GenericIE from .extractor.googleplus import GooglePlusIE from .extractor.googlesearch import GoogleSearchIE +from .extractor.infoq import InfoQIE from .extractor.metacafe import MetacafeIE +from .extractor.mtv import MTVIE from .extractor.myvideo import MyVideoIE +from .extractor.nba import NBAIE from .extractor.statigram import StatigramIE from .extractor.photobucket import PhotobucketIE from .extractor.soundcloud import SoundcloudIE, SoundcloudSetIE +from .extractor.stanfordoc import StanfordOpenClassroomIE from .extractor.vimeo import VimeoIE from .extractor.xvideos import XVideosIE from .extractor.yahoo import YahooIE, YahooSearchIE @@ -44,49 +48,6 @@ from .extractor.zdf import ZDFIE -class InfoQIE(InfoExtractor): - """Information extractor for infoq.com""" - _VALID_URL = r'^(?:https?://)?(?:www\.)?infoq\.com/[^/]+/[^/]+$' - - def _real_extract(self, url): - mobj = re.match(self._VALID_URL, url) - if mobj is None: - raise ExtractorError(u'Invalid URL: %s' % url) - - webpage = self._download_webpage(url, video_id=url) - self.report_extraction(url) - - # Extract video URL - mobj = re.search(r"jsclassref ?= ?'([^']*)'", webpage) - if mobj is None: - raise ExtractorError(u'Unable to extract video url') - real_id = compat_urllib_parse.unquote(base64.b64decode(mobj.group(1).encode('ascii')).decode('utf-8')) - video_url = 'rtmpe://video.infoq.com/cfx/st/' + real_id - - # Extract title - video_title = self._search_regex(r'contentTitle = "(.*?)";', - webpage, u'title') - - # Extract description - video_description = self._html_search_regex(r'', - webpage, u'description', fatal=False) - - video_filename = video_url.split('/')[-1] - video_id, extension = video_filename.split('.') - - info = { - 'id': video_id, - 'url': video_url, - 'uploader': None, - 'upload_date': None, - 'title': video_title, - 'ext': extension, # Extension is always(?) mp4, but seems to be flv - 'thumbnail': None, - 'description': video_description, - } - - return [info] - class MixcloudIE(InfoExtractor): """Information extractor for www.mixcloud.com""" @@ -192,162 +153,7 @@ class MixcloudIE(InfoExtractor): 'player_url': player_url.decode('utf-8'), }] -class StanfordOpenClassroomIE(InfoExtractor): - """Information extractor for Stanford's Open ClassRoom""" - - _VALID_URL = r'^(?:https?://)?openclassroom.stanford.edu(?P/?|(/MainFolder/(?:HomePage|CoursePage|VideoPage)\.php([?]course=(?P[^&]+)(&video=(?P