python之发送邮件
一、python发送邮件思路整理定义smtp服务器,如:smtp.qq.com定义用户名和密码(授权码):username和password定义接收邮箱:receiver创建邮件对象:message将信息组装到邮件对象登录smtp服务器,并发送邮件二、不废话直接上代码import smtplibfrom email.mime.multipart import MIMEMultipartfrom e
一、python发送邮件思路整理
- 定义smtp服务器,如:smtp.qq.com
- 定义用户名和密码(授权码):username 和 password
- 定义接收邮箱:receiver
- 创建邮件对象:message
- 将信息组装到邮件对象
- 登录smtp服务器,并发送邮件
MIMEMultipart类型
下有3种子类型:mixed、alternative、related。
解释:
MIME:多用于邮件扩充协议
MIMEImage:图片类型邮件
MIMEMultipart:创建附件类型
MIMEApplication:用于传输应用程序数据或者二进制数据;
MIMEBase:
MIMEMessage:用于包装一个E-mail消息
MIMEAudio:用于传输音频或者音声数据;
具体详情:https://blog.csdn.net/litton_van/article/details/5664208
二、不废话直接上代码
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
class EmailUtil(object):
def send_email(self):
# 定义SMTP服务器
smtpsrever = 'smtp.qq.com'
# 发送邮件的用户名和密码
username = '529851***@qq.com'
password = 'segkbtnjeimdc***' # 授权密码
# 接收邮件的邮箱
receiver = '185345180***@163.com'
# 创建邮件对象
message = MIMEMultipart('relate') # 这是固定写法,生成一个带附件的邮件对象; 邮件信息,内容为空 #相当于信封##related表示使用内嵌资源的形式,将邮件发送给对方
subject = "接口自动化测试报告" # 邮件的主题
attach = MIMEText(open('/Users/dongshuai/PycharmProjects/pytest/ui-testcaes/output/report/report.html', 'rb').read(), _subtype="html", _charset="utf-8") # 附件
# 给附件添加标题等
attach['Content-Type'] = 'application/octet-stream'
attach['Content-Disposition'] = 'attachment;filename="report.zip"'
# 把邮件的信息组装到邮件对象里
message['from'] = username
message['to'] = receiver
message['subject'] = subject
message.attach(attach)
# 登录smtp服务器并发送邮件
smtp = smtplib.SMTP()
smtp.connect(smtpsrever)
smtp.login(username, password)
smtp.sendmail(username, receiver, message.as_string())
smtp.quit()
if __name__ == '__main__':
EmailUtil().send_email()
运行结果:
加上attach[‘Content-Disposition’] = ‘attachment;filename=“report.zip”’ 后

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)