ich möchte in einer Django-Anwendung beim Hochladen von Bildern die Exif-Daten auslesen und speichern. Das funktioniert auch alles ganz schick. Nur wenn in den Exif-Daten z.B. in der Beschreibung des Bildes Umlaute enthalten sind, sieht die Ausgabe nicht gut aus. Das scheint wieder so ein Thema mit encoding/decoding zu sein und ich komme da nicht weiter.
Hier der Beispielcode:
Code: Alles auswählen
from PIL import Image, ExifTags
pic = './IMG_2019_09_21_5630.jpg'
def read_img():
with Image.open(pic) as img:
img.verify()
ef = img._getexif()
exif = {}
for (key, value) in ef.items():
exif[ExifTags.TAGS.get(key)] = value
description = exif['ImageDescription']
print(description)
description = description.encode('utf-8')
print(description)
read_img()
Zug 9005 mit Lok 99 1773-3 fährt mit dem Personenzug in Richtung Oberwiesenthal und passiert hier einen Bahnübergang in Neudorf.
Die Ausgabe der zweiten print-Anweisung ist:
b'Zug 9005 mit Lok 99 1773-3 f\xc3\x83\xc2\xa4hrt mit dem Personenzug in Richtung Oberwiesenthal und passiert hier einen Bahn\xc3\x83\xc2\xbcbergang in Neudorf.'
Hat jemand einen Hinweis für mich, wie ich den Text vernünftig lesbar darstellen kann? Das betreffende Bild zum Testen kann unter https://flic.kr/p/2hwRZeq heruntergeladen werden.
Danke und viele Grüße
Stephan