Mails managen mit Python

Also für mich gerade wichtig, um den Spamfilter zu unterstützen. So wird das Skript hier auf dem Pi-Homeserver alle Stunde ausgeführt und schaut im Postfach nach entsprechenden Absendern und Substrings im Betreff. Bei Bedarf wird dann gelöscht.
Sozusagen die ganz einfache Methode, wo man ohne intelligenten Filter auf wiederkehrende Spam-Kandidaten reagiert, die – aus welchen Gründen auch immer – vom Spamfilter des Providers liegen gelassen werden.

#!/usr/bin/python
import imaplib
import email

USER = „xyz@abc.de“
PASS = „123“
SERVER = „imap.xyz.com“

mail = imaplib.IMAP4_SSL(SERVER)
mail.login(USER,PASS)

# Posteingang auswaehlen
type, data = mail.select(‚INBOX‘)

# nach bestimmtem Substring im Betreff filtern und in Liste ablegen
type, [mids] = mail.uid(’search‘, None, ‚(SUBJECT „xyzsubstring“)‘)

if mids:

    # fuer alle ermittelten Mail-IDs
    for id in mids.split():

        # Betreff ermitteln
        type, text = mail.uid(‚fetch‘,id,'(RFC822)‘)
        msg = email.message_from_string(text[0][1])
        subject = msg[’subject‘]

        # Mails in Geloeschte verschieben
        print „Loesche Mail ‚“ + id + „‚ mit Betreff: ‚“ + subject + „‚“
        mail.uid(’store‘,id,’+FLAGS‘,'(\\Deleted)‘)
        mail.expunge()

else:
    print „Keine Nachrichten dem Suchfilfter entsprechend gefunden.“

mail.close()
mail.logout()

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert