Bonjour, lorsque j’utilise la commande mail ou sendmail, et que je met un accent dans le mail envoyé soit le titre ou le sujet, l’accent se transforme en des caractère blizzard, je n’arrive pas à régler le problème.
Hello,
Il faut que les textes contenant des caractères accentués soient encodés, car ils ne sont pas prévus dans les normes d’échanges de mails.
Avec la ligne de commande, ce n’est pas forcément évident à faire.
En python 3, tu peux le faire ainsi :
import smtplib
import datetime
from email.header import Header
from email.mime.text import MIMEText
#
envoyeur = 'moi@localhost.com'
destinataires = ['exemple@gmail.com']
serveur = 'localhost'
# fabrique mail
msg = MIMEText('Corps de texte en français avec caractères accentués','html','utf8')
msg['Subject'] = Header('Mail avec caractères accentués','utf8')
msg['From'] = envoyeur
msg['To'] = ','.join(destinataires)
dateNow = datetime.datetime.now()
dateFrm = dateNow.strftime('%c')
msg['Date'] = dateFrm
msgtxt = msg.as_string()
# envoi
mailserver = smtplib.SMTP(serveur)
mailserver.sendmail(envoyeur,destinataires,msgtxt)
mailserver.quit()
Il y a des tutos sur le web, mais il prennent rarement en compte ce problème.
Bon courage…