1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-07-05 04:48:31 +00:00
yt-dlp/yt_dlp/extractor/speedrun.py
2025-03-20 13:24:59 -05:00

25 lines
808 B
Python

from .common import InfoExtractor
# Speedrun.com has the ability to host twitch embeds as well which is why this script was needed.
class SpeedRunIE(InfoExtractor):
IE_NAME = "speedrun"
_VALID_URL = r'https?://(?:www\.)?speedrun\.com/[^/?#]+/runs/(?P<id>[^?/#]+)'
_TESTS = [{
"url":"https://www.speedrun.com/smg1/runs/yvnjr9om",
'only_matching': True
}, {
"url":"https://www.speedrun.com/pm64/runs/y96x462y",
'only_matching': True
}]
def _real_extract(self, url):
video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id)
embed_url = self._search_regex(
r'<iframe [^>]*class="[^"]*block[^"]+" [^>]*src="([^"]+)', webpage, 'embed url')
return self.url_result(embed_url)