python - PyExifTool 是否有一种将元数据写入图像的方法?

标签 python image-processing metadata gis exiftool

我使用 ExifTool 的“-tagsFromFile”从命令行将 Exif 元数据从源图像复制到目标图像。我想在 python 脚本中做同样的事情,这就是我了解 PyExifTool 的时候。但是,我没有找到任何复制或写入目标图像的命令。我错过了什么吗?有什么办法可以解决这个问题吗?

我找到了user5008949对类似question的回答建议这样做:

import exiftool
filename = '/home/radha/src.JPG'
with exiftool.ExifTool() as et:
    et.execute("-tagsFromFile",  filename , "dst.JPG")

但是,它给了我以下错误:

Traceback (most recent call last):
  File "metadata.py", line 9, in <module>
    et.execute("-tagsFromFile",  filename , "dst.JPG")
  File "/home/radha/venv/lib/python3.6/site-packages/exiftool.py", line 221, in execute
    self._process.stdin.write(b"\n".join(params + (b"-execute\n",)))
TypeError: sequence item 0: expected a bytes-like object, str found

最佳答案

execute() 方法需要字节作为输入,并且您正在传递字符串。这就是它失败的原因。

在您的情况下,代码应如下所示:

import exiftool
filename = b"/home/radha/src.JPG"
with exiftool.ExifTool() as et:
    et.execute(b"-tagsFromFile",  filename , b"dst.JPG")

请查找this回答作为引用。

关于python - PyExifTool 是否有一种将元数据写入图像的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53880668/

相关文章:

php - 如何存储og meta标签信息?

seo - 将商店名称添加到元标题 OpenCart 1.5.4

python - 在 mysql python 中对不正确的用户输入执行验证或引发异常

python - Keras 双向 LSTM - 层分组

python - 我的这部分代码(应该从其他 python 脚本中删除 Python 2 风格的注释)没有做任何事情。为什么?

python - 在 Python、OpenCV 中使用切片从图像中提取区域

python - 如何在子进程中中断函数的执行,以使用Pyglet播放和暂停音频?

tensorflow - 如何在语义分割中删除特定标记的像素

python - Tensorflow 膨胀的行为不同于形态膨胀

java - 如何将元数据添加到html文件