如何在Python中使用email.mime.text发送包含中文内容的邮件
发布时间:2024-01-11 10:31:25
在Python中,可以使用email模块中的mime.text模块来发送包含中文内容的邮件。以下是一个示例代码:
import smtplib
from email.mime.text import MIMEText
# 发件人、收件人、邮件主题和内容
sender = 'your_email@example.com' # 发件人邮箱
receiver = 'recipient_email@example.com' # 收件人邮箱
subject = '测试邮件' # 邮件主题
# 邮件内容
content = '''
<p>这是一封测试邮件。</p>
<p>中文内容可以直接在字符串中添加。</p>
<p>这封邮件将会以HTML格式显示。</p>
'''
# 创建一个MIMEText对象,将其作为邮件正文内容
msg = MIMEText(content, 'html', 'utf-8')
msg['Subject'] = subject
msg['From'] = sender
msg['To'] = receiver
# 发送邮件
try:
smtp_server = 'smtp.example.com' # 发件人邮箱的SMTP服务器地址
smtp_port = 587 # SMTP服务器端口号
username = 'your_username' # 发件人邮箱登录用户名
password = 'your_password' # 发件人邮箱登录密码
# 创建SMTP对象,连接SMTP服务器
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls() # 启用TLS加密模式
server.login(username, password) # 登录邮箱
# 发送邮件
server.sendmail(sender, receiver, msg.as_string())
print('邮件发送成功!')
# 关闭连接
server.quit()
except Exception as e:
print('邮件发送失败:', str(e))
以上代码中,需要将以下部分进行修改以适应你的实际情况:
- sender: 发件人邮箱地址
- receiver: 收件人邮箱地址
- subject: 邮件主题
- content: 邮件内容
- smtp_server: 发件人邮箱的SMTP服务器地址
- smtp_port: SMTP服务器端口号
- username: 发件人邮箱登录用户名
- password: 发件人邮箱登录密码
这样,就可以发送包含中文内容的邮件了。
