diff options
| author | 2023-03-13 02:07:49 -0400 | |
|---|---|---|
| committer | 2023-03-13 02:07:49 -0400 | |
| commit | 10987f08f8b6c510ba64f4b42d95ba67eec6e5b0 (patch) | |
| tree | 1af82cad9ac859a70cafc976a980280b939cfcc7 /gallery_dl/postprocessor/exec.py | |
| parent | 919f8ba16a7b82ba1099bd25b2c61c7881a05aa2 (diff) | |
New upstream version 1.25.0.upstream/1.25.0
Diffstat (limited to 'gallery_dl/postprocessor/exec.py')
| -rw-r--r-- | gallery_dl/postprocessor/exec.py | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/gallery_dl/postprocessor/exec.py b/gallery_dl/postprocessor/exec.py index cc217c3..e81c6cf 100644 --- a/gallery_dl/postprocessor/exec.py +++ b/gallery_dl/postprocessor/exec.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -# Copyright 2018-2021 Mike Fährmann +# Copyright 2018-2023 Mike Fährmann # # 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 @@ -43,11 +43,18 @@ class ExecPP(PostProcessor): events = events.split(",") job.register_hooks({event: execute for event in events}, options) + self._init_archive(job, options) + def exec_list(self, pathfmt, status=None): if status: return + archive = self.archive kwdict = pathfmt.kwdict + + if archive and archive.check(kwdict): + return + kwdict["_directory"] = pathfmt.realdirectory kwdict["_filename"] = pathfmt.filename kwdict["_path"] = pathfmt.realpath @@ -55,10 +62,17 @@ class ExecPP(PostProcessor): args = [arg.format_map(kwdict) for arg in self.args] self._exec(args, False) + if archive: + archive.add(kwdict) + def exec_string(self, pathfmt, status=None): if status: return + archive = self.archive + if archive and archive.check(pathfmt.kwdict): + return + if status is None and pathfmt.realpath: args = self.args.replace("{}", quote(pathfmt.realpath)) else: @@ -66,6 +80,9 @@ class ExecPP(PostProcessor): self._exec(args, True) + if archive: + archive.add(pathfmt.kwdict) + def _exec(self, args, shell): self.log.debug("Running '%s'", args) retcode = subprocess.Popen(args, shell=shell).wait() |
