1. 前言

发送邮件,我们在平时工作中经用到,做为测试人员,在自动化测试中用的也比较多,需要发送邮件给某领导

SMTP是Python默认的邮件模块,可以发送纯文本、富文本、HTML 等格式的邮件

今天我们来说一说Python 发送邮件的 3 种方式

2. 开启邮箱SMTP服务和获取授权码

登录 QQ 邮箱为例,我们需要开启 SMTP 服务,登录邮箱依次点击设置-账户

开启SMTP

然后,生成授权码

注:

需要开启POP3/SMTP服务

授权码做为邮箱密码

1. 方式一:smtplib

smtplib是 Python 自带的依赖库,可以直接导入使用,通过邮箱账号、授权码、邮箱服务器地址初始化一个 SMTP 实例,然后进行连接

初学者感觉这个会挺复杂,请继续往下看

1.1发送纯文本邮件

运行结果:

注:当前发送邮件个人不推荐使用,所以只演式一种发送纯文本邮件

2. 方式二:zmail

由于SMPT太过于麻烦复杂,所以就用zamil发送邮件试试。

zmail模块只支持Python3模块,该模块为第3方模块,需自行安装(pip install zmail)

使用 Zmail 发送接收邮件方便快捷,不需手动添加服务器地址、端口以及适合的协议,可以轻松创建 MIME 对象和头文件

注意:Zmail 仅支持 Python3,不支持 Python2

#!/usr/bin/python3

importzmaildefsend_mail():#定义邮件

mail = {"subject": "接口测试报告",#任一填写

'content_text': '手机号归属地_API自动化测试报告',#任一填写

#多个附件使用列表

"attachments": "E:/report/result.html"}#自定义服务器

server = zmail.server("发送人邮箱.com","QQ邮箱是用授权码",

smtp_host="smtp.qq.com",

smtp_port= 465)#发送邮件

server.send_mail("收件人QQ邮箱", mail)try:

send_mail()exceptFileNotFoundError:print("未找到文件")else:print("发送成功")

3. 方式三:yagmail

他们都说yagmail 只需要三行代码,就可以实现发送邮件,爽歪歪!

相比 zmail,yagmail 实现发送邮件的方式更加简洁优雅

首先,安装依赖库(pip install yagmail)

发送邮件有三个步骤:

1、连接服器(类似你先要登录邮箱)

2、编辑邮件内容和主题

3、发送邮件

#!/usr/bin/python3

importyagmail#定义用户名、授权码、服务器地址且连接服务器

mail_server= yagmail.SMTP(user='发件人邮箱', passwd='授权码', host='smtp.qq.com')#发送对象列表

Email_to = ['收件人邮箱']

subject= '任一填写'Email_text= "任一填写内容"

#多个附件用逗号隔开

attachments = ['html报告目录地址']#发送邮件

mail_server.send(Email_to, subject, Email_text, attachments)

最后

总结了 Python3种发送 邮件的方式,实际项目中,更推荐使用后两种方式

如果对软件测试、接口测试、自动化测试、技术同行、持续集成、面试经验交流。感兴趣可以进到902061117,群内会有不定期的分享测试资料。

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

