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

用python发送HTML图像电子邮件

发送HTML图像电子邮件是一种通过电子邮件发送包含图像和HTML内容的邮件。Python提供了多种库和模块来实现这个功能,其中最常用的是smtplib和email库。

首先,我们需要导入相应的库和模块:

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

接下来,我们需要设置发送方和接收方的信息,包括发件人邮箱、收件人邮箱、SMTP服务器地址和端口号、发件人邮箱的登录信息等:

代码语言:txt
复制
sender_email = "sender@example.com"
receiver_email = "receiver@example.com"
smtp_server = "smtp.example.com"
smtp_port = 587
username = "sender@example.com"
password = "password"

然后,我们可以创建一个MIMEMultipart对象,用于存储邮件的各个部分,包括邮件正文和图像附件:

代码语言:txt
复制
msg = MIMEMultipart()
msg['From'] = sender_email
msg['To'] = receiver_email
msg['Subject'] = "HTML图像邮件"

接下来,我们可以创建一个MIMEText对象,用于设置邮件的HTML内容:

代码语言:txt
复制
html = """
<html>
<body>
<h1>这是一封包含图像的HTML邮件</h1>
<p>以下是一张图片:</p>
<img src="cid:image1">
</body>
</html>
"""

msg.attach(MIMEText(html, 'html'))

然后,我们可以读取图像文件,并创建一个MIMEImage对象,将图像附件添加到邮件中:

代码语言:txt
复制
with open("image.jpg", "rb") as f:
    image_data = f.read()

image = MIMEImage(image_data)
image.add_header('Content-ID', '<image1>')
msg.attach(image)

最后,我们可以使用smtplib库来发送邮件:

代码语言:txt
复制
try:
    server = smtplib.SMTP(smtp_server, smtp_port)
    server.starttls()
    server.login(username, password)
    server.sendmail(sender_email, receiver_email, msg.as_string())
    server.quit()
    print("邮件发送成功!")
except Exception as e:
    print("邮件发送失败:", str(e))

这样,我们就可以使用Python发送包含图像的HTML邮件了。

推荐的腾讯云相关产品是腾讯企业邮,它是一款基于云计算的企业级邮件服务,提供稳定可靠的邮件发送和接收功能。您可以通过以下链接了解更多信息:腾讯企业邮

请注意,以上代码仅为示例,实际使用时需要根据具体情况进行修改和调整。

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

相关·内容

没有搜到相关的合辑

领券