Umlaute in E-Mail-Body mit email und smtplib
Verfasst: Montag 1. Oktober 2007, 13:49
Hallo,
ich möchte ganz simpel eine E-Mail verschicken, die im Body Umlaute enthält. Ich durchwühle jetzt seit 2 Stunden halb google und bin noch nicht fündig geworden...
ich hab keine ahnung, wieso im header (also im subject) die umlaute richtig angezeigt werden, im payload (also im body) nicht!?!
eigentlich ist das teil eines django-moduls, da kommen die inhalte aus einer datenbank (klaro) und es wird sogar eine exception geworfen:
'ascii' codec can't encode characters in position 4-6: ordinal not in range(128)
Allerdings auch nur bei Umlauten im Body der E-Mail.
ich möchte ganz simpel eine E-Mail verschicken, die im Body Umlaute enthält. Ich durchwühle jetzt seit 2 Stunden halb google und bin noch nicht fündig geworden...
Code: Alles auswählen
# -*- coding: utf-8 -*-
from smtplib import *
from email import *
s = SMTP("mail.b.c")
s.login("a@b.c","xxx")
msg = message.Message()
msg.set_charset("utf-8")
msg['Content-type'] = 'text/plain; charset=utf-8'
msg['Content-transfer-encoding'] = '8bit'
msg['From'] = "J <a@b.c>"
msg['Subject'] = "umlaute ö"
msg.set_payload("test ä",charset="utf-8")
msg['To'] = "M <d@e.f>"
s.sendmail(msg['From'],msg['To'],msg.as_string())
eigentlich ist das teil eines django-moduls, da kommen die inhalte aus einer datenbank (klaro) und es wird sogar eine exception geworfen:
'ascii' codec can't encode characters in position 4-6: ordinal not in range(128)
Allerdings auch nur bei Umlauten im Body der E-Mail.