使用MIMEText()模块在Python中编写带中文字符的邮件标题
发布时间:2024-01-18 10:40:29
在Python中发送具有中文字符的邮件标题的步骤如下:
1. 导入必要的模块:
import smtplib from email.mime.text import MIMEText from email.header import Header
2. 设置发件人、收件人和邮件主题:
sender = 'from@example.com' receiver = 'to@example.com' subject = '这是一个带有中文字符的邮件标题'
3. 创建邮件正文对象,并指定编码为utf-8:
message = MIMEText('邮件内容', 'plain', 'utf-8')
4. 设置邮件主题(标题):
message['Subject'] = Header(subject, 'utf-8')
5. 设置发件人和收件人:
message['From'] = Header(sender, 'utf-8') message['To'] = Header(receiver, 'utf-8')
6. 创建SMTP对象并登录到发件人的邮箱:
smtpObj = smtplib.SMTP('smtp.example.com', 25)
smtpObj.login('your-email@example.com', 'your-email-password')
7. 发送邮件:
smtpObj.sendmail(sender, receiver, message.as_string())
以下是一个完整的示例代码:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
sender = 'from@example.com'
receiver = 'to@example.com'
subject = '这是一个带有中文字符的邮件标题'
message = MIMEText('邮件内容', 'plain', 'utf-8')
message['Subject'] = Header(subject, 'utf-8')
message['From'] = Header(sender, 'utf-8')
message['To'] = Header(receiver, 'utf-8')
smtpObj = smtplib.SMTP('smtp.example.com', 25)
smtpObj.login('your-email@example.com', 'your-email-password')
smtpObj.sendmail(sender, receiver, message.as_string())
print("邮件发送成功")
请注意替换示例代码中的发件人、收件人、SMTP服务器和相应的登录凭据。
