#!/usr/bin/env python # -*- coding: utf-8 -*- """API pour envoyer facilement un mail en python Author: Vincent Le Gallic """ # Librairie de communication SMTP import smtplib from email.mime.text import MIMEText from email import Charset Charset.add_charset('utf-8', Charset.QP, Charset.QP, 'utf-8') def sendmail(emetteur, destinataires, objet, message, cc=[], more_headers={}, debug=False): """Envoie un mail en utilisant la commande sendmail""" mail = MIMEText(message, "plain", "utf-8") mail["From"] = emetteur mail["To"] = u", ".join(destinataires) mail["Subject"] = objet more_headers["X-Mailer"] = more_headers.get("X-Mailer", "/usr/scripts/utils/sendmail.py") for k in more_headers.keys(): mail[k] = more_headers[k] if cc != []: mail["Cc"] = u", ".join(cc) if debug: print mail.as_string() else: s = smtplib.SMTP('smtp.adm.crans.org') s.sendmail(emetteur, destinataires, mail.as_string()) s.quit() if __name__ == "__main__": print "Exemple d'utilisation :" print ">>> import sendmail" print '>>> sendmail.sendmail("passoire@crans.org", ["nobody@crans.org", "root@crans.org"], "[Test] Envoi de mail", "Ceci est un message envoyé par un script.\\n-- \\nsendmail.py")'