aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRemita Amine <remitamine@gmail.com>2021-04-04 19:49:24 +0100
committerRemita Amine <remitamine@gmail.com>2021-04-04 19:49:24 +0100
commit162bf9e10a4e6a08f5ed156a68054ef9b4d2b60e (patch)
tree2d7d9f6010fae8c10ec816db6f33ea371a50374c
parent6beb1ac65b03415764c487fd139298f22e1e0313 (diff)
downloadyoutube-dl-162bf9e10a4e6a08f5ed156a68054ef9b4d2b60e.tar.xz
[compat] add compat_SimpleCookie
-rw-r--r--youtube_dl/compat.py9
-rw-r--r--youtube_dl/extractor/common.py9
2 files changed, 12 insertions, 6 deletions
diff --git a/youtube_dl/compat.py b/youtube_dl/compat.py
index 6c3d49d45..8bbebebcf 100644
--- a/youtube_dl/compat.py
+++ b/youtube_dl/compat.py
@@ -73,6 +73,15 @@ try:
except ImportError: # Python 2
import Cookie as compat_cookies
+if sys.version_info[0] == 2:
+ class compat_SimpleCookie(compat_cookies.SimpleCookie):
+ def load(self, rawdata):
+ if isinstance(rawdata, unicode):
+ rawdata = str(rawdata)
+ return super(compat_SimpleCookie, self).load(rawdata)
+else:
+ compat_SimpleCookie = compat_cookies.SimpleCookie
+
try:
import html.entities as compat_html_entities
except ImportError: # Python 2
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py
index 78ff5b6d0..af289d705 100644
--- a/youtube_dl/extractor/common.py
+++ b/youtube_dl/extractor/common.py
@@ -17,13 +17,13 @@ import math
from ..compat import (
compat_cookiejar_Cookie,
- compat_cookies,
compat_etree_Element,
compat_etree_fromstring,
compat_getpass,
compat_integer_types,
compat_http_client,
compat_os_name,
+ compat_SimpleCookie,
compat_str,
compat_urllib_error,
compat_urllib_parse_unquote,
@@ -2901,13 +2901,10 @@ class InfoExtractor(object):
self._downloader.cookiejar.set_cookie(cookie)
def _get_cookies(self, url):
- """ Return a compat_cookies.SimpleCookie with the cookies for the url """
+ """ Return a compat_SimpleCookie with the cookies for the url """
req = sanitized_Request(url)
self._downloader.cookiejar.add_cookie_header(req)
- cookie = req.get_header('Cookie')
- if cookie and sys.version_info[0] == 2:
- cookie = str(cookie)
- return compat_cookies.SimpleCookie(cookie)
+ return compat_SimpleCookie(req.get_header('Cookie'))
def _apply_first_set_cookie_header(self, url_handle, cookie):
"""