[YoutubeDL] improvements to warn_if_short_id()

This commit is contained in:
kikuyan 2021-07-04 02:59:31 +09:00
parent a803582717
commit cffb95942a
2 changed files with 4 additions and 3 deletions

View File

@ -437,11 +437,11 @@ class YoutubeDL(object):
register_socks_protocols()
def warn_if_short_id(self, argv):
def warn_if_short_id(self, argv, parser):
# short YouTube ID starting with dash?
idxs = [
i for i, a in enumerate(argv)
if re.match(r'^-[0-9A-Za-z_-]{10}$', a)]
if re.match(r'^-[0-9A-Za-z_-]{10}$', a) and not parser.has_option(a)]
if idxs:
correct_argv = (
['youtube-dl']

View File

@ -13,6 +13,7 @@ import sys
from .options import (
_hide_login_info,
parseOpts,
)
from .compat import (
@ -453,7 +454,7 @@ def _real_main(argv=None):
if opts.update_self or opts.rm_cachedir:
sys.exit()
ydl.warn_if_short_id(sys.argv[1:] if argv is None else argv)
ydl.warn_if_short_id(_hide_login_info(sys.argv[1:] if argv is None else argv), parser)
parser.error(
'You must provide at least one URL.\n'
'Type youtube-dl --help to see a list of all options.')