1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-10-04 19:44:33 -04:00
Closes #4881
This commit is contained in:
pukkandan
2022-09-09 23:14:20 +05:30
parent 0cb0fdbbfe
commit 941e881e1f
2 changed files with 8 additions and 7 deletions

View File

@@ -1497,6 +1497,10 @@ class YoutubeDLHTTPSHandler(urllib.request.HTTPSHandler):
raise
def is_path_like(f):
return isinstance(f, (str, bytes, os.PathLike))
class YoutubeDLCookieJar(http.cookiejar.MozillaCookieJar):
"""
See [1] for cookie file format.
@@ -1515,7 +1519,7 @@ class YoutubeDLCookieJar(http.cookiejar.MozillaCookieJar):
def __init__(self, filename=None, *args, **kwargs):
super().__init__(None, *args, **kwargs)
if self.is_path(filename):
if is_path_like(filename):
filename = os.fspath(filename)
self.filename = filename
@@ -1523,13 +1527,9 @@ class YoutubeDLCookieJar(http.cookiejar.MozillaCookieJar):
def _true_or_false(cndn):
return 'TRUE' if cndn else 'FALSE'
@staticmethod
def is_path(file):
return isinstance(file, (str, bytes, os.PathLike))
@contextlib.contextmanager
def open(self, file, *, write=False):
if self.is_path(file):
if is_path_like(file):
with open(file, 'w' if write else 'r', encoding='utf-8') as f:
yield f
else: