exif-py是一个纯python实现的获取图片元数据的python库,官方下载地址:
http://exif-py.svn.sourceforge.net/viewvc/exif-py/source/EXIF.py?revision=19&view=markup
脚本分享网 http://www.75271.com 也提供exif-py库的下载,可以从附件下载库的源代码加入到你的项目即可。
下面的代码演示的是调用方法。
# library test/debug function (dump given files) if __name__ == '__main__': import sys import getopt # parse command line options/arguments try: opts, args = getopt.getopt(sys.argv[1:], "hqsdt:v", ["help", "quick", "strict", "debug", "stop-tag="]) except getopt.GetoptError: usage(2) if args == []: usage(2) detailed = True stop_tag = 'UNDEF' debug = False strict = False for o, a in opts: if o in ("-h", "--help"): usage(0) if o in ("-q", "--quick"): detailed = False if o in ("-t", "--stop-tag"): stop_tag = a if o in ("-s", "--strict"): strict = True if o in ("-d", "--debug"): debug = True # output info for each file for filename in args: try: file=open(filename, 'rb') except: print "'%s' is unreadable\n"%filename continue print filename + ':' # get the tags data = process_file(file, stop_tag=stop_tag, details=detailed, strict=strict, debug=debug) if not data: print 'No EXIF information found' continue x=data.keys() x.sort() for i in x: if i in ('JPEGThumbnail', 'TIFFThumbnail'): continue try: print ' %s (%s): %s' % \ (i, FIELD_TYPES[data[i].field_type][2], data[i].printable) except: print 'error', i, '"', data[i], '"' if 'JPEGThumbnail' in data: print 'File has JPEG thumbnail' print
附件:源代码下载