X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fmit.py;h=3c61a850f296c32861cdfd35095746c2cf1ef4ad;hb=5f0d813d9395848e92a1c6d83335360652d654c1;hp=f50e36cb4fcc82a45d3a5f379beadb2764e2faf9;hpb=13ef5648c4498a58c1994719742ad1dd7e5c1b3d;p=youtube-dl diff --git a/youtube_dl/extractor/mit.py b/youtube_dl/extractor/mit.py index f50e36cb4..3c61a850f 100644 --- a/youtube_dl/extractor/mit.py +++ b/youtube_dl/extractor/mit.py @@ -4,16 +4,20 @@ import re import json from .common import InfoExtractor -from ..utils import ( +from .youtube import YoutubeIE +from ..compat import ( compat_urlparse, +) +from ..utils import ( clean_html, + ExtractorError, get_element_by_id, ) class TechTVMITIE(InfoExtractor): IE_NAME = 'techtv.mit.edu' - _VALID_URL = r'https?://techtv\.mit\.edu/(videos|embeds)/(?P\d+)' + _VALID_URL = r'https?://techtv\.mit\.edu/(?:videos|embeds)/(?P\d+)' _TEST = { 'url': 'http://techtv.mit.edu/videos/25418-mit-dna-learning-center-set', @@ -27,8 +31,7 @@ class TechTVMITIE(InfoExtractor): } def _real_extract(self, url): - mobj = re.match(self._VALID_URL, url) - video_id = mobj.group('id') + video_id = self._match_id(url) raw_page = self._download_webpage( 'http://techtv.mit.edu/videos/%s' % video_id, video_id) clean_page = re.compile(r'', re.S).sub('', raw_page) @@ -71,7 +74,6 @@ class MITIE(TechTVMITIE): _TEST = { 'url': 'http://video.mit.edu/watch/the-government-is-profiling-you-13222/', - 'file': '.mp4', 'md5': '7db01d5ccc1895fc5010e9c9e13648da', 'info_dict': { 'id': '21783', @@ -88,3 +90,76 @@ class MITIE(TechTVMITIE): embed_url = self._search_regex( r'