diff --git a/docs/configuration.rst b/docs/configuration.rst index 306ea928..72599f00 100644 --- a/docs/configuration.rst +++ b/docs/configuration.rst @@ -1134,15 +1134,16 @@ Type Default ``"file"`` Example - * ``"file,skip"`` - * ``["file", "skip"]`` + * ``"after,skip"`` + * ``["after", "skip"]`` Description `Event(s) `__ for which IDs get written to an `archive `__. - - Available events are: - ``file``, ``skip`` +Available Events + * ``file`` + * ``after`` + * ``skip`` extractor.*.archive-format diff --git a/gallery_dl/job.py b/gallery_dl/job.py index 9369e5d0..c0eb5e62 100644 --- a/gallery_dl/job.py +++ b/gallery_dl/job.py @@ -388,6 +388,8 @@ class DownloadJob(Job): if "after" in hooks: for callback in hooks["after"]: callback(pathfmt) + if archive and self._archive_write_after: + archive.add(kwdict) def handle_directory(self, kwdict): """Set and create the target directory for downloads""" @@ -593,11 +595,13 @@ class DownloadJob(Job): if events is None: self._archive_write_file = True self._archive_write_skip = False + self._archive_write_after = False else: if isinstance(events, str): events = events.split(",") self._archive_write_file = ("file" in events) self._archive_write_skip = ("skip" in events) + self._archive_write_after = ("after" in events) if skip := cfg("skip", True): self._skipexc = None