[extractor/common] Add doc string for _apply_first_set_cookie_header

This commit is contained in:
Sergey M․ 2019-05-20 23:23:18 +07:00
parent a9e03736df
commit ce2fe4c01c
No known key found for this signature in database
GPG key ID: 2C393E0F18A9236D

View file

@ -2818,15 +2818,19 @@ def _get_cookies(self, url):
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