Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

Quand on parle de Python, il est difficile d'ignorer à quel point les fonctionnalités se propagent et ce que vous pouvez réaliser avec seulement quelques morceaux de code. Aujourd'hui, envoyer et recevoir des e-mails est la chose la plus pertinente, et l'automatisation des e-mails de Python dans Microsoft Outlook rend les choses plus pratiques.

Pourquoi passer des moments interminables à compiler des e-mails sur un client de messagerie alors que vous pouvez laisser Python le faire pour vous en une seule instance? Si vous êtes intrigué, vous devez lire la suite pour voir comment vous pouvez envoyer des e-mails automatisés à partir de Python à l'aide de Microsoft Outlook.

Remplir quelques prérequis

Compte tenu des deux principales plates-formes référencées dans ce guide, ce sont les conditions préalables à l'activation de cette tâche simple mais utile. Pour commencer, téléchargez et installez les éléments suivants :

instagram viewer

  • Microsoft Outlook: L'application MS Outlook doit être installée et en cours d'exécution sur votre système. Vous pouvez utiliser n'importe quel domaine de messagerie avec Outlook, car il n'y a aucune restriction concernant les configurations de messagerie.
  • win32com.client: Cette librairie tierce est indispensable pour se connecter à vos applications Microsoft. Étant donné que Microsoft Outlook est l'une de ces applications, vous avez besoin de cette bibliothèque dans Python pour vous connecter au serveur d'échange Outlook.

Microsoft Outlook est l'un des clients de messagerie les plus anciens et les plus utilisés, qui se classe dans la liste des les fournisseurs de messagerie les plus populaires après Gmail et Yahoo. Dans ce guide, une adresse Gmail est configurée dans Outlook.

win32com.client fait partie intégrante de ce code et vous avez besoin d'une bibliothèque entièrement fonctionnelle pour établir une connexion entre Microsoft Outlook et Python.

Avant l'installation, vous pouvez vérifier si win32com est déjà installé sur votre machine. Certaines versions de l'IDE proposent ce package par défaut. Vous pouvez vérifier s'il est disponible avec la commande suivante.

python -m pip montrer pywin32

Si vous obtenez une erreur 'pip' n'est pas reconnu comme une commande interne ou externe lors de l'exécution de la commande ci-dessus, vous pouvez installer pip sur Windows, Mac et Linux, pour vous assurer que les installations de votre bibliothèque sont transparentes.

Après avoir exécuté la commande ci-dessus, si vous recevez un numéro de version, vous n'avez pas besoin de l'installer à nouveau.

Par la suite, si vous obtenez le message d'erreur suivant, vous devez installer le win32com bibliothèque sur votre système :

'pywin32'estpas reconnu comme un interne ou commande externe, programme utilisable, ou fichier de commandes.

Ouvrez l'invite et saisissez le pépin commande pour installer la bibliothèque à partir de la fenêtre du terminal.

python -m pip installer pywin32

Suivez les instructions à l'écran pour terminer le processus. Vous pouvez utiliser le --montrer commande post-installation pour vérifier si win32com est installé avec succès sur votre système.

python -m pip montrer pywin32

Envoi d'e-mails à partir de Python à l'aide d'Outlook

Puisque les prérequis sont pris en charge, il est temps de commencer à écrire le code. Pour commencer, vous devez importer le win32com.client bibliothèque à l'aide de la importer déclaration.

importer win32com.client

Vous pouvez maintenant écrire du code pour connecter Python et l'application de messagerie de Microsoft, Outlook.

ol = win32com.client. Expédition('Perspectives. Application')

Où:

  • ol: Nouvelle variable pour stocker la référence de connexion.
  • win32com.client: bibliothèque Windows pour établir une connexion entre Python et Outlook.
  • Expédition: Fonction pour créer la connexion.
  • Perspectives. Application: Il peut être remplacé par n'importe quel nom d'application Microsoft, si nécessaire.

Ensuite, il est nécessaire de définir les dimensions du nouveau message électronique afin que Python comprenne où le contenu doit être mis à jour.

# taille du nouvel e-mail
olmailitem = 0x0

Où:

  • olmailitem: Nouvelle variable pour stocker les dimensions.
  • 0x0: Dimensions du nouveau message électronique dans la mémoire de Python.

