

def _real_extract(self, url):
    m = re.match(self._VALID_URL, url)
    fileID = m.group('fileID')
    if fileID:
        videourl = url
        playlist_id = fileID
    else:
        gameID = m.group('gameID')
        playlist_id = gameID
        videourl = (self._VIDEO_PAGE_TEMPLATE % playlist_id)
    webpage = self._download_webpage(videourl, playlist_id)
    if (re.search('<h2>Please enter your birth date to continue:</h2>', webpage) is not None):
        videourl = (self._AGECHECK_TEMPLATE % playlist_id)
        self.report_age_confirmation()
        webpage = self._download_webpage(videourl, playlist_id)
    if fileID:
        playlist_title = self._html_search_regex('<div class="workshopItemTitle">(.+)</div>', webpage, 'title')
        mweb = re.finditer('(?x)\n                \'movie_(?P<videoID>[0-9]+)\':\\s*\\{\\s*\n                YOUTUBE_VIDEO_ID:\\s*"(?P<youtube_id>[^"]+)",\n                ', webpage)
        videos = [{
            '_type': 'url',
            'url': vid.group('youtube_id'),
            'ie_key': 'Youtube',
        } for vid in mweb]
    else:
        playlist_title = self._html_search_regex('<h2 class="pageheader">(.*?)</h2>', webpage, 'game title')
        mweb = re.finditer('(?x)\n                \'movie_(?P<videoID>[0-9]+)\':\\s*\\{\\s*\n                FILENAME:\\s*"(?P<videoURL>[\\w:/\\.\\?=]+)"\n                (,\\s*MOVIE_NAME:\\s*\\"(?P<videoName>[\\w:/\\.\\?=\\+-]+)\\")?\\s*\\},\n                ', webpage)
        titles = re.finditer('<span class="title">(?P<videoName>.+?)</span>', webpage)
        thumbs = re.finditer('<img class="movie_thumb" src="(?P<thumbnail>.+?)">', webpage)
        videos = []
        for (vid, vtitle, thumb) in zip(mweb, titles, thumbs):
            video_id = vid.group('videoID')
            title = vtitle.group('videoName')
            video_url = vid.group('videoURL')
            video_thumb = thumb.group('thumbnail')
            if (not video_url):
                raise ExtractorError(('Cannot find video url for %s' % video_id))
            videos.append({
                'id': video_id,
                'url': video_url,
                'ext': 'flv',
                'title': unescapeHTML(title),
                'thumbnail': video_thumb,
            })
    if (not videos):
        raise ExtractorError('Could not find any videos')
    return self.playlist_result(videos, mweb, playlist_title)

dataset/ETHPy150Open yasoob/youtube-dl-GUI/youtube_dl/extractor/steam.py SteamIE._real_extract/VarMisuse@385/767 `playlist_id`->`mweb`