11.10 smtplib --- Client pour le protocole SMTP

Le module smtplib définit un objet session client SMTP qui peut servir à envoyer des mails à toute machine Internet disposant d'un démon SMTP ou ESMTP. Pour des détails sur le fonctionnement de SMTP et ESMTP, consultez RFC 821 (Simple Mail Transfer Protocol) et RFC 1869 (SMTP Service Extensions).

SMTP([hote[, port]])
Une instance de SMTP encapsule une connexion SMTP. Elle possède des méthodes qui gèrent un répertoire complet d'opérations SMTP et ESMTP. Si les paramètres optionnels hote et port sont fournis, la méthode SMTP connect() est appelée avec ces paramètres pendant l'initialisation. Une exception SMTPConnectError est déclenchée si l'hôte spécifié ne répond pas correctement.

En utilisation normale, vous ne devriez vous servir que des méthodes d'initialisation/connexion, de sendmail() et de quit(). Voir l'exemple ci-dessous.

Un bon nombre d'exceptions sont également définies:

SMTPException
Classe d'exception de base pour toutes les exceptions déclenchées par ce module.

SMTPServerDisconnected
Cette exception est déclenchée quand le serveur se déconnecte de façon inattendue, ou quand on tente de se servir de l'instance de SMTP avant de se connecter à un serveur.

SMTPResponseException
Classe de base pour toutes les exceptions qui incluent un code d'erreur SMTP. Ces exceptions sont générées dans une instance quand le serveur retourne un code d'erreur. Le code d'erreur est stocké dans l'attribut smtp_code de l'erreur, et l'attribut smtp_error prend comme valeur le message d'erreur.

SMTPSenderRefused
Adresse d'expéditeur refusée. En plus des attributs positionnés par toutes les exceptions SMTPResponseException, celle-ci donne à `sender' la valeur de la chaîne que le serveur SMTP a refusée.

SMTPRecipientsRefused
Toutes les adresses de destinataires sont refusées. Les erreurs pour chaque destinataire sont accessibles à travers l'attribut recipients, qui est un dictionnaire exactement du même genre que SMTP.sendmail() returns.

SMTPDataError
Le serveur SMTP a refusé d'accepter les données du message.

SMTPConnectError
Erreur survenue pendant l'établissement d'une connexion avec le serveur.

SMTPHeloError
Le serveur a refusé notre message "HELO".

Voir aussi:

RFC 821, Simple Mail Transfer Protocol
Définition de protocole pour SMTP. Ce document couvre le modèle, la procédure de fonctionnement, et des détails de protocole pour SMTP.
RFC 1869, SMTP Service Extensions
Définition des extensions ESMTP pour SMTP. Ceci décrit un cadre d'applications pour étendre SMTP avec de nouvelles commandes, et prend en charge la découverte dynamique des commandes fournies par le serveur, et définit quelques commandes additionnelles.


Sous-sections
  1. Objets SMTP
  2. Exemple SMTP