Проблема
У меня электронное письмо, в котором у меня проблемы с чтением в Python с правильной кодировкой, хотя Outlook может правильно его прочитать.
Чтение сообщения
import email
message = email.message_from_file(open('/path/to/file.eml'))
Пример
Это часть электронного письма, которое должно быть расшифровано как "Denne her får du":
Content-Type: text/plain;
charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Denne=20her=20f=EF=BF=BDr=20du
Когда я декодирую его с помощью UTF-8, я получаю следующее:
import quopri
mystring = 'Denne=20her=20f=EF=BF=BDr=20du'
decoded_string = quopri.decodestring(mystring)
print(decoded_string.decode('utf-8'))
>Denne her f�r du
Когда я просто открываю электронное письмо в Outlook, я получаю:
"Denne her får du"
Как правильно его декодировать?
Есть ли где-то еще в электронном письме, что я вижу правильную кодировку? Там должно быть правильно? Иначе, как Outlook может декодировать сообщение?