X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fted.py;h=dfa1176a3e4e4eef333dcb829773c189bf9916ba;hb=165e3bb67a6d737f33d0aa2024c652b363d85ebe;hp=46b66582ced7edbb1cf4752f192b9df003031fc0;hpb=6f5ac90cf314e8e1a7c5c416fb51e3a7b8483e9c;p=youtube-dl diff --git a/youtube_dl/extractor/ted.py b/youtube_dl/extractor/ted.py index 46b66582c..dfa1176a3 100644 --- a/youtube_dl/extractor/ted.py +++ b/youtube_dl/extractor/ted.py @@ -17,7 +17,7 @@ class TEDIE(InfoExtractor): _TEST = { u'url': u'http://www.ted.com/talks/dan_dennett_on_our_consciousness.html', u'file': u'102.mp4', - u'md5': u'8cd9dfa41ee000ce658fd48fb5d89a61', + u'md5': u'2d76ee1576672e0bd8f187513267adf6', u'info_dict': { u"description": u"md5:c6fa72e6eedbd938c9caf6b2702f5922", u"title": u"Dan Dennett: The illusion of consciousness" @@ -67,7 +67,7 @@ class TEDIE(InfoExtractor): webpage = self._download_webpage(url, video_id, 'Downloading \"%s\" page' % video_name) self.report_extraction(video_name) # If the url includes the language we get the title translated - title = self._html_search_regex(r'(?P.*)</span>', + title = self._html_search_regex(r'<span .*?id="altHeadline".+?>(?P<title>.*)</span>', webpage, 'title') json_data = self._search_regex(r'<script.*?>var talkDetails = ({.*?})</script>', webpage, 'json data') @@ -77,12 +77,20 @@ class TEDIE(InfoExtractor): thumbnail = self._search_regex(r'</span>[\s.]*</div>[\s.]*<img src="(.*?)"', webpage, 'thumbnail') + formats = [{ + 'ext': 'mp4', + 'url': stream['file'], + 'format': stream['id'] + } for stream in info['htmlStreams']] info = { - 'id': info['id'], - 'url': info['htmlStreams'][-1]['file'], - 'ext': 'mp4', - 'title': title, - 'thumbnail': thumbnail, - 'description': desc, - } + 'id': info['id'], + 'title': title, + 'thumbnail': thumbnail, + 'description': desc, + 'formats': formats, + } + + # TODO: Remove when #980 has been merged + info.update(info['formats'][-1]) + return info