diff options
Diffstat (limited to 'youtube_dl/extractor/ted.py')
| -rw-r--r-- | youtube_dl/extractor/ted.py | 18 | 
1 files changed, 10 insertions, 8 deletions
| diff --git a/youtube_dl/extractor/ted.py b/youtube_dl/extractor/ted.py index 10b3b706a..1809eaae4 100644 --- a/youtube_dl/extractor/ted.py +++ b/youtube_dl/extractor/ted.py @@ -3,14 +3,14 @@ from __future__ import unicode_literals  import json  import re -from .subtitles import SubtitlesInfoExtractor +from .common import InfoExtractor  from ..compat import (      compat_str,  ) -class TEDIE(SubtitlesInfoExtractor): +class TEDIE(InfoExtractor):      _VALID_URL = r'''(?x)          (?P<proto>https?://)          (?P<type>www|embed(?:-ssl)?)(?P<urlmain>\.ted\.com/ @@ -165,9 +165,6 @@ class TEDIE(SubtitlesInfoExtractor):          video_id = compat_str(talk_info['id'])          # subtitles          video_subtitles = self.extract_subtitles(video_id, talk_info) -        if self._downloader.params.get('listsubtitles', False): -            self._list_available_subtitles(video_id, talk_info) -            return          thumbnail = talk_info['thumb']          if not thumbnail.startswith('http'): @@ -183,13 +180,18 @@ class TEDIE(SubtitlesInfoExtractor):              'duration': talk_info.get('duration'),          } -    def _get_available_subtitles(self, video_id, talk_info): +    def _get_subtitles(self, video_id, talk_info):          languages = [lang['languageCode'] for lang in talk_info.get('languages', [])]          if languages:              sub_lang_list = {}              for l in languages: -                url = 'http://www.ted.com/talks/subtitles/id/%s/lang/%s/format/srt' % (video_id, l) -                sub_lang_list[l] = url +                sub_lang_list[l] = [ +                    { +                        'url': 'http://www.ted.com/talks/subtitles/id/%s/lang/%s/format/%s' % (video_id, l, ext), +                        'ext': ext, +                    } +                    for ext in ['ted', 'srt'] +                ]              return sub_lang_list          else:              self._downloader.report_warning('video doesn\'t have subtitles') | 
