summaryrefslogtreecommitdiffstats
path: root/gallery_dl/downloader/http.py
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2019-08-26 19:34:45 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2019-08-26 19:34:45 -0400
commitb75d158d014d6c43d7d785c46c9372a9cf84d144 (patch)
tree7dca4a7e61fe8b6e2bff2142fc19891e783a7d6d /gallery_dl/downloader/http.py
parent64ad8e7bd15df71ab1116eede414558631bcad32 (diff)
New upstream version 1.10.2upstream/1.10.2
Diffstat (limited to 'gallery_dl/downloader/http.py')
-rw-r--r--gallery_dl/downloader/http.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/gallery_dl/downloader/http.py b/gallery_dl/downloader/http.py
index 7a95191..e3229eb 100644
--- a/gallery_dl/downloader/http.py
+++ b/gallery_dl/downloader/http.py
@@ -26,6 +26,7 @@ class HttpDownloader(DownloaderBase):
def __init__(self, extractor, output):
DownloaderBase.__init__(self, extractor, output)
+ self.adjust_extension = self.config("adjust-extensions", True)
self.retries = self.config("retries", extractor._retries)
self.timeout = self.config("timeout", extractor._timeout)
self.verify = self.config("verify", extractor._verify)
@@ -59,7 +60,6 @@ class HttpDownloader(DownloaderBase):
def _download_impl(self, url, pathfmt):
response = None
- adj_ext = None
tries = 0
msg = ""
@@ -103,7 +103,7 @@ class HttpDownloader(DownloaderBase):
elif code == 206: # Partial Content
offset = filesize
size = response.headers["Content-Range"].rpartition("/")[2]
- elif code == 416: # Requested Range Not Satisfiable
+ elif code == 416 and filesize: # Requested Range Not Satisfiable
break
else:
msg = "{}: {} for url: {}".format(code, response.reason, url)
@@ -114,7 +114,7 @@ class HttpDownloader(DownloaderBase):
size = text.parse_int(size)
# set missing filename extension
- if not pathfmt.has_extension:
+ if not pathfmt.extension:
pathfmt.set_extension(self.get_extension(response))
if pathfmt.exists():
pathfmt.temppath = ""
@@ -152,15 +152,16 @@ class HttpDownloader(DownloaderBase):
continue
# check filename extension
- adj_ext = self.check_extension(file, pathfmt)
+ if self.adjust_extension:
+ adj_ext = self.check_extension(file, pathfmt.extension)
+ if adj_ext:
+ pathfmt.set_extension(adj_ext)
break
self.downloading = False
- if adj_ext:
- pathfmt.set_extension(adj_ext)
if self.mtime:
- pathfmt.keywords["_mtime"] = response.headers.get("Last-Modified")
+ pathfmt.kwdict["_mtime"] = response.headers.get("Last-Modified")
return True
def receive(self, response, file):
@@ -196,9 +197,8 @@ class HttpDownloader(DownloaderBase):
return "txt"
@staticmethod
- def check_extension(file, pathfmt):
+ def check_extension(file, extension):
"""Check filename extension against fileheader"""
- extension = pathfmt.keywords["extension"]
if extension in FILETYPE_CHECK:
file.seek(0)
header = file.read(8)