From a174c453ee1e853c584ceadeac17eef2bd433dc5 Mon Sep 17 00:00:00 2001 From: pukkandan Date: Wed, 29 Nov 2023 03:18:17 +0530 Subject: [PATCH] Let `read_stdin` obey `--quiet` Closes #8668 --- yt_dlp/__init__.py | 10 ++++++---- yt_dlp/utils/_utils.py | 5 +++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/yt_dlp/__init__.py b/yt_dlp/__init__.py index 446f0c47b..57a487157 100644 --- a/yt_dlp/__init__.py +++ b/yt_dlp/__init__.py @@ -73,14 +73,16 @@ def _exit(status=0, *args): def get_urls(urls, batchfile, verbose): - # Batch file verification + """ + @param verbose -1: quiet, 0: normal, 1: verbose + """ batch_urls = [] if batchfile is not None: try: batch_urls = read_batch_urls( - read_stdin('URLs') if batchfile == '-' + read_stdin(None if verbose == -1 else 'URLs') if batchfile == '-' else open(expand_path(batchfile), encoding='utf-8', errors='ignore')) - if verbose: + if verbose == 1: write_string('[debug] Batch file urls: ' + repr(batch_urls) + '\n') except OSError: _exit(f'ERROR: batch file {batchfile} could not be read') @@ -721,7 +723,7 @@ ParsedOptions = collections.namedtuple('ParsedOptions', ('parser', 'options', 'u def parse_options(argv=None): """@returns ParsedOptions(parser, opts, urls, ydl_opts)""" parser, opts, urls = parseOpts(argv) - urls = get_urls(urls, opts.batchfile, opts.verbose) + urls = get_urls(urls, opts.batchfile, -1 if opts.quiet and not opts.verbose else opts.verbose) set_compat_opts(opts) try: diff --git a/yt_dlp/utils/_utils.py b/yt_dlp/utils/_utils.py index b0164a895..f1d7cead6 100644 --- a/yt_dlp/utils/_utils.py +++ b/yt_dlp/utils/_utils.py @@ -4789,8 +4789,9 @@ def parse_http_range(range): def read_stdin(what): - eof = 'Ctrl+Z' if compat_os_name == 'nt' else 'Ctrl+D' - write_string(f'Reading {what} from STDIN - EOF ({eof}) to end:\n') + if what: + eof = 'Ctrl+Z' if compat_os_name == 'nt' else 'Ctrl+D' + write_string(f'Reading {what} from STDIN - EOF ({eof}) to end:\n') return sys.stdin