Attachement von mail lösen speichern und mail anschl löschen
Verfasst: Sonntag 5. Februar 2017, 10:30
Hallo alle zusammen,
die Anforderung wie folgt:
einloggen
attachement von mail lösen
attachement speichern
------------------------------ bis hier funktioniert alles
wenn das mail bearbeitet wurde sollte es gelöscht werden
das krieg ich nicht hin :K
ich habe nach einiger Sucherei folgendes Script gefunden ...
funktioniert super !!!
Ich schaffe es nicht das löschen hinzubekommen ....
könnte mir hier bitte wer helfen
danke
die Anforderung wie folgt:
einloggen
attachement von mail lösen
attachement speichern
------------------------------ bis hier funktioniert alles
wenn das mail bearbeitet wurde sollte es gelöscht werden
das krieg ich nicht hin :K
ich habe nach einiger Sucherei folgendes Script gefunden ...
funktioniert super !!!
Ich schaffe es nicht das löschen hinzubekommen ....
könnte mir hier bitte wer helfen
danke
Code: Alles auswählen
#!/usr/bin/env python
import poplib
import email
import os
import sys
import string
#
# attsave.py
# Check emails at PROVIDER for attachments and save them to SAVEDIR.
#
# Written by abgdf@gmx.net, 2007, License: LGPL.
#
#-------------------------------
PROVIDER = "pop.provider.tld"
USER = "username"
PASSWORD = "password"
SAVEDIR = "where to save"
#-------------------------------
def saveAttachment(mstring):
filenames = []
attachedcontents = []
msg = email.message_from_string(mstring)
for part in msg.walk():
fn = part.get_filename()
if fn <> None:
filenames.append(fn)
# decode = True eingefuegt
attachedcontents.append(part.get_payload(decode = True))
for i in range(len(filenames)):
fp = file(SAVEDIR + "/" + filenames[i], "wb")
fp.write(attachedcontents[i])
print 'Found and saved attachment "' + filenames[i] + '".'
fp.close()
try:
client = poplib.POP3(PROVIDER)
except:
print "Error: Provider not found."
sys.exit(1)
client.user(USER)
client.pass_(PASSWORD)
anzahl_mails = len(client.list()[1])
for i in range(anzahl_mails):
lines = client.retr(i + 1)[1]
mailstring = string.join(lines, "\n")
saveAttachment(mailstring)
client.quit()