瀏覽代碼

[youtube] Improve multifeed videos extraction (Closes #8536)

Sergey M․ 9 年之前
父節點
當前提交
6863631c26
共有 1 個文件被更改,包括 5 次插入2 次删除
  1. 5 2
      youtube_dl/extractor/youtube.py

+ 5 - 2
youtube_dl/extractor/youtube.py

@@ -1196,9 +1196,12 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
             if not self._downloader.params.get('noplaylist'):
             if not self._downloader.params.get('noplaylist'):
                 entries = []
                 entries = []
                 feed_ids = []
                 feed_ids = []
-                multifeed_metadata_list = compat_urllib_parse_unquote_plus(video_info['multifeed_metadata_list'][0])
+                multifeed_metadata_list = video_info['multifeed_metadata_list'][0]
                 for feed in multifeed_metadata_list.split(','):
                 for feed in multifeed_metadata_list.split(','):
-                    feed_data = compat_parse_qs(feed)
+                    # Unquote should take place before split on comma (,) since textual
+                    # fields may contain comma as well (see
+                    # https://github.com/rg3/youtube-dl/issues/8536)
+                    feed_data = compat_parse_qs(compat_urllib_parse_unquote_plus(feed))
                     entries.append({
                     entries.append({
                         '_type': 'url_transparent',
                         '_type': 'url_transparent',
                         'ie_key': 'Youtube',
                         'ie_key': 'Youtube',