Dekodieren Sie „quoted-printable“ in PythonPython

Python-Programme
Guest
 Dekodieren Sie „quoted-printable“ in Python

Post by Guest »

Ich möchte „quoted-printable“-codierte Zeichenfolgen in Python dekodieren, aber ich scheine an einem Punkt festzustecken.

Ich rufe bestimmte E-Mails von meinem Gmail-Konto ab, basierend auf dem folgenden Code:

Code: Select all

import imaplib
import email
import quopri

mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('mail@gmail.com', '*******')
mail.list()

mail.select('"[Gmail]/All Mail"')

typ, data = mail.search(None, 'SUBJECT', '"{}"'.format('123456'))

data[0].split()

print(data[0].split())

for e_mail in data[0].split():
typ, data = mail.fetch('{}'.format(e_mail.decode()),'(RFC822)')
raw_mail = data[0][1]
email_message = email.message_from_bytes(raw_mail)
if email_message.is_multipart():
for part in email_message.walk():
if part.get_content_type() == 'text/plain':
if part.get_content_type() == 'text/plain':
body = part.get_payload()
to = email_message['To']

utf = quopri.decodestring(to)

text = utf.decode('utf-8')
print(text)
.
.
.
Wenn ich zum Beispiel „to“ ausdrucke, ist das Ergebnis dieses, wenn das „to“ Zeichen wie é,á,ó...:< enthält /p>

Code: Select all

=?UTF-8?B?UMOpdGVyIFBldMWRY3o=?=
Ich kann das ' entschlüsseln

Code: Select all

body
' in Anführungszeichen kodierte Zeichenfolge erfolgreich unter Verwendung der quopri-Bibliothek als solche:

Code: Select all

quopri.decodestring(sometext).decode('utf-8')
Aber die gleiche Logik funktioniert nicht für andere Teile der E-Mail, wie zum Beispiel „An“, „Von“, „Betreff“.

Weiß jemand einen Hinweis?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post