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

Python中使用MIMEText()模块发送带有中文内容的电子邮件

发布时间:2024-01-18 10:39:33

在Python中,我们可以使用MIMEText模块来发送包含中文内容的电子邮件。MIMEText模块是Python标准库中的一部分,用于处理邮件的内容。

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

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

接下来,我们需要设置发送方和接收方的电子邮件地址:

sender = 'example_sender@example.com'
receiver = 'example_receiver@example.com'

然后,我们可以设置电子邮件的主题和内容:

subject = '中文邮件示例'
content = '这是一封包含中文内容的邮件!'

接下来,我们需要创建MIMEText对象,并设置相关的邮件头部信息:

msg = MIMEText(content, 'plain', 'utf-8')
msg['From'] = Header(sender)
msg['To'] = Header(receiver)
msg['Subject'] = Header(subject, 'utf-8')

现在,我们可以创建SMTP连接,并发送邮件:

try:
    smtpObj = smtplib.SMTP('localhost')
    smtpObj.sendmail(sender, receiver, msg.as_string())
    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")

完整的示例代码如下:

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

sender = 'example_sender@example.com'
receiver = 'example_receiver@example.com'
subject = '中文邮件示例'
content = '这是一封包含中文内容的邮件!'

msg = MIMEText(content, 'plain', 'utf-8')
msg['From'] = Header(sender)
msg['To'] = Header(receiver)
msg['Subject'] = Header(subject, 'utf-8')

try:
    smtpObj = smtplib.SMTP('localhost')
    smtpObj.sendmail(sender, receiver, msg.as_string())
    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")

请确保在运行代码之前,替换邮件地址和SMTP服务器地址为有效的值。