Hallo,
ich schreibe gerade ein Programm, was den Anhang einer Mail auslesen soll und ihn dann an ein anderes Programm weitergibt..
Ich habe im Internet bis jetzt keine Lösung gefunden um den Anhang einzeln zu bekommen
Ich hoffe jemand von euch kann mir weiterhelfen
Vielen Dank im Vorraus
Nicolas
Mail mit Anhang versenden
Hi MotD,
ich habe hier mal ein altes Python Programm ausgebuddelt, welches eine E-Mail über stdin liest und ein angehängtes PDF ins aktuelle Arbeitsverzeichnis abspeichert. Das solltest Du für Deine Zwecke aufbohren können:
hth
kaschu
ich habe hier mal ein altes Python Programm ausgebuddelt, welches eine E-Mail über stdin liest und ein angehängtes PDF ins aktuelle Arbeitsverzeichnis abspeichert. Das solltest Du für Deine Zwecke aufbohren können:
Code: Alles auswählen
#!/usr/bin/env python
import os, sys
import email, mimetypes
def savemail():
msg = email.message_from_file(sys.stdin)
for part in msg.walk():
if part.get_content_maintype() == 'multipart':
continue
filename = part.get_filename()
if filename and filename.endswith(".pdf") :
fp = open(filename, 'wb')
fp.write(part.get_payload(decode=1))
fp.close()
if __name__ == '__main__':
savemail()
kaschu
Hi,
da hatte ich mal das hier geschrieben:
http://www.linux-club.de/viewtopic.php?t=78046
(am Ende). Das scheint erstaunlich beliebt zu sein, jedenfalls habe ich dazu schon mehrfach Email-Feedback erhalten.
Die Zeile
sollte allerdings
lauten, sonst gibt's Codingprobleme. Leider kann ich das nicht auf der anderen Seite ändern, weil der Thread dort gesperrt ist (hatte das dem Moderator dort schonmal gesagt, aber er konnte es wohl irgendwie nicht entsperren).
HTH
da hatte ich mal das hier geschrieben:
http://www.linux-club.de/viewtopic.php?t=78046
(am Ende). Das scheint erstaunlich beliebt zu sein, jedenfalls habe ich dazu schon mehrfach Email-Feedback erhalten.
Die Zeile
Code: Alles auswählen
attachedcontents.append(part.get_payload())
Code: Alles auswählen
attachedcontents.append(part.get_payload(decode = True))
HTH