Les fonctions de Python ouvrent un nouvel élément d'e-mail dès que vous définissez les dimensions du corps de l'e-mail.

newmail = ol. Créer un élément (olmailitem)

Où:

  • nouveau courrier: Nouvelle variable pour stocker la nouvelle référence email.
  • ol: Référence de la connexion précédemment créée entre Python et Outlook.
  • Créer un élément (olmailitem): Commande pour créer un nouveau brouillon d'e-mail.

Étant donné que chaque e-mail est incomplet sans ligne d'objet, vous pouvez le définir dans le code afin que Python l'ajoute automatiquement avant d'envoyer l'e-mail au destinataire. Cela sera visible pour le destinataire, alors faites attention à la façon dont vous définissez le cas et le contenu.

nouveau courrier. Sujet = "Tester le courrier"

Où:

  • nouveau courrier:Variable de stockage de la nouvelle référence de l'envoi.
  • Sujet: cela peut varier en fonction de ce que vous souhaitez avoir comme sujet de votre e-mail.

Vous pouvez ajouter les destinataires prévus dans le Pour et CC mots-clés comme suit :

nouveau courrier. À = '[email protected]'
nouveau courrier. CC = '[email protected]'

Où:

  • Pour: Adresse e-mail du destinataire principal.
  • CC: destinataires d'e-mails copiés.

Avec Python, vous pouvez envoyer des e-mails à plusieurs destinataires. Ajouter un point-virgule (;) séparateur entre les identifiants de messagerie dans la colonne À/CC.

Enfin, une fois que vous avez défini l'objet et les destinataires, vous pouvez ajouter le corps de l'e-mail au nouvel élément de courrier avant de l'envoyer aux destinataires dans le Pour et CC Colonnes.

nouveau courrier. Corps= "Bonjour, ceci est un e-mail de test pour montrer comment envoyer des e-mails depuis Python et Outlook."

Pour ajouter des pièces jointes à votre e-mail, vous pouvez utiliser les commandes suivantes :

attacher = 'C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx'
nouveau courrier.Pièces jointes.Ajouter(attacher)

Lorsque l'e-mail est prêt à être envoyé, vous pouvez utiliser deux options. Si vous souhaitez avoir un aperçu de votre e-mail avant de l'envoyer aux destinataires, vous pouvez utiliser le Afficher() commande comme suit :

nouveau courrier.Afficher()

Vous pouvez utiliser le Envoyer() commande si vous souhaitez envoyer l'e-mail sans l'examiner au préalable.

nouveau courrier.Envoyer()

N'oubliez pas que vous ne verrez pas d'aperçu de l'e-mail si vous utilisez le Envoyer commande directement. Utilisez cette commande à bon escient si vous modifiez régulièrement le contenu du corps de votre e-mail. Vous pouvez utiliser le code Python en une seule fois pour importer la bibliothèque, établir la connexion et envoyer les e-mails rapidement.

Voici le code complet :

importer win32com.client
ol=win32com.client. Expédition("application.outlook")
olmailitem=0x0#taille du nouvel e-mail
newmail=ol. Créer un élément (olmailitem)
nouveau courrier. Sujet = "Tester le courrier"
nouveau courrier. À='[email protected]'
nouveau courrier. CC='[email protected]'
nouveau courrier. Corps= "Bonjour, ceci est un e-mail de test pour montrer comment envoyer des e-mails depuis Python et Outlook."
# attach='C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx'
# nouveau courrier.Pièces jointes.Ajouter(attacher)
# Pour afficher le mail avant de l'envoyer
# nouveau message. Afficher()
nouveau courrier.Envoyer()

Avantages de l'automatisation des e-mails Python

L'automatisation des e-mails Python vous permet d'envoyer des e-mails directement depuis votre interface Python sans ouvrir MS Outlook. Si vous êtes un utilisateur passionné de Python et que vous n'aimez pas trop ouvrir un client de messagerie à plusieurs reprises pour taper des e-mails, vous pouvez laisser le langage de programmation le faire pour vous.

Pourquoi passer des heures à effectuer des tâches répétitives, alors que vous pouvez envoyer des e-mails automatisés en utilisant Python avec quelques lignes de code ?