对于将来找到此线程的人,我想分享我的解决方案。我在 Python 包索引 (PyPI) 上放了一个名为imgtag
. 它允许您使用 进行基本的 XMP 主题字段标签编辑python-xmp-toolkit
,但将实际使用的所有令人沮丧的废话抽象python-xmp-toolkit
为一行命令。
为您的平台安装exempi
,然后运行
python3 -m pip install imgtag
现在您可以这样使用它:
from imgtag import ImgTag
# Open image for tag editing
test = ImgTag(
filename="test.jpg", # The image file
force_case="lower", # Converts the case of all tags
# Can be `None`, `"lower"`, `"upper"`
# Default: None
strip=True, # Strips whitespace from the ends of all tags
# Default: True
no_duplicates=True # Removes all duplicate tags (case sensitive)
# Default: True
)
# Print existing tags
print("Current tags:")
for tag in test.get_tags():
print(" Tag:", tag)
# Add tags
test.add_tags(["sleepy", "happy"])
# Remove tags
test.remove_tags(["cute"])
# Set tags, removing all existing tags
test.set_tags(["dog", "good boy"])
# Save changes and close file
test.close()
# Re-open for tag editing
test.open()
# Remove all tags
test.clear_tags()
# Delete the ImgTag object, automatically saving and closing the file
del(test)
我还没有为其他 XMP 字段(如描述、日期、创建者等)添加方法。也许有一天我会这样做,但是如果您查看源代码中现有函数的工作方式,您可能会弄清楚如何添加自己方法。如果您确实添加了更多方法,请提出拉取请求。:)