Procházet zdrojové kódy

[youtube] Force old layout for each webpage (closes #14083)

Sergey M․ před 8 roky
rodič
revize
8d81f3e36d
1 změnil soubory, kde provedl 7 přidání a 1 odebrání
  1. 7 1
      youtube_dl/extractor/youtube.py

+ 7 - 1
youtube_dl/extractor/youtube.py

@@ -16,6 +16,7 @@ from ..jsinterp import JSInterpreter
 from ..swfinterp import SWFInterpreter
 from ..swfinterp import SWFInterpreter
 from ..compat import (
 from ..compat import (
     compat_chr,
     compat_chr,
+    compat_kwargs,
     compat_parse_qs,
     compat_parse_qs,
     compat_urllib_parse_unquote,
     compat_urllib_parse_unquote,
     compat_urllib_parse_unquote_plus,
     compat_urllib_parse_unquote_plus,
@@ -245,6 +246,11 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
 
 
         return True
         return True
 
 
+    def _download_webpage(self, *args, **kwargs):
+        kwargs.setdefault('query', {})['disable_polymer'] = 'true'
+        return super(YoutubeBaseInfoExtractor, self)._download_webpage(
+            *args, **compat_kwargs(kwargs))
+
     def _real_initialize(self):
     def _real_initialize(self):
         if self._downloader is None:
         if self._downloader is None:
             return
             return
@@ -2052,7 +2058,7 @@ class YoutubePlaylistIE(YoutubePlaylistBaseInfoExtractor):
                      |
                      |
                         (%(playlist_id)s)
                         (%(playlist_id)s)
                      )""" % {'playlist_id': YoutubeBaseInfoExtractor._PLAYLIST_ID_RE}
                      )""" % {'playlist_id': YoutubeBaseInfoExtractor._PLAYLIST_ID_RE}
-    _TEMPLATE_URL = 'https://www.youtube.com/playlist?list=%s&disable_polymer=true'
+    _TEMPLATE_URL = 'https://www.youtube.com/playlist?list=%s'
     _VIDEO_RE = r'href="\s*/watch\?v=(?P<id>[0-9A-Za-z_-]{11})&amp;[^"]*?index=(?P<index>\d+)(?:[^>]+>(?P<title>[^<]+))?'
     _VIDEO_RE = r'href="\s*/watch\?v=(?P<id>[0-9A-Za-z_-]{11})&amp;[^"]*?index=(?P<index>\d+)(?:[^>]+>(?P<title>[^<]+))?'
     IE_NAME = 'youtube:playlist'
     IE_NAME = 'youtube:playlist'
     _TESTS = [{
     _TESTS = [{