python smtplib模块自动收发邮件功能(一)


Posted in Python onMay 22, 2018

自动化测试的脚本运行完成之后,可以生成test report,如果能将result自动的发到邮箱就不用每次打开阅读,而且随着脚本的不段运行,生成的报告会越来越多,找到最近的报告也是一个比较麻烦的事件;如果能自 动的将结果发到项目相关人员的邮箱,这也是个不错的选择。

python 的 smtplib 模块提供了一种很方便的途径发送电子邮件。

关于Python smtplib的介绍,可以从python应用程序的帮助文档,可以查看到smtp协议的各个封装。

分几部分介绍。

一、文件形式的邮件

直接上脚本

#coding=utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
'''发送邮箱'''
sender = 'abc@cieXXX.com' #企业263邮箱
'''接收邮箱'''
receiver = '123456@qq.com'
'''发送邮件主题'''
subject = 'python email test'
'''发送邮箱服务器'''
smtpserver = 'smtp.263xmail.com'
'''发送邮箱用户/密码'''
username = 'abc@cieXXX.com'
password = '123456'
'''中文需参数‘utf-8' ,单字节字符不需要'''
msg = MIMEText('你好!','text','utf-8')
msg['Subject'] = Header(subject, 'utf-8')
smtp = smtplib.SMTP()
smtp.connect('smtp.263xmail.com')
smtp.login(username, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()
print ("Email has been sent out!")

F5,运行得到,如图所示:

python smtplib模块自动收发邮件功能(一) 

邮件内容,如图所示:

python smtplib模块自动收发邮件功能(一)

这样就实现了text形式邮件的自动发送功能。

二、HTML形式的邮件

HTML形式与Text形式实现起来,脚本类似,只是文件的表现形式不一样,相比Text形式的脚本,针对HTML形式的邮件的脚本改动很少。

直接上脚本:

#coding=utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
'''发送邮箱'''
sender = 'abc@cieXXX.com' #企业263邮箱
'''接收邮箱'''
receiver = '123456@qq.com'
'''发送邮件主题'''
subject = 'python email test'
'''发送邮箱服务器'''
smtpserver = 'smtp.263xmail.com'
'''发送邮箱用户/密码'''
username = 'abc@cieXXX.com'
password = '123456'
'''中文需参数‘utf-8' ,单字节字符不需要'''
msg=MIMEText('<html><hl>Hello World!<hl></html>','html','utf-8')
msg['Subject'] = Header(subject, 'utf-8')
smtp = smtplib.SMTP()
smtp.connect('smtp.263xmail.com')
smtp.login(username, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()
print ("Email has been sent out!")

F5,运行得到,如图所示:

python smtplib模块自动收发邮件功能(一) 

打开邮箱,如图所示:

python smtplib模块自动收发邮件功能(一) 

打开邮件内容,如图所示:

python smtplib模块自动收发邮件功能(一)

OK,就这样实现了两种邮件形式的自动发送功能。

关于如何将python smtp模块的自动收发邮件功能应用到我们的自动化测试过程中,且看下回分解。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
50行代码实现贪吃蛇(具体思路及代码)
Apr 27 Python
python抓取网页中的图片示例
Feb 28 Python
python中from module import * 的一个坑
Jul 20 Python
python实现的正则表达式功能入门教程【经典】
Jun 05 Python
python 日志增量抓取实现方法
Apr 28 Python
python实现雨滴下落到地面效果
Jun 21 Python
浅述python中深浅拷贝原理
Sep 18 Python
python 的 scapy库,实现网卡收发包的例子
Jul 23 Python
详解Python3迁移接口变化采坑记
Oct 11 Python
详解python常用命令行选项与环境变量
Feb 20 Python
Python中bisect的用法及示例详解
Jul 20 Python
Python进度条的使用
May 17 Python
python模块smtplib学习
May 22 #Python
Pipenv一键搭建python虚拟环境的方法
May 22 #Python
PyTorch线性回归和逻辑回归实战示例
May 22 #Python
python自动查询12306余票并发送邮箱提醒脚本
May 21 #Python
python利用smtplib实现QQ邮箱发送邮件
May 20 #Python
用Python下载一个网页保存为本地的HTML文件实例
May 21 #Python
Python读取本地文件并解析网页元素的方法
May 21 #Python
You might like
mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array
2007/01/15 PHP
深入php中var_dump方法的使用详解
2013/06/24 PHP
PHP实现自动识别Restful API的返回内容类型
2015/02/07 PHP
yii2超好用的日期组件和时间组件
2016/05/05 PHP
Some tips of wmi scripting in jscript (1)
2007/04/03 Javascript
Javascript 学习笔记之 对象篇(二) : 原型对象
2014/06/24 Javascript
跨域请求的完美解决方法(JSONP, CORS)
2016/06/12 Javascript
全面解析JavaScript中“&amp;&amp;”和“||”操作符(总结篇)
2016/07/18 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
javascript学习之json入门
2016/12/22 Javascript
Angular工具方法学习
2016/12/26 Javascript
JavaScript中的子窗口与父窗口的互相调用问题
2017/02/08 Javascript
vue使用drag与drop实现拖拽的示例代码
2017/09/07 Javascript
js中如何完美的解析数据
2018/03/18 Javascript
vue动态绑定class选中当前列表变色的方法示例
2018/12/19 Javascript
茶余饭后聊聊Vue3.0响应式数据那些事儿
2019/10/30 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
2020/02/11 Javascript
Vue中的this.$options.data()和this.$data用法说明
2020/07/26 Javascript
JavaScript语句错误throw、try及catch实例解析
2020/08/18 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
原生js+canvas实现验证码
2020/11/29 Javascript
[52:06]FNATIC vs NIP 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
Python中实现结构相似的函数调用方法
2015/03/10 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
2018/09/25 Python
Python 用matplotlib画以时间日期为x轴的图像
2019/08/06 Python
python 命令行传入参数实现解析
2019/08/30 Python
python实现简单学生信息管理系统
2020/04/09 Python
Ticketmaster德国票务网站:购买音乐会和体育等门票
2016/11/14 全球购物
Sofft鞋官网:世界知名鞋类品牌
2017/03/28 全球购物
美国便宜的横幅和标志印刷在线:Best of Signs
2019/05/29 全球购物
什么是命名空间(NameSpace)
2015/11/24 面试题
幼儿园区域活动总结
2014/05/08 职场文书
镇政府副镇长群众路线专题民主生活会对照检查材料
2014/09/19 职场文书
2014年最新离婚协议书范本
2014/10/11 职场文书
Node.js实现断点续传
2021/06/23 Javascript
AJAX引擎原理以及XmlHttpRequest对象的axios、fetch区别详解
2022/04/09 Javascript