Comment envoyer du contenu d'e-mail émotionnel et des pièces jointes en Python

王林
Libérer: 2023-05-18 11:28:53
avant
1016 Les gens l'ont consulté

1. Préparation

Avant de commencer, nous devons préparer certaines choses. Tout d’abord, nous devons installer Python. Python peut être téléchargé sur le site officiel.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Deuxièmement, nous devons installer la bibliothèque smtplib. Cela peut être fait dans le terminal avec la commande suivante :

pip install smtplib
Copier après la connexion

2. Créer un email

Avant d'envoyer un email, nous devons créer un email. Pour cela, nous devons utiliser la bibliothèque de messagerie de Python.

Cette bibliothèque nous permet de créer différents types d'e-mails, y compris ceux au format HTML.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Voici un programme Python simple pour créer un email au format HTML :

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
# 创建一个带有HTML正文的新电子邮件
msg = MIMEMultipart()
msg['From'] = 'sender@example.com'
msg['To'] = 'receiver@example.com'
msg['Subject'] = 'HTML邮件'
# HTML正文
html = """
<html>
<body>
<h2>这是一个HTML邮件</h2>
<p>这是一个演示如何发送HTML格式电子邮件的示例。</p >
</body>
</html>
"""
# 将HTML正文添加到电子邮件中
msg.attach(MIMEText(html, &#39;html&#39;))
# 使用SMTP服务器发送电子邮件
server = smtplib.SMTP(&#39;smtp.gmail.com&#39;, 587)
server.starttls()
server.login(&#39;sender@example.com&#39;, &#39;password&#39;)
server.sendmail(&#39;sender@example.com&#39;, &#39;receiver@example.com&#39;, msg.as_string())
server.quit()
Copier après la connexion
Copier après la connexion

Dans cet exemple, nous introduisons d'abord les modules nécessaires : smtplib, MIMEMultipart et MIMEText.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Ensuite, nous créons une instance MIMEMultipart et définissons des en-têtes d'e-mail. L'étape suivante consiste à créer un corps HTML, puis à l'ajouter à l'e-mail à l'aide de MIMEText.

Enfin, nous utilisons le serveur SMTP pour envoyer l'e-mail.

3.Envoyer un e-mail

Après avoir créé l'e-mail, nous devons l'envoyer à l'aide d'un serveur SMTP.

Le serveur SMTP est un protocole utilisé pour l'envoi d'e-mails. En Python, vous pouvez utiliser le module smtplib pour envoyer des emails.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Voici un programme Python simple pour envoyer un e-mail au format HTML :

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
# 创建一个带有HTML正文的新电子邮件
msg = MIMEMultipart()
msg[&#39;From&#39;] = &#39;sender@example.com&#39;
msg[&#39;To&#39;] = &#39;receiver@example.com&#39;
msg[&#39;Subject&#39;] = &#39;HTML邮件&#39;
# HTML正文
html = """
<html>
<body>
<h2>这是一个HTML邮件</h2>
<p>这是一个演示如何发送HTML格式电子邮件的示例。</p >
</body>
</html>
"""
# 将HTML正文添加到电子邮件中
msg.attach(MIMEText(html, &#39;html&#39;))
# 使用SMTP服务器发送电子邮件
server = smtplib.SMTP(&#39;smtp.gmail.com&#39;, 587)
server.starttls()
server.login(&#39;sender@example.com&#39;, &#39;password&#39;)
server.sendmail(&#39;sender@example.com&#39;, &#39;receiver@example.com&#39;, msg.as_string())
server.quit()
Copier après la connexion
Copier après la connexion

Dans cet exemple, nous créons d'abord un nouvel objet MIMEMultipart et définissons des en-têtes d'e-mail.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Ensuite, nous générons un corps HTML et l'ajoutons à l'e-mail à l'aide de MIMEText. Enfin, nous utilisons un serveur SMTP pour envoyer des emails.

4. Ajouter des pièces jointes

En plus du corps HTML, nous pouvons également ajouter des pièces jointes à l'e-mail. Pour cela, nous devons utiliser la bibliothèque de messagerie de Python.

Voici un programme Python simple pour ajouter des pièces jointes à un e-mail au format HTML :

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
# 创建一个带有HTML正文和图片附件的新电子邮件
msg = MIMEMultipart()
msg[&#39;From&#39;] = &#39;sender@example.com&#39;
msg[&#39;To&#39;] = &#39;receiver@example.com&#39;
msg[&#39;Subject&#39;] = &#39;HTML邮件&#39;
# HTML正文
html = """
<html>
<body>
<h2>这是一个HTML邮件</h2>
<p>这是一个演示如何发送HTML格式电子邮件的示例。</p >
<p>下面是一张图片:</p >
< img src="cid:image1">
</body>
</html>
"""
# 将HTML正文添加到电子邮件中
msg.attach(MIMEText(html, &#39;html&#39;))
# 添加图片附件
with open(&#39;image.png&#39;, &#39;rb&#39;) as f:
    img_data = f.read()
img = MIMEImage(img_data)
img.add_header(&#39;Content-ID&#39;, &#39;<image1>&#39;)
msg.attach(img)
# 使用SMTP服务器发送电子邮件
server = smtplib.SMTP(&#39;smtp.gmail.com&#39;, 587)
server.starttls()
server.login(&#39;sender@example.com&#39;, &#39;password&#39;)
server.sendmail(&#39;sender@example.com&#39;, &#39;receiver@example.com&#39;, msg.as_string())
server.quit()
Copier après la connexion

Dans cet exemple, nous créons d'abord un nouvel objet MIMEMultipart et définissons des en-têtes d'e-mail.

Ensuite, nous allons créer un corps HTML et le joindre à l'e-mail en utilisant MIMEText. Ensuite, nous ajoutons une image jointe à l'aide de MIMEImage et la lions au corps HTML à l'aide de Content-ID.

Comment envoyer du contenu de-mail émotionnel et des pièces jointes en Python

Enfin, nous utilisons le serveur SMTP pour envoyer des emails.

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!