|
|
@ -2818,15 +2818,19 @@ class InfoExtractor(object): |
|
|
|
return compat_cookies.SimpleCookie(req.get_header('Cookie')) |
|
|
|
|
|
|
|
def _apply_first_set_cookie_header(self, url_handle, cookie): |
|
|
|
# Some sites (e.g. [1-3]) may serve two cookies under the same name |
|
|
|
# in Set-Cookie header and expect the first (old) one to be set rather |
|
|
|
# than second (new). However, as of RFC6265 the newer one cookie |
|
|
|
# should be set into cookie store what actually happens. |
|
|
|
# We will workaround this issue by resetting the cookie to |
|
|
|
# the first one manually. |
|
|
|
# 1. https://new.vk.com/ |
|
|
|
# 2. https://github.com/ytdl-org/youtube-dl/issues/9841#issuecomment-227871201 |
|
|
|
# 3. https://learning.oreilly.com/ |
|
|
|
""" |
|
|
|
Apply first Set-Cookie header instead of the last. Experimental. |
|
|
|
|
|
|
|
Some sites (e.g. [1-3]) may serve two cookies under the same name |
|
|
|
in Set-Cookie header and expect the first (old) one to be set rather |
|
|
|
than second (new). However, as of RFC6265 the newer one cookie |
|
|
|
should be set into cookie store what actually happens. |
|
|
|
We will workaround this issue by resetting the cookie to |
|
|
|
the first one manually. |
|
|
|
1. https://new.vk.com/ |
|
|
|
2. https://github.com/ytdl-org/youtube-dl/issues/9841#issuecomment-227871201 |
|
|
|
3. https://learning.oreilly.com/ |
|
|
|
""" |
|
|
|
for header, cookies in url_handle.headers.items(): |
|
|
|
if header.lower() != 'set-cookie': |
|
|
|
continue |
|
|
|