Envois d'email comportant des accents avec python
Bonjour,
Je cherche à pouvoir faire simplement des envois de mail groupé, génériques, mais à la fois personnalisé selon certains critères. En fait, j'y arrive correctement, et facilement, si le mail ne comporte que des caractères ASCII. Or, mes mails étant en français, il n'y a que très peu de chance pour que je n'utilise que des caractères ascii...
Avec le code suivant, j'arrive à envoyer un mail sur ma messagerie laposte.net. Mais les caractères non-ascii sont transformés en �
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| codage = 'utf-8'
msg = MIMEMultipart()
msg['From'] = 'mon_email@gmail.com'
msg['To'] = 'destinataire@laposte.net'
msg['Subject'] = 'sujet'
msg['Charset'] = codage
message = "J'espère que tu vas bien!"
msg.attach(MIMEText(message))
msg['Content-Type'] = 'text/' + message + '; charset=' + codage
try:
mailserver = smtplib.SMTP('smtp.gmail.com', 587)
mailserver.ehlo()
mailserver.starttls()
mailserver.ehlo()
mailserver.login('mon_email@gmail.com', 'mon_mot_de_passe')
try:
mailserver.sendmail('mon_email@gmail.com', 'destinataire@laposte.net', msg.as_string())
finally:
mailserver.quit()
except Exception, exc:
sys.exit( "mail failed; %s" % str(exc) ) |
Qu'ais-je fait de travers, n'ai pas fait ou n'ai pas compris ?
Milles mercis d'avance pour toutes idées et vos réponses