aboutsummaryrefslogtreecommitdiff
path: root/yt_dlp/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'yt_dlp/__init__.py')
-rw-r--r--yt_dlp/__init__.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/yt_dlp/__init__.py b/yt_dlp/__init__.py
index 3dc9b6e56..f4a2086ce 100644
--- a/yt_dlp/__init__.py
+++ b/yt_dlp/__init__.py
@@ -346,6 +346,7 @@ def validate_options(opts):
# Cookies from browser
if opts.cookiesfrombrowser:
+ container = None
mobj = re.match(r'(?P<name>[^+:]+)(\s*\+\s*(?P<keyring>[^:]+))?(\s*:(?P<profile>.+))?', opts.cookiesfrombrowser)
if mobj is None:
raise ValueError(f'invalid cookies from browser arguments: {opts.cookiesfrombrowser}')
@@ -354,12 +355,15 @@ def validate_options(opts):
if browser_name not in SUPPORTED_BROWSERS:
raise ValueError(f'unsupported browser specified for cookies: "{browser_name}". '
f'Supported browsers are: {", ".join(sorted(SUPPORTED_BROWSERS))}')
+ elif profile and browser_name == 'firefox':
+ if ':' in profile and not os.path.exists(profile):
+ profile, container = profile.split(':', 1)
if keyring is not None:
keyring = keyring.upper()
if keyring not in SUPPORTED_KEYRINGS:
raise ValueError(f'unsupported keyring specified for cookies: "{keyring}". '
f'Supported keyrings are: {", ".join(sorted(SUPPORTED_KEYRINGS))}')
- opts.cookiesfrombrowser = (browser_name, profile, keyring)
+ opts.cookiesfrombrowser = (browser_name, profile, keyring, container)
# MetadataParser
def metadataparser_actions(f):