您的具体问题的代码是:
import exiftool
et = exiftool.ExifTool("C:\Users\...\exiftool.exe")
et.execute("-GPSLongitude=10.0", "picture.jpg")
et.execute("-GPSLatitude=5.78", "picture.jpg")
et.execute("-GPSAltitude=100", "picture.jpg")
et.terminate()
或者,您可以省略terminate
使用时调用with
陈述:
with exiftool.ExifTool("C:\Users\...\exiftool.exe") as et:
et.execute("-GPSLongitude=10.0", "picture.jpg")
et.execute("-GPSLatitude=5.78", "picture.jpg")
et.execute("-GPSAltitude=100", "picture.jpg")
使用with
语句确保子进程被杀死,请参阅PyExif工具文档
如果您想要更改日期(创建、修改等),请确保省略日期本身周围的引号。这就是我花了一段时间才弄清楚的原因,因为没有发生错误处理:
命令行:
exiftool -FileModifyDate="2015:10:01 10:00:00" picture.jpg
Python:
et.execute("-FileModifyDate=2015:10:01 10:00:00", "picture.jpg")