使用pyexiv2 metadata.read()方法时出错

时间:2017-06-20 03:49:20

标签: pyexiv2

我正在尝试按照pyexiv2 tutorials page中的教程进行操作 但由于一些不明原因,它拒绝运行,我想从你那里寻求一些建议。

`#this is my code
import pyexiv2
metadata = pyexiv2.ImageMetadata('test.png')
metadata.read()`

当我尝试在终端中使用python解释器在包含图像的文件夹中运行此代码时,' test.png',给出了以下错误。

`Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/pyexiv2/metadata.py", line 107, 
in read
self.__image = self._instantiate_image(self.filename)
File "/usr/lib/python2.7/dist-packages/pyexiv2/metadata.py", line 74, 
in 
_instantiate_image
raise IOError(ENOENT, os.strerror(ENOENT), filename)
IOError: [Errno 2] No such file or directory: 'test.png'

` 这是我的设置。我正在使用macOS sierra的Mac书上的虚拟机上运行ubuntu 16.04LTS。 Python版本是2.7.12。

我使用本指南安装pyexiv2。当我检查/ usr / local / lib文件夹时,它显示libexiv2已安装在那里。 我在这做错了什么?是否有更好的版本的pyexiv2使用? 我很擅长使用p​​ython。:)并提前感谢

1 个答案:

答案 0 :(得分:0)

这可以通过两种方式解决

1)将文件test.png复制到你的python文件所在的同一个目录中。

2)提供完整的路径。例如,如果桌面上有test.png,请替换

metadata = pyexiv2.ImageMetadata('test.png')

metadata = pyexiv2.ImageMetadata('C:\\Users\\MYUSERPROFILENAME\\Desktop\\test.jpg')

其中MYUSERPROFILENAME是您的用户个人资料。希望这有帮助