Wählen Sie E-Mails aus dem Posteingang allein über poplib
Frage
Ich brauche E-Mails aus dem Posteingang mit gmail poplib.Unfortunately nur ich jede Option nicht sehen, herunterladen allein wählen Posteingang und poplib gibt mir E-Mails von Gesendete Objekte zu.
Wie wähle ich E-Mails nur vom Posteingang?
Ich möchte nicht jeden googelmail spezifische Bibliotheken verwenden.
Lösung
POP3 hat kein Konzept von ‚Ordner‘. Wenn gmail Sie zeigt sowohl ‚geschickt‘ sowie ‚‘ empfangen Mail, dann wirklich Sie keine Möglichkeit haben, aber alle diese E-Mail zu erhalten.
Vielleicht würden Sie besser dran, IMAP4 anstelle von POP3. Python hat Bibliotheken, die mit gmail der IMAP4-Server arbeiten.
Andere Tipps
Ich nehme an, Sie POP3 / IMAP-Zugriff auf Ihr Google Mail-Konto aktiviert haben.
Dies ist ein Beispielcode:
import imaplib
conn= imaplib.IMAP4_SSL('imap.googlemail.com')
conn.login('yourusername', 'yourpassword')
code, dummy= conn.select('INBOX')
if code != 'OK':
raise RuntimeError, "Failed to select inbox"
code, data= self.conn.search(None, ALL)
if code == 'OK':
msgid_list= data[0].split()
else:
raise RuntimeError, "Failed to get message IDs"
for msgid in msgid_list:
code, data= conn.fetch(msgid, '(RFC822)')
# you can also use '(RFC822.HEADER)' only for headers
if code == 'OK':
pass # your code here
else:
raise RuntimeError, "could not retrieve msgid %r" % msgid
conn.close()
conn.logout()
oder so etwas.
Dieser Java-Code würde vorschlagen, dass Sie einen bestimmten „Ordner“ wählen können herunterladen, auch wenn POP3 verwenden. Auch hier wird mit diesem Java, Python nicht so YMMV.