diff --git a/gallery_dl/downloader/http.py b/gallery_dl/downloader/http.py index 8f27d14f71..3a22a25d3a 100644 --- a/gallery_dl/downloader/http.py +++ b/gallery_dl/downloader/http.py @@ -12,9 +12,12 @@ import requests import requests.exceptions as rexcepts import mimetypes +import logging from .common import BasicDownloader from .. import config +log = logging.getLogger("http") + class Downloader(BasicDownloader): @@ -63,8 +66,13 @@ def download_impl(self, url, pathfmt): # set 'extension' keyword from Content-Type header mtype = response.headers.get("Content-Type", "image/jpeg") exts = mimetypes.guess_all_extensions(mtype, strict=False) - exts.sort() - pathfmt.set_extension(exts[-1][1:]) + if exts: + exts.sort() + pathfmt.set_extension(exts[-1][1:]) + else: + log.warning("No file extension found for MIME type '%s'", + mtype) + pathfmt.set_extension("txt") if pathfmt.exists(): self.out.skip(pathfmt.path) response.close()