Wie man einen email Körper holt, der imaplib in Python benutzt?

Ich möchte zu Holen die gesamte Nachricht aus dem IMAP4-server.
In python docs gefunden, wenn dieses Stück code, der funktioniert:

>>> t, data = M.fetch('1', '(RFC822)')
>>> body = data[0][1]

Frage ich mich, ob ich kann immer darauf Vertrauen, dass data[0][1] liefert den Text der Nachricht. Wenn ich habe 'RFC822.GRÖßE " ich hab nur einen string anstelle eines Tupels.

Habe ich Magermilch durch rfc1730 aber ich war nicht in der Lage, um herauszufinden, die richtige Antwort-Struktur für die "RFC822'. Es ist auch schwer zu sagen, das Ergebnis abrufen Struktur von imaplib Dokumentation.

Hier ist, was ich bekommen beim abholen RFC822:

('OK', [('1 (RFC822 {858569}', 'body of the message', ')')])

Aber wenn ich fetch RFC822.SIZE ich bin immer:

('OK', ['1 (RFC822.SIZE 847403)'])

Wie soll ich richtig mit den Daten[0] Liste?
Kann ich darauf Vertrauen, dass, wenn es ist eine Liste von Tupeln Tupel hat genau 3 Teile und der zweite Teil ist die Nutzlast?

Vielleicht wissen Sie besser-Bibliothek für imap4?

InformationsquelleAutor der Frage Piotr Czapla | 2010-02-09

Schreibe einen Kommentar