利用图片中的exif元数据批量查找图片中所包含的GPS信息

来源:互联网 发布:综合网络资源管理系统 编辑:程序博客网 时间:2024/04/30 07:43

在图片的exif(交换图像文件格式)中标准定义了如何存储图像和音频文件的标准,而在这些标签中往往存在了一些容易被人们忽视却又重要的东西。

有一款工具名为exiftool,可以快速的解析所有标签,并将结果显示出来。

在ubuntu中可以这样下载: apt-get install exiftool

然后我们用它来解析某张图片


而当图片数量很多的情况下,批量处理显然成为了一个难题。所以python就成了最好的工具。

此代码只处理了1.jpg 2.jpg 3.jpg 这三张图片, 而我们要在这些图片的解析结果中找到关于gps的定位信息。


显然结果只有图片二存在gps定位信息。

from PIL import Imagefrom PIL.ExifTags import TAGSdef demo(name):     exifdata = {}     imgfile = Image.open(name)     info = imgfile._getexif()     if info:         for (tag, value) in info.items():             #print str(tag) + ' : ' + str(value)             decoded = TAGS.get(tag, tag)             #print str(decoded)             exifdata[decoded] = value         exifgps = exifdata['GPSInfo']         if exifgps:             print 'it has founded ; ' + str(name) + "  " + str(exifgps)def main():    for i in range(1, 4):        s = str(i) + '.jpg'        demo(s)if __name__=='__main__':    main()