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 相关文章推荐
解析Python中的异常处理
Apr 28 Python
浅谈Python数据类型判断及列表脚本操作
Nov 04 Python
python中reload(module)的用法示例详解
Sep 15 Python
Python实现多级目录压缩与解压文件的方法
Sep 01 Python
python 返回列表中某个值的索引方法
Nov 07 Python
PyQt5 多窗口连接实例
Jun 19 Python
使用Python快乐学数学Github万星神器Manim简介
Aug 07 Python
Python爬虫实现使用beautifulSoup4爬取名言网功能案例
Sep 15 Python
python滑块验证码的破解实现
Nov 10 Python
keras和tensorflow使用fit_generator 批次训练操作
Jul 03 Python
python爬虫利用代理池更换IP的方法步骤
Feb 21 Python
python前后端自定义分页器
Apr 13 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
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
php常用数组函数实例小结
2016/12/29 PHP
PDO实现学生管理系统
2020/03/21 PHP
JavaScript高级程序设计(第3版)学习笔记8 js函数(中)
2012/10/11 Javascript
jquery实现对联广告的方法
2015/02/05 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
解决VUEX刷新的时候出现数据消失
2017/07/03 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
node使用Koa2搭建web项目的方法
2017/10/17 Javascript
深入Vue-Router路由嵌套理解
2018/08/13 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
Vue的props父传子的示例代码
2020/05/20 Javascript
uni-app使用微信小程序云函数的步骤示例
2020/05/22 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
JavaScript实现鼠标经过表格某行时此行变色
2020/11/20 Javascript
python 内置函数filter
2017/06/01 Python
python获取酷狗音乐top500的下载地址 MP3格式
2018/04/17 Python
浅谈Tensorflow模型的保存与恢复加载
2018/04/26 Python
Python爬虫运用正则表达式的方法和优缺点
2019/08/25 Python
Python 如何优雅的将数字转化为时间格式的方法
2019/09/26 Python
python绘制随机网络图形示例
2019/11/21 Python
在pytorch中对非叶节点的变量计算梯度实例
2020/01/10 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
使用css3和jquery实现可伸缩搜索框
2014/02/12 HTML / CSS
美国生日蛋糕店:Bake Me A Wish!
2017/02/08 全球购物
总经理岗位职责描述
2014/02/08 职场文书
安全教育演讲稿
2014/05/09 职场文书
2016年高校自主招生自荐信范文
2015/03/24 职场文书
自主招生学校推荐信范文
2015/03/26 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
岗位聘任协议书
2015/09/21 职场文书
班干部竞选演讲稿(精选5篇)
2019/09/24 职场文书
详解CSS开发过程中的20个快速提升技巧
2021/05/21 HTML / CSS
FP-growth算法发现频繁项集——发现频繁项集
2021/06/24 Python
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android