mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-10 09:07:58 +01:00
Merge pull request #187 from pukkandan/break-on-existing
Stop download after encountering video in archive
This commit is contained in:
commit
228385340e
4 changed files with 15 additions and 2 deletions
|
@ -217,6 +217,8 @@ ## Video Selection:
|
||||||
--download-archive FILE Download only videos not listed in the
|
--download-archive FILE Download only videos not listed in the
|
||||||
archive file. Record the IDs of all
|
archive file. Record the IDs of all
|
||||||
downloaded videos in it.
|
downloaded videos in it.
|
||||||
|
--break-on-existing Stop the download process after attempting
|
||||||
|
to download a file that's in the archive.
|
||||||
--include-ads Download advertisements as well
|
--include-ads Download advertisements as well
|
||||||
(experimental)
|
(experimental)
|
||||||
|
|
||||||
|
|
|
@ -210,6 +210,8 @@ class YoutubeDL(object):
|
||||||
download_archive: File name of a file where all downloads are recorded.
|
download_archive: File name of a file where all downloads are recorded.
|
||||||
Videos already present in the file are not downloaded
|
Videos already present in the file are not downloaded
|
||||||
again.
|
again.
|
||||||
|
break_on_existing: Stop the download process after attempting to download a file that's
|
||||||
|
in the archive.
|
||||||
cookiefile: File name where cookies should be read from and dumped to.
|
cookiefile: File name where cookies should be read from and dumped to.
|
||||||
nocheckcertificate:Do not verify SSL certificates
|
nocheckcertificate:Do not verify SSL certificates
|
||||||
prefer_insecure: Use HTTP instead of HTTPS to retrieve information.
|
prefer_insecure: Use HTTP instead of HTTPS to retrieve information.
|
||||||
|
@ -1048,6 +1050,10 @@ def report_download(num_entries):
|
||||||
|
|
||||||
reason = self._match_entry(entry, incomplete=True)
|
reason = self._match_entry(entry, incomplete=True)
|
||||||
if reason is not None:
|
if reason is not None:
|
||||||
|
if reason.endswith('has already been recorded in the archive') and self.params.get('break_on_existing'):
|
||||||
|
print('[download] tried downloading a file that\'s already in the archive, stopping since --break-on-existing is set.')
|
||||||
|
break
|
||||||
|
else:
|
||||||
self.to_screen('[download] ' + reason)
|
self.to_screen('[download] ' + reason)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|
|
@ -405,6 +405,7 @@ def parse_retries(retries):
|
||||||
'youtube_print_sig_code': opts.youtube_print_sig_code,
|
'youtube_print_sig_code': opts.youtube_print_sig_code,
|
||||||
'age_limit': opts.age_limit,
|
'age_limit': opts.age_limit,
|
||||||
'download_archive': download_archive_fn,
|
'download_archive': download_archive_fn,
|
||||||
|
'break_on_existing': opts.break_on_existing,
|
||||||
'cookiefile': opts.cookiefile,
|
'cookiefile': opts.cookiefile,
|
||||||
'nocheckcertificate': opts.no_check_certificate,
|
'nocheckcertificate': opts.no_check_certificate,
|
||||||
'prefer_insecure': opts.prefer_insecure,
|
'prefer_insecure': opts.prefer_insecure,
|
||||||
|
|
|
@ -344,6 +344,10 @@ def _comma_separated_values_options_callback(option, opt_str, value, parser):
|
||||||
'--download-archive', metavar='FILE',
|
'--download-archive', metavar='FILE',
|
||||||
dest='download_archive',
|
dest='download_archive',
|
||||||
help='Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it.')
|
help='Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it.')
|
||||||
|
selection.add_option(
|
||||||
|
'--break-on-existing',
|
||||||
|
action='store_true', dest='break_on_existing', default=False,
|
||||||
|
help="Stop the download process after attempting to download a file that's in the archive.")
|
||||||
selection.add_option(
|
selection.add_option(
|
||||||
'--include-ads',
|
'--include-ads',
|
||||||
dest='include_ads', action='store_true',
|
dest='include_ads', action='store_true',
|
||||||
|
|
Loading…
Reference in a new issue