1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-25 20:22:36 +01:00

[postprocessor:metadata] first implementation (#135)

This commit is contained in:
Mike Fährmann 2019-01-05 16:39:05 +01:00
parent 1737d7f576
commit 38500ad697
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
2 changed files with 40 additions and 1 deletions

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright 2017-2018 Mike Fährmann
# Copyright 2017-2019 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
@ -268,6 +268,12 @@ def build_parser():
dest="postprocessors", const=({"name": "ugoira"},),
help="Convert Pixiv Ugoira to WebM (requires FFmpeg)",
)
postprocessor.add_argument(
"--write-metadata",
action=ConfigConstAction, nargs=0,
dest="postprocessors", const=({"name": "metadata"},),
help="Write metadata to separate JSON files",
)
parser.add_argument(
"urls",

View File

@ -0,0 +1,33 @@
# -*- coding: utf-8 -*-
# Copyright 2019 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
# published by the Free Software Foundation.
"""Write metadata to JSON files"""
from .common import PostProcessor
import json
class MetadataPP(PostProcessor):
def __init__(self, pathfmt, options):
PostProcessor.__init__(self)
self.indent = options.get("indent", 4)
self.ascii = options.get("ascii", False)
def run(self, pathfmt):
with open(pathfmt.realpath + ".json", "w") as file:
json.dump(
pathfmt.keywords,
file,
sort_keys=True,
indent=self.indent,
ensure_ascii=self.ascii,
)
__postprocessor__ = MetadataPP