2016-08-07 40 views
0

Ich verwende imaplib, um E-Mails für mehrere Konten abzurufen (Google Mail, Yahoo ..). Was ist der beste Weg, um E-Mails lokal zu speichern (einschließlich Anhänge).E-Mail lokal speichern (imaplib, libpst)

Gibt es einen Weg zu pickle und speichern Sie E-Mails als Datei? Ist es möglich, E-Mails als Bytes zu speichern und sie später als Mail-Objekt abzurufen?

Ich werde versuchen, Mail in separaten Ordnern mit jedem Feld in JSON-Datei als separate Dateien und Anlage zu speichern, aber ich frage mich, ob es eine native Art und Weise, es zu tun ist.

Antwort

0

Es gibt bereits verschiedene Möglichkeiten zum Speichern von Postfächern (d. H. Eine Liste von E-Mails). Beliebte Beispiele sind Maildir und mbox.

Python umfasst die mailbox Modul, das sie handhaben kann:

Unterstützte mailbox Formate sind Maildir, mbox-, MH, Babyl und MMDF.

Sie können Ihre eigene Lösung natürlich rollen, beizen sie oder werfen sie als JSON in eine Datei, aber wenn Sie eine der gängigen Formate verwenden, erhalten Sie Kompatibilität mit anderen Programmen (importing them into Thunderbird, zum Beispiel).

+0

Danke. Ich werde versuchen, 'mailbox' und' imaplib' zu kombinieren. – sstevan

+0

Viel Glück. Dies sollte Ihnen helfen: http://stackoverflow.com/questions/29432981/saving-imap-messages-with-python-mailbox-module – Carsten