diff --git a/gallery_dl/job.py b/gallery_dl/job.py index 07917113..c41f382d 100644 --- a/gallery_dl/job.py +++ b/gallery_dl/job.py @@ -551,9 +551,15 @@ class DownloadJob(Job): archive_path = cfg("archive") if archive_path: archive_path = util.expand_path(archive_path) - archive_format = (cfg("archive-prefix", extr.category) + - cfg("archive-format", extr.archive_fmt)) - archive_pragma = (cfg("archive-pragma")) + + archive_prefix = cfg("archive-prefix") + if archive_prefix is None: + archive_prefix = extr.category + + archive_format = cfg("archive-format") + if archive_format is None: + archive_format = extr.archive_fmt + try: if "{" in archive_path: archive_path = formatter.parse( @@ -563,7 +569,10 @@ class DownloadJob(Job): else: archive_cls = archive.DownloadArchive self.archive = archive_cls( - archive_path, archive_format, archive_pragma) + archive_path, + archive_prefix + archive_format, + cfg("archive-pragma"), + ) except Exception as exc: extr.log.warning( "Failed to open download archive at '%s' (%s: %s)", diff --git a/gallery_dl/postprocessor/common.py b/gallery_dl/postprocessor/common.py index d4e16034..a9143a6a 100644 --- a/gallery_dl/postprocessor/common.py +++ b/gallery_dl/postprocessor/common.py @@ -26,19 +26,27 @@ class PostProcessor(): if archive_path: extr = job.extractor archive_path = util.expand_path(archive_path) - if not prefix: - prefix = "_" + self.name.upper() + "_" - archive_format = ( - options.get("archive-prefix", extr.category) + - options.get("archive-format", prefix + extr.archive_fmt)) + + archive_prefix = options.get("archive-prefix") + if archive_prefix is None: + archive_prefix = extr.category + + archive_format = options.get("archive-format") + if archive_format is None: + if prefix is None: + prefix = "_" + self.name.upper() + "_" + archive_format = prefix + extr.archive_fmt + try: if "{" in archive_path: archive_path = formatter.parse(archive_path).format_map( job.pathfmt.kwdict) self.archive = archive.DownloadArchive( - archive_path, archive_format, + archive_path, + archive_prefix + archive_format, options.get("archive-pragma"), - "_archive_" + self.name) + "_archive_" + self.name, + ) except Exception as exc: self.log.warning( "Failed to open %s archive at '%s' (%s: %s)",