Не удается сохранить данные EXIF в файл
Я пытаюсь создать приложение, которое восстанавливает исходную дату изображения (время, в которое оно было снято) по его имени, так как имя изображения содержит его дату на телефонах Android, но я не могу сохранить данные EXIF.
Никаких ошибок и т.п. это просто не спасает. Я использую PIL и piexif.
Я пробовал буквально все здесь, на Stackru и других форумах, но ни один из фрагментов кода не работал.
Мой код выглядит так:
def set_exif_tag(self, path, yr, m, d, hr):
i = iter(hr)
hr = ':'.join(a+b for a, b in zip(i, i)) # Put ":" every 2 chars
exif_ifd = {
piexif.ExifIFD.DateTimeOriginal: f"{yr}:{m}:{d} {hr}".encode(),
piexif.ExifIFD.DateTimeDigitized: f"{yr}:{m}:{d} {hr}".encode()
}
exif_dict = {"Exif": exif_ifd}
exif_bytes = piexif.dump(exif_dict)
with open(path, 'r+b'):
with Image.open(path) as img:
img.save(path, exif=exif_bytes)
print("EXIF DICT: " + str(exif_dict))
print("EXIF BYTES: " + str(bytes(exif_bytes)))