gpt4 book ai didi

python - 如何将关键字附加到 JPG 图像中的 IPTC 数据?

转载 作者:太空宇宙 更新时间:2023-11-04 04:22:26 28 4
gpt4 key购买 nike

我试图将关键字添加到 JPG 文件中的 IPTC 数据,但失败得很惨。我可以使用 iptcinfo3 库读取关键字,并且似乎可以将关键字附加到当前关键字列表中,但是当我尝试将这些关键字写回 JPG 文件时失败了,如果不是更早的话。错误消息对我来说有点不清楚,实际上可能引用了新关键字的附加(尽管打印语句似乎表明它采用了)。

我已经尝试了三个不同的元数据库(似乎没有一个标准),这是我对其中任何一个的最深入了解(甚至无法安装一个并且无法获得第二个)运行)。这看起来很基础,但我想不通,也无法调整我在网上看到的其他几个代码示例,包括 iptcinfo3 的示例代码片段。

当前的错误信息是:

| => pipenv run python editMetadata.py
WARNING: problems with charset recognition (b'\x1b')
[b'Gus']
[b'Gus', b'frog']
Traceback (most recent call last):
File "editMetadata.py", line 22, in <module>
info.save_as('Gus2.jpg')
File "/Users/Scott/.local/share/virtualenvs/editPhotoMetadata-tx0JAOmI/lib/python3.7/site-packages/iptcinfo3.py", line 635, in save_as
jpeg_parts = jpeg_collect_file_parts(fh)
File "/Users/Scott/.local/share/virtualenvs/editPhotoMetadata-tx0JAOmI/lib/python3.7/site-packages/iptcinfo3.py", line 324, in jpeg_collect_file_parts
adobeParts = collect_adobe_parts(partdata)
File "/Users/Scott/.local/share/virtualenvs/editPhotoMetadata-tx0JAOmI/lib/python3.7/site-packages/iptcinfo3.py", line 433, in collect_adobe_parts
out = [''.join(out)]
TypeError: sequence item 0: expected str instance, bytes found

代码:

from iptcinfo3 import IPTCInfo
import os


# Create new info object
info = IPTCInfo('Gus.jpg')

# Print list of keywords
print(info['keywords'])

# Append the keyword I want to add
info['keywords'].append(b'frog')

# Print to test keyword has been added
print(info['keywords'])

# Save new info to file
info.save()
info.save_as('Gus2.jpg')

最佳答案

而不是附加使用等于“=”

from iptcinfo3 import IPTCInfo

info = IPTCInfo('Gus.jpg')
print(info['keywords'])

# add keyword
info['keywords'] = ['new keyword']

info.save()
info.save_as('Gus_2.jpg')

关于python - 如何将关键字附加到 JPG 图像中的 IPTC 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54229942/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com