[downloader:http] add 'validate' option
This commit is contained in:
@@ -3466,6 +3466,19 @@ Description
|
|||||||
regardless of this option.
|
regardless of this option.
|
||||||
|
|
||||||
|
|
||||||
|
downloader.http.validate
|
||||||
|
------------------------
|
||||||
|
Type
|
||||||
|
``bool``
|
||||||
|
Default
|
||||||
|
``true``
|
||||||
|
Description
|
||||||
|
Check for invalid responses.
|
||||||
|
|
||||||
|
Fail a download when a file does not pass
|
||||||
|
instead of downloading a potentially broken file.
|
||||||
|
|
||||||
|
|
||||||
downloader.ytdl.format
|
downloader.ytdl.format
|
||||||
----------------------
|
----------------------
|
||||||
Type
|
Type
|
||||||
|
|||||||
@@ -390,7 +390,8 @@
|
|||||||
{
|
{
|
||||||
"adjust-extensions": true,
|
"adjust-extensions": true,
|
||||||
"chunk-size": 32768,
|
"chunk-size": 32768,
|
||||||
"headers": null
|
"headers": null,
|
||||||
|
"validate": true
|
||||||
},
|
},
|
||||||
|
|
||||||
"ytdl":
|
"ytdl":
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
# Copyright 2014-2022 Mike Fährmann
|
# Copyright 2014-2023 Mike Fährmann
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License version 2 as
|
# it under the terms of the GNU General Public License version 2 as
|
||||||
@@ -33,6 +33,7 @@ class HttpDownloader(DownloaderBase):
|
|||||||
self.chunk_size = self.config("chunk-size", 32768)
|
self.chunk_size = self.config("chunk-size", 32768)
|
||||||
self.metadata = extractor.config("http-metadata")
|
self.metadata = extractor.config("http-metadata")
|
||||||
self.progress = self.config("progress", 3.0)
|
self.progress = self.config("progress", 3.0)
|
||||||
|
self.validate = self.config("validate", True)
|
||||||
self.headers = self.config("headers")
|
self.headers = self.config("headers")
|
||||||
self.minsize = self.config("filesize-min")
|
self.minsize = self.config("filesize-min")
|
||||||
self.maxsize = self.config("filesize-max")
|
self.maxsize = self.config("filesize-max")
|
||||||
@@ -175,7 +176,7 @@ class HttpDownloader(DownloaderBase):
|
|||||||
|
|
||||||
# check for invalid responses
|
# check for invalid responses
|
||||||
validate = kwdict.get("_http_validate")
|
validate = kwdict.get("_http_validate")
|
||||||
if validate:
|
if validate and self.validate:
|
||||||
result = validate(response)
|
result = validate(response)
|
||||||
if isinstance(result, str):
|
if isinstance(result, str):
|
||||||
url = result
|
url = result
|
||||||
|
|||||||
Reference in New Issue
Block a user