Не удается сохранить данные EXIF ​​в файл - PullRequest
1 голос
/ 03 ноября 2019

Я пытаюсь создать приложение, которое восстанавливает исходную дату фотографии (время, в которое она была сделана) по ее имени, так как имя фотографии содержит дату на телефонах Android, но я не могу сохранитьДанные EXIF.
Без ошибок и т. Д. Просто не сохраняется. Я использую PIL и Piexif.

Я попробовал буквально все здесь, на Stackoverflow и других форумах, но ни один из фрагментов кода не работал.
Мой код выглядит так:

    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)))
...