首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何用python添加嵌入邮件正文的图片?

在Python中添加嵌入邮件正文的图片可以通过使用MIME(Multipurpose Internet Mail Extensions)模块来实现。以下是一个完整的示例代码:

代码语言:txt
复制
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage

# 创建MIMEMultipart对象作为邮件容器
msg = MIMEMultipart()

# 设置邮件主题、发件人、收件人
msg['Subject'] = '邮件主题'
msg['From'] = '发件人邮箱'
msg['To'] = '收件人邮箱'

# 创建HTML邮件正文
html = """
<html>
<body>
<p>这是一封带有嵌入图片的邮件。</p>
<p>图片演示:</p>
<img src="cid:image1">
</body>
</html>
"""

# 创建HTML邮件正文的MIMEText对象
html_part = MIMEText(html, 'html')

# 将HTML邮件正文添加到MIMEMultipart对象中
msg.attach(html_part)

# 读取图片文件并创建MIMEImage对象
with open('image.jpg', 'rb') as f:
    image = MIMEImage(f.read())

# 定义图片ID,在HTML正文中引用
image.add_header('Content-ID', '<image1>')
msg.attach(image)

# 发送邮件
smtp = smtplib.SMTP()
smtp.connect('smtp.qq.com', 25)  # 这里使用腾讯企业邮箱的SMTP服务器地址和端口
smtp.login('发件人邮箱', '邮箱授权码')
smtp.sendmail('发件人邮箱', '收件人邮箱', msg.as_string())
smtp.quit()

上述代码中,我们首先创建了一个MIMEMultipart对象作为邮件容器,并设置了邮件的主题、发件人和收件人。然后,我们创建了HTML邮件正文,并将其添加到MIMEMultipart对象中。接下来,我们读取图片文件并创建了一个MIMEImage对象,并为其定义了一个唯一的ID,以便在HTML正文中引用。最后,我们使用SMTP协议发送邮件。

请注意,上述代码中的发件人邮箱、收件人邮箱、SMTP服务器地址和端口需要根据实际情况进行修改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券