Seite 1 von 1

email modul

Verfasst: Donnerstag 25. August 2005, 12:05
von rogen
ich möchte mir email mit python anschauen .

Mit
mail = email.message_from_string(str(message))
print mail

sehe ich den ganzen code

laut print help(email)
gäbe es möglichkeiten nur den text, .... anzuschauen .

das funktioniert bei mir nicht.
mail.Message()

wie kann ich das mail parsen damit ich einzelne teile davon haben
(header, email, text , html , anhang)

mfg

gerhard rogen

Re: email modul

Verfasst: Donnerstag 25. August 2005, 12:46
von gerold
rogen hat geschrieben: das funktioniert bei mir nicht. mail.Message()
Hi!

Ich glaube das geht mit get_payload().

mfg
Gerold
:-)

Verfasst: Donnerstag 25. August 2005, 13:53
von rogen
neine da geht auch nichts

Verfasst: Donnerstag 25. August 2005, 14:19
von rayo
ich hab das mal gemacht, ich schau mal zuhause nach.

probier einfach mal for xin mail.parts(): oder so irgendetwas.
kanns dir erst später genau sagen.

hab was gefunden

Verfasst: Donnerstag 25. August 2005, 20:10
von rogen
teilt den body von header

Code: Alles auswählen

for mailanzahl in range(len(M.list()[1])):
                header,mes,octets = M.retr(mailanzahl+1)


                text = string.join(mes, "\n")
                
                
                file = StringIO.StringIO(text)

                message = rfc822.Message(file)
                typen = {}
                for k, v in message.items():
                    #print k, "=", v
                    typen.update({k:v})
                                        
                print "--------------------------------------------"

                print  message.fp.read()

Verfasst: Donnerstag 25. August 2005, 21:05
von gerold
rogen hat geschrieben:neine da geht auch nichts
Hi rogen!

Das kann doch fast nicht sein. Wie sieht denn deine Email aus?

Code: Alles auswählen

>>> s = \
... """From: g.penz@bcom.at
... To: b.penz@aon.at
... Subject: Hallo Welt
...
... Das ist
... die Nachricht.
... """
>>> import email
>>> m = email.message_from_string(s)
>>> m.items()
[('From', 'g.penz@bcom.at'), ('To', 'b.penz@aon.at'), ('Subject', 'Hallo Welt')]
>>> m.get_payload()
'Das ist\ndie Nachricht.\n'
Oder habe ich dich falsch verstanden?

mfg
Gerold
:-)