def getMeta(path, args): m = Metadata(path) if args.print: print( 'getMeta: {} exif_tags, {} iptc_tags, {} xmp_tags, path {}, dateFromDirname {}' .format( len(m.get_exif_tags()), len(m.get_iptc_tags()), len(m.get_xmp_tags()), path, dateFromDirname.strftime(DATE_FORMAT) if dateFromDirname else None)) for t in m.get_tags(): # if t != 'Exif.Photo.MakerNote': # avoid big binary? item if any(x in t for x in [ 'Date', 'Image.Make', 'Model', 'Categories', 'GPS', 'Latitude', 'Longitude' ]): print('getMeta: {} -> {}'.format(t, m.get(t))) if any(x in t for x in [ 'Tags', 'LastKeywordXMP', 'HierarchicalSubject', 'CatalogSets', 'Subject', 'Keywords' ]): print('getMeta: {} => [ {} ]'.format( t, ', '.join(m.get_tag_multiple(t)))) return m