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

Python发送MIMEText邮件并添加邮件头信息

发布时间:2023-12-11 13:48:31

Python是一种简单易学但功能强大的编程语言,它可以用于发送各种类型的电子邮件,包括MIMEText邮件。MIME(Multipurpose Internet Mail Extensions)是一种用于在电子邮件中传输非纯文本数据(如图片、音频、视频等)的标准。

在Python中发送MIMEText邮件需要使用emailsmtplib模块。email模块用于创建邮件对象和设置邮件内容,smtplib模块用于连接邮件服务器并发送邮件。

下面是一个发送MIMEText邮件的示例代码:

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

# 邮件服务器配置
smtp_server = 'smtp.example.com'
smtp_port = 25
username = 'username@example.com'
password = 'password'

# 创建邮件内容
subject = 'Python MIMEText邮件示例'
from_addr = 'from@example.com'
to_addr = 'to@example.com'
message = '这是一封使用Python发送的MIMEText邮件。'
msg = MIMEText(message, 'plain', 'utf-8')
msg['From'] = Header(from_addr)
msg['To'] = Header(to_addr)
msg['Subject'] = Header(subject)

# 连接邮件服务器并发送邮件
try:
    server = smtplib.SMTP(smtp_server, smtp_port)
    server.login(username, password)
    server.sendmail(from_addr, [to_addr], msg.as_string())
    print('邮件发送成功')
except smtplib.SMTPException as e:
    print('邮件发送失败:', e)
finally:
    server.quit()

以上代码首先通过import语句引入了emailsmtplib模块,然后设置了邮件服务器的相关信息(包括SMTP服务器地址、端口号、用户名和密码)。

接下来创建了邮件内容,包括邮件主题、发件人、收件人和邮件正文。MIMEText函数的 个参数是邮件内容,第二个参数是邮件内容类型(这里是纯文本),第三个参数是字符编码(这里是utf-8)。

然后使用Header函数设置邮件头信息,包括发件人、收件人和主题。

最后使用smtplib模块中的SMTP类连接邮件服务器,调用login方法登录邮件服务器,调用sendmail方法发送邮件,将发件人、收件人和邮件内容转换为字符串格式。

如果邮件发送成功,会输出"邮件发送成功";如果邮件发送失败,会输出"邮件发送失败"并打印失败的具体原因。

注意:在使用代码发送邮件之前,需要确保本地网络可以访问邮件服务器,并且需要正确设置邮件服务器的相关信息。

这是一个简单的示例,你可以根据实际需求进行修改和扩展。希望对你有帮助!