发送邮件

1)导入模块
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
MIME含义
Multipurpose Internet Mail Extensions,多用途互联网邮件扩展类型
是描述消息内容类型的因特网标准,MIME 消息能包含文本、图像、音频、视频以及其他应用程序专用的数据
MIME用于设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开
2)登录邮箱
连接SMTP邮件发送服务器
smtp=smtplib.SMTP('smtp.163.com',25)
常用邮箱的smtp服务器地址
新浪邮箱:smtp.sina.com、搜狐邮箱:smtp.sohu.com
126邮箱:smtp.126.com、163网易邮箱:smtp.163.com
139邮箱:smtp.139.com
登录邮件服务器
smtp.login('邮箱账户', '邮箱密码')
3)指定邮件信息
sender='发件人姓名<发件人邮件地址'
不写>,不同邮件服务器中显示效果未全面测试,用<而不用空格间隔更好
receiver='收件人1姓名<收件人1邮件地址'
mailbody='邮件正文'
mail=MIMEText(mailbody, 'plain', 'utf-8')
mail['From']=formataddr(sender.split('<'))
指定发件人姓名和邮件地址,参数为列表
formataddr会自动设置中文字符的编码类型
mail['To']=formataddr(receiver.split('<'))
mail['Subject']='邮件标题'

4)发送邮件
smtp.sendmail(sender, receiver, mail.as_string())
收件人参数为1个邮箱账户字符串或列表
mail.as_string将mail转为邮件类型的字符串
5)断开连接
smtp.quit()

使用qq邮箱发送exam项目报告给测试组长

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
# 设置邮箱SMTP服务 域名与端口号
smtp=smtplib.SMTP('smtp.qq.com',25)
# 登录邮箱地址与 邮箱授权码(邮箱开启POP3/SMTP服务后会获得授权码)
smtp.login('779146330@qq.com', 'idggecuopmudbbai')
# 发件人名字 与 邮箱地址
sender='暄总<779146330@qq.com'
# 收件人名字 与 邮箱地址
receiver='小暄总<sunbx@tedu.cn'
# 邮箱正文内容
mailbody='你好,此次发送的是exam项目接口测试报告'
# 邮箱内容设置
mail=MIMEText(mailbody, 'plain', 'utf-8')
# 发件人
mail['From']=formataddr(sender.split('<'))
# 收件人
mail['To']=formataddr(receiver.split('<'))
# 邮件标题
mail['Subject']='exam接口测试报告'
# 发送人 收件人 邮件内容
smtp.sendmail(sender, receiver, mail.as_string())
# 关闭邮箱
smtp.quit()

作者:暄总-tester