mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2025-09-03 00:25:08 +00:00
[extractors] Use new framework for existing embeds (#4307)
`Brightcove` is difficult to migrate because it's subclasses may depend on the signature of the current functions. So it is left as-is for now Note: Tests have not been migrated
This commit is contained in:
@ -215,6 +215,7 @@ class TedPlaylistIE(TedBaseIE):
|
||||
|
||||
class TedEmbedIE(InfoExtractor):
|
||||
_VALID_URL = r'https?://embed(?:-ssl)?\.ted\.com/'
|
||||
_EMBED_REGEX = [rf'<iframe[^>]+?src=(["\'])(?P<url>{_VALID_URL}.+?)\1']
|
||||
|
||||
_TESTS = [{
|
||||
'url': 'https://embed.ted.com/talks/janet_stovall_how_to_get_serious_about_diversity_and_inclusion_in_the_workplace',
|
||||
@ -233,10 +234,5 @@ class TedEmbedIE(InfoExtractor):
|
||||
},
|
||||
}]
|
||||
|
||||
@classmethod
|
||||
def _extract_urls(cls, webpage):
|
||||
return [mobj.group('url') for mobj in re.finditer(
|
||||
fr'<iframe[^>]+?src=(["\'])(?P<url>{cls._VALID_URL}.+?)\1', webpage)]
|
||||
|
||||
def _real_extract(self, url):
|
||||
return self.url_result(re.sub(r'://embed(-ssl)?', '://www', url), TedTalkIE.ie_key())
|
||||
|
Reference in New Issue
Block a user