X-Git-Url: https://jfr.im/git/yt-dlp.git/blobdiff_plain/1e8fe57e5cd0f33f940df87430d75e1230ec5b7a..bfd973ece3369c593b5e82a88cc16de80088a73e:/yt_dlp/extractor/rumble.py diff --git a/yt_dlp/extractor/rumble.py b/yt_dlp/extractor/rumble.py index 924f9829f..c94ba68ee 100644 --- a/yt_dlp/extractor/rumble.py +++ b/yt_dlp/extractor/rumble.py @@ -15,6 +15,7 @@ class RumbleEmbedIE(InfoExtractor): _VALID_URL = r'https?://(?:www\.)?rumble\.com/embed/(?:[0-9a-z]+\.)?(?P[0-9a-z]+)' + _EMBED_REGEX = [fr'(?:<(?:script|iframe)[^>]+\bsrc=|["\']embedUrl["\']\s*:\s*)["\'](?P{_VALID_URL})'] _TESTS = [{ 'url': 'https://rumble.com/embed/v5pv5f', 'md5': '36a18a049856720189f30977ccbb2c34', @@ -51,11 +52,10 @@ class RumbleEmbedIE(InfoExtractor): }] @classmethod - def _extract_urls(cls, webpage): - embeds = tuple(re.finditer( - fr'(?:<(?:script|iframe)[^>]+\bsrc=|["\']embedUrl["\']\s*:\s*)["\'](?P{cls._VALID_URL})', webpage)) + def _extract_embed_urls(cls, url, webpage): + embeds = tuple(super()._extract_embed_urls(url, webpage)) if embeds: - return [mobj.group('url') for mobj in embeds] + return embeds return [f'https://rumble.com/embed/{mobj.group("id")}' for mobj in re.finditer( r'