From a6c932b96130f5b1d163f6b95a2648256d4de4a9 Mon Sep 17 00:00:00 2001 From: Sewon Ahn Date: Fri, 11 Dec 2020 21:35:56 +0900 Subject: [PATCH] Fix meta error --- distribusi/distribusi/distribusi.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/distribusi/distribusi/distribusi.py b/distribusi/distribusi/distribusi.py index c149f3c..f24df3e 100644 --- a/distribusi/distribusi/distribusi.py +++ b/distribusi/distribusi/distribusi.py @@ -39,19 +39,24 @@ def thumbnail(image, name, args): try: size = (450, 450) im = Image.open(image) + exif = None + try: + for orientation in ExifTags.TAGS.keys(): + if ExifTags.TAGS[orientation] == 'Orientation': + break + exif = im._getexif() + except (AttributeError, KeyError, IndexError): + pass - for orientation in ExifTags.TAGS.keys(): - if ExifTags.TAGS[orientation] == 'Orientation': - break - exif = im._getexif() im.thumbnail(size) - if exif[orientation] == 3: - im = im.rotate(180, expand=True) - elif exif[orientation] == 6: - im = im.rotate(270, expand=True) - elif exif[orientation] == 8: - im = im.rotate(90, expand=True) + if exif is not None: + if exif[orientation] == 3: + im = im.rotate(180, expand=True) + elif exif[orientation] == 6: + im = im.rotate(270, expand=True) + elif exif[orientation] == 8: + im = im.rotate(90, expand=True) if (im.mode == 'RGBA'): bg = Image.new('RGBA', im.size, (255,255,255))