Ce tutoriel montre comment envoyer des e-mails à l'aide de Python et de votre compte Gmail. Parfait pour les rapports automatisés ou les notifications simples!
L'envoi de courriels à partir de scripts est incroyablement utile, en particulier pour les tâches planifiées. Imaginez recevoir des résumés automatisés des données traitées par vos scripts, garantissant que tout fonctionne bien. Alors que des services comme SendGrid, Mandrill et Mailgun proposent des solutions robustes pour l'envoi d'e-mails à grande échelle, l'utilisation directement de Gmail est une approche plus simple pour les besoins personnels ou à petite échelle.
Bien que Google fournit une API Gmail, une méthode plus simple utilise les modules intégrés smtplib
et email
de Python. Cela évite la configuration complexe de l'API. Cependant, n'oubliez pas que l'envoi de courriels de masse de cette façon n'est pas recommandé; Pour les grands volumes, les services de messagerie dédiés sont bien supérieurs.
Configuration des mots de passe de l'application:
Avant de commencer, vous devrez générer un mot de passe d'application pour votre compte Gmail. Cela améliore la sécurité. Accédez aux paramètres des mots de passe de l'application de votre compte Google, sélectionnez "mail" comme application, "autre (nom personnalisé)" comme appareil, et créez un nom descriptif (par exemple, "mon script Python"). Enregistrez ce mot de passe généré - il est crucial pour l'authentification.
codage de l'e-mail:
Crétons un e-mail simple en utilisant Python:
email_text = f""" Hi! This is a test email from my Python script. The result of 1 + 2 is: {1 + 2} Regards, Your Script """ GMAIL_USERNAME = "your_gmail_address" # Replace with your Gmail address GMAIL_APP_PASSWORD = "your_app_password" # Replace with your App Password recipients = ["recipient_email@example.com"] # Replace with recipient's email msg = MIMEText(email_text) msg["Subject"] = "Python Email Test" msg["To"] = ", ".join(recipients) msg["From"] = f"{GMAIL_USERNAME}@gmail.com" smtp_server = smtplib.SMTP_SSL('smtp.gmail.com', 465) smtp_server.login(GMAIL_USERNAME, GMAIL_APP_PASSWORD) smtp_server.sendmail(msg["From"], recipients, msg.as_string()) smtp_server.quit()
N'oubliez pas de remplacer les espaces réservés comme your_gmail_address
, your_app_password
et recipient_email@example.com
par vos détails réels.
Ce code définit le contenu des e-mails, définit les informations du destinataire et de l'expéditeur et utilise smtplib
pour se connecter au serveur SMTP de Gmail, se connecter en toute sécurité à l'aide de votre mot de passe d'application et envoyer l'e-mail. La gestion des erreurs et la validation des entrées sont omises pour la concision, mais sont cruciales pour les environnements de production.
Ce didacticiel est un extrait de Python utile , disponible sur les détaillants SitePoint Premium et Ebook. Pour une fonctionnalité par e-mail plus avancée (pièces jointes, e-mails HTML, etc.), consultez la ressource complète ou explorez les capacités du module email.mime
.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!