欢迎访问宙启技术站
智能推送

Python中使用email.mime.text发送HTML格式的中文邮件

发布时间:2024-01-11 10:32:57

在Python中,我们可以使用email库中的mime.text模块来发送HTML格式的中文邮件。下面是一个使用例子,该例子包含了创建邮件、设置邮件内容和发送邮件的步骤。

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

import smtplib
from email.mime.text import MIMEText
from email.header import Header

然后,我们可以创建一个SMTP对象并连接到邮件服务器:

smtp_server = 'smtp.example.com'  # 邮件服务器地址
smtp_port = 25  # 邮件服务器端口
smtp_user = 'user@example.com'  # 邮箱用户名
smtp_password = 'password'  # 邮箱授权码

server = smtplib.SMTP(smtp_server, smtp_port)
server.login(smtp_user, smtp_password)

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

subject = '这是一封HTML格式的中文邮件'  # 邮件主题
sender = 'sender@example.com'  # 发件人邮箱
receivers = ['receiver1@example.com', 'receiver2@example.com']  # 收件人邮箱

# 创建一个MIMEText对象,设置HTML格式的邮件内容
message = MIMEText('<h1>这是一封HTML格式的中文邮件</h1><p>你好,世界!</p>', 'html', 'utf-8')
message['From'] = Header(sender, 'utf-8')  # 设置发件人
message['To'] = Header(','.join(receivers), 'utf-8')  # 设置收件人
message['Subject'] = Header(subject, 'utf-8')  # 设置主题

最后,我们可以通过SMTP对象发送邮件:

server.sendmail(sender, receivers, message.as_string())
server.quit()

完整的发送邮件的代码如下:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

smtp_server = 'smtp.example.com'  # 邮件服务器地址
smtp_port = 25  # 邮件服务器端口
smtp_user = 'user@example.com'  # 邮箱用户名
smtp_password = 'password'  # 邮箱授权码

server = smtplib.SMTP(smtp_server, smtp_port)
server.login(smtp_user, smtp_password)

subject = '这是一封HTML格式的中文邮件'  # 邮件主题
sender = 'sender@example.com'  # 发件人邮箱
receivers = ['receiver1@example.com', 'receiver2@example.com']  # 收件人邮箱

message = MIMEText('<h1>这是一封HTML格式的中文邮件</h1><p>你好,世界!</p>', 'html', 'utf-8')
message['From'] = Header(sender, 'utf-8')
message['To'] = Header(','.join(receivers), 'utf-8')
message['Subject'] = Header(subject, 'utf-8')

server.sendmail(sender, receivers, message.as_string())
server.quit()

请注意,需要将邮件服务器地址、端口、发件人和收件人的邮箱地址替换为真实的值。同时,授权码和邮箱密码不同,请根据实际情况使用正确的凭据。