From b0e4c6501e348f3ac2c00d6a9f0d34820bce44d9 Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Mon, 6 Sep 2021 21:47:28 +0300 Subject: [PATCH] Change to pyexiv2 --- image_classifier/image_classifier.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/image_classifier/image_classifier.py b/image_classifier/image_classifier.py index d4136f3..5c216e1 100755 --- a/image_classifier/image_classifier.py +++ b/image_classifier/image_classifier.py @@ -13,8 +13,7 @@ import click import click_config_file from logging.handlers import SysLogHandler import face_recognition -import exif -from iptcinfo3 import IPTCInfo +import pyexiv2 import PIL class CustomFormatter(logging.Formatter): @@ -70,13 +69,12 @@ class image_classifier: if people: self._log.debug(f"Found {len(people)} known people in the image.") self._log.debug(json.dumps(people, indent=2)) - self.iptc_info = IPTCInfo(file, force=True) - print(f"IPTC info: {json.dumps(self.iptc_info['keywords'], indent=2)}") - with open(file, 'rb') as image_file: - exif_info = exif.Image(image_file) - print(f"EXIF info: {exif_info.get_all()}") + self.metadata = pyexiv2.ImageMetadata(file) + self.metadata.read() + print(f"IPTC keys: {self.metadata.iptc_keys}") + print(f"EXIF keys: {self.metadata.exif_keys}") + print(f"XMP keys: {self.metadata.xmp_keys}") self.append_people(people) - self.iptc_info.save() self._log.debug(f"Updated file '{file}'.") # get date self._log.debug(f"File time stamp: {self.iptc_info['Image timestamp']} (type: {type(self.iptc_info['Image timestamp'])})")