Comment automatiser vos e-mails Outlook avec Python pour une gestion efficace

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 à composer 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 intéressé, lisez la suite pour voir comment vous pouvez envoyer des e-mails automatisés à partir de Python à l’aide de Microsoft Outlook.


Remplir certains prérequis

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

  • 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.
Lire aussi :  Explorer les 5 meilleures crypto-monnaies AI à surveiller en 2023

Microsoft Outlook est l’un des clients de messagerie les plus anciens et les plus utilisés, qui dans la liste des fournisseurs de messagerie les plus populaires à Gmail et Yahoo. Ce guide configure une adresse Gmail 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.

Vérifier la version de win32com.client

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

 python -m pip show 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 Linuxpour 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 le réinstaller.

Invite de commandes Windows avec code d'authentification Python

Ensuite, si vous obtenez le message d’erreur suivant, vous avez besoin du win32com bibliothèque sur votre système :

 'pywin32' is not recognized as an internal or external command, operable program, or batch file. 

Installer la bibliothèque win32com

Ouvrez l’invite et tapez le mèche commande pour installer la bibliothèque à partir de la fenêtre du terminal.

 python -m pip install pywin32 
Commande Windows avec les commandes d'installation de Python

Suivez les instructions à l’écran pour terminer le processus. Vous pouvez le –Spectacle commande post-installation pour vérifier si win32com a été installé avec succès sur votre système.

 python -m pip show pywin32 

Envoyer des e-mails à partir de Python à l’aide d’Outlook

Puisque les conditions préalables sont remplies, il est temps de commencer à écrire le code. Pour commencer, vous devez entrer le win32com.client bibliothèque à l’aide de la importer déclaration.

 import win32com.client 

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

 ol = win32com.client.Dispatch('Outlook.Application') 

Où:

  • oh: 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.
  • Outlook.Application: Il peut être remplacé par n’importe quel nom d’application Microsoft, si nécessaire.
Code Python pour importer la bibliothèque dans Jupyter Notebook

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.

 
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 une fois que vous avez défini les dimensions du corps de l’e-mail.

 newmail = ol.CreateItem(olmailitem) 

Où:

  • nouveau poste: Nouvelle variable pour stocker la nouvelle référence email.
  • oh: 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.

 newmail.Subject = 'Testing Mail' 

Où:

  • nouveau poste: Variable pour stocker la nouvelle référence de positem.
  • Matière: Cela peut varier en fonction de ce que vous souhaitez comme sujet pour votre e-mail.

Vous pouvez sélectionner les destinataires prévus dans le À propos de et CC mots-clés comme suit :

 newmail.To = '[email protected]'
newmail.CC = '[email protected]'

Où:

  • À propos de: 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éparation entre les identifiants de messagerie dans la colonne À/CC.

Enfin, une fois que vous avez défini le sujet et les destinataires, vous pouvez ajouter le corps de l’e-mail au nouvel élément de publication avant de l’envoyer aux destinataires dans le À propos de et CC Colonnes.

 newmail.Body= 'Hello, this is a test email to showcase how to send emails from Python and Outlook.' 

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

 attach = 'C:\\Users\\admin\\Desktop\\Python\\Sample.xlsx' 
 newmail.Attachments.Add(attach) 

Étant donné que l’e-mail est prêt à être envoyé, vous pouvez utiliser deux options. Si vous souhaitez prévisualiser votre e-mail avant de l’envoyer aux destinataires, vous pouvez utiliser le Spectacle() commande comme suit :

 newmail.Display() 

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

 newmail.Send() 

N’oubliez pas que vous ne verrez pas d’aperçu de l’e-mail si vous Envoyer affectation directe. Utilisez cette commande à bon escient si vous modifiez fréquemment 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 :

 import win32com.client
ol=win32com.client.Dispatch("outlook.application")
olmailitem=0x0
newmail=ol.CreateItem(olmailitem)
newmail.Subject= 'Testing Mail'
newmail.To='[email protected]'
newmail.CC='[email protected]'
newmail.Body= 'Hello, this is a test email to showcase how to send emails from Python and Outlook.'
# newmail.Attachments.Add(attach)
newmail.Send()
Extrait d'e-mail Outlook envoyé à l'aide de Python

Avantages de l’automatisation des e-mails Python

Python Email Automation 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 à plusieurs reprises un client de messagerie 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 ?

Mathieu

Laisser un commentaire

Publicité :