From a44fcce1c8f5f4c93928539748206c5c3350cbec Mon Sep 17 00:00:00 2001 From: LEdoian Date: Mon, 19 May 2025 03:18:15 +0200 Subject: [PATCH] =?UTF-8?q?Exif=20je=20zb=C4=9Bsilej=20standard?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- galerie/models.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/galerie/models.py b/galerie/models.py index 21181996..ae49f15a 100644 --- a/galerie/models.py +++ b/galerie/models.py @@ -123,7 +123,16 @@ class Galerie(models.Model): raise ValueError from e exif = obr.getexif() # Pokud tam není, tak si Pillow podle zdrojáků vyhaluzí prázdný. - date_str = exif.get(ExifTags.Base.DateTime, None) or exif.get(ExifTags.Base.DateTimeOriginal, None) or exif.get(ExifTags.Base.DateTimeDigitized, None) + ifd_exif = {} + if ExifTags.IFD.Exif in exif: ifd_exif = exif.get_ifd(ExifTags.IFD.Exif) + date_str = (False # zarovnání + or exif.get(ExifTags.Base.DateTimeOriginal, None) + or ifd_exif.get(ExifTags.Base.DateTimeOriginal, None) + or exif.get(ExifTags.Base.DateTime, None) + or ifd_exif.get(ExifTags.Base.DateTime, None) + or exif.get(ExifTags.Base.DateTimeDigitized, None) + or ifd_exif.get(ExifTags.Base.DateTimeDigitized, None) + ) if date_str is None: continue dt = datetime.strptime(date_str, EXIF_DATETIME_FMT) poradi = int(dt.strftime("1%d%H%M%S"))