mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-23 02:25:11 +00:00
[ted] Simplify embed code (#2587)
This commit is contained in:
parent
2bd9efd4c2
commit
aab74fa106
2 changed files with 19 additions and 4 deletions
|
@ -159,6 +159,18 @@ class GenericIE(InfoExtractor):
|
||||||
# m3u8 download
|
# m3u8 download
|
||||||
'skip_download': True,
|
'skip_download': True,
|
||||||
},
|
},
|
||||||
|
},
|
||||||
|
# Embedded TED video
|
||||||
|
{
|
||||||
|
'url': 'http://en.support.wordpress.com/videos/ted-talks/',
|
||||||
|
'md5': 'deeeabcc1085eb2ba205474e7235a3d5',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '981',
|
||||||
|
'ext': 'mp4',
|
||||||
|
'title': 'My web playroom',
|
||||||
|
'uploader': 'Ze Frank',
|
||||||
|
'description': 'md5:ddb2a40ecd6b6a147e400e535874947b',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,9 @@
|
||||||
|
|
||||||
|
|
||||||
class TEDIE(SubtitlesInfoExtractor):
|
class TEDIE(SubtitlesInfoExtractor):
|
||||||
_VALID_URL = r'''(?x)http://(?P<type>www|embed)\.ted\.com/
|
_VALID_URL = r'''(?x)
|
||||||
|
(?P<proto>https?://)
|
||||||
|
(?P<type>www|embed)(?P<urlmain>\.ted\.com/
|
||||||
(
|
(
|
||||||
(?P<type_playlist>playlists(?:/\d+)?) # We have a playlist
|
(?P<type_playlist>playlists(?:/\d+)?) # We have a playlist
|
||||||
|
|
|
|
||||||
|
@ -19,6 +21,7 @@ class TEDIE(SubtitlesInfoExtractor):
|
||||||
)
|
)
|
||||||
(/lang/(.*?))? # The url may contain the language
|
(/lang/(.*?))? # The url may contain the language
|
||||||
/(?P<name>\w+) # Here goes the name and then ".html"
|
/(?P<name>\w+) # Here goes the name and then ".html"
|
||||||
|
.*)$
|
||||||
'''
|
'''
|
||||||
_TEST = {
|
_TEST = {
|
||||||
'url': 'http://www.ted.com/talks/dan_dennett_on_our_consciousness.html',
|
'url': 'http://www.ted.com/talks/dan_dennett_on_our_consciousness.html',
|
||||||
|
@ -48,9 +51,9 @@ def _extract_info(self, webpage):
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
m = re.match(self._VALID_URL, url, re.VERBOSE)
|
m = re.match(self._VALID_URL, url, re.VERBOSE)
|
||||||
if m.group('type') == 'embed': # if the _VALID_URL is an embed
|
if m.group('type') == 'embed':
|
||||||
desktop_url = re.sub("embed", "www", url)
|
desktop_url = m.group('proto') + 'www' + m.group('urlmain')
|
||||||
return self.url_result(desktop_url, 'TED') # pass the desktop version to the extractor
|
return self.url_result(desktop_url, 'TED')
|
||||||
name = m.group('name')
|
name = m.group('name')
|
||||||
if m.group('type_talk'):
|
if m.group('type_talk'):
|
||||||
return self._talk_info(url, name)
|
return self._talk_info(url, name)
|
||||||
|
|
Loading…
Reference in a new issue