python自动发邮件富文本_Python自动化测试发送邮件太麻烦?!一起聊一聊 Python 发送邮件的3种方式...相关推荐

  1. python自动发邮件富文本_django 实现后台从富文本提取纯文本

    前言: 很多时候我们都会用富文本,比如说在版权区.博客文章编辑时等等.但是如果我们要做一个搜索的功能,去从富文本中查找关键字,就需要将富文本中的文本了.但是 django 并没有专门函数去做.这个时候 ...

  2. python自动发邮件富文本_使用outlook2003发送富文本格式电子邮件

    我正在尝试使用Outlook 2003发送RTF格式的电子邮件. 下面的代码会将RTF HTML源代码转储到邮件正文中.在 我该怎么做才能解决这个问题,并使Outlook显示格式化数据而不是源HTML ...

  3. python发送邮件 python发送qq,163,sohu, xinlang, 126等邮件 python自动发邮件总结及实例说明...

    python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用.smtplib模块主要负责发送邮件,email模块主要负责构造邮件. sm ...

  4. 通过Python自动发邮件《生如夏花》

    今天ajupyter和姐姐出去逛了一天街,累死了.晚上读了一首非常美丽的诗词,是泰戈尔的<生如夏花>,感觉非常美,再加上前几天学会了用python自动发邮件,决定把这首诗发给自己的好朋友欣 ...

  5. 如何用python自动发邮件_Python | 解放双手,用Python实现自动发送邮件

    解放双手,用Python实现自动发送邮件 使用Python实现自动化邮件发送,可以让你摆脱繁琐的重复性业务,节省非常多的时间. Python有两个内置库:smtplib和email,能够实现邮件功能, ...

  6. python自动化发送邮件_python接口自动化(三十三)-python自动发邮件总结及实例说明番外篇——下(详解)...

    简介 发邮件前我们需要了解的是邮件是怎么一个形式去发送到对方手上的,通俗点来说就是你写好一封信,然后装进信封,写上地址,贴上邮票,然后就近找个邮局,把信仍进去,其他的就不关心了,只是关心时间,而电子邮 ...

  7. python自动发邮件运行正常就是收不到邮件是为什么_python stmp module 163邮箱发送邮件不成功...

    开发环境: 系统:Ubuntu 16.04 LTS 版本:python 3.5.2 邮箱服务器:stmp.126.com 注意: 1.不可正文群发带图,不然会被stmp.126.com认定为垃圾邮件, ...

  8. python自动发邮件 百度网盘_python自动保存百度盘资源到百度盘中的实例代码

    本实例的实现逻辑是,应用selenium UI自动化登录百度盘,读取存储百度分享地址和提取码的txt文档,打开百度盘分享地址,填入提取码,然后保存到指定的目录中 全部代码如下: # -*-coding ...

  9. python接口自动化(三十三)-python自动发邮件总结及实例说明番外篇——下

    简介 发邮件前我们需要了解的是邮件是怎么一个形式去发送到对方手上的,通俗点来说就是你写好一封信,然后装进信封,写上地址,贴上邮票,然后就近找个邮局,把信仍进去,其他的就不关心了,只是关心时间,而电子邮 ...

最新文章

  1. Struts2学习小结
  2. SX1280抗WIFI强干扰电磁环境能力解析
  3. redis单线程为什么还快的个人解释
  4. JAVA入门级教学之(异常的处理try...catch)
  5. shell 命令进阶(三)
  6. Bailian2973 Skew数【进制】
  7. 【问答系统】QA问答系统(Question Answering)
  8. Linux虚拟机中安装VMware Tools
  9. HDU2095find your present (2)【hash】
  10. ODI知识模块--IKM Oracle Incremental Update
  11. 用手机怎么看服务器里的文件,手机查看云服务器文件
  12. 蓝桥杯 扶老奶奶过街 (逻辑推理)
  13. 计算并输出0-1000含有7或者是7的倍数的整数之和及其个数
  14. 设置360浏览器的背景为护眼模式(浅豆绿色)
  15. Modbus 超时时间设置
  16. Microbiome | 宏基因组测序中减少样品中真核宿主的DNA污染
  17. 笔记 ngrok 内网穿透及其身份认证 authtoken 配置
  18. 怎样建设自组织的团队
  19. ADAS-GPS定位原理概述
  20. AQS acquire(int arg) 深度解析

热门文章

  1. 欧美是怎么做创新的?
  2. 新华社报道,“大国重器”的企业背后的匠心智造与数字化转型之路
  3. 【JavaWeb】JSP(172-190)
  4. python 保留浮点数为两位小数
  5. 被微软打入冷宫20年,它刚回归就成了热门!
  6. 网易邮箱数据遭泄露--拿什么保障个人互联网信息安全?
  7. Assertion断言入门(四)——断言覆盖率
  8. 第19组 Beta(1/3)
  9. Sampling Heuristics for Optimal Motion Planning in High Dimensions论文总结
  10. 使用服务网格提升应用和网络安全