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微信库:itchat的用法详解
Aug 14 Python
Python排序搜索基本算法之选择排序实例分析
Dec 09 Python
Python对CSV、Excel、txt、dat文件的处理
Sep 18 Python
Python脚本利用adb进行手机控制的方法
Jul 08 Python
Django 静态文件配置过程详解
Jul 23 Python
pytorch使用指定GPU训练的实例
Aug 19 Python
python实现输入任意一个大写字母生成金字塔的示例
Oct 27 Python
python opencv将表格图片按照表格框线分割和识别
Oct 30 Python
keras中的卷积层&amp;池化层的用法
May 22 Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
May 27 Python
python excel多行合并的方法
Dec 09 Python
python Timer 类使用介绍
Dec 28 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
杏林同学录(七)
2006/10/09 PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
php date与gmdate的获取日期的区别
2010/02/08 PHP
Ajax实时验证用户名/邮箱等是否已经存在的代码打包
2011/12/01 PHP
PHP按行读取、处理较大CSV文件的代码实例
2014/04/09 PHP
php获取本机真实IP地址实例代码
2016/03/31 PHP
PHP脚本自动识别验证码查询汽车违章
2016/12/20 PHP
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
js escape,unescape解决中文乱码问题的方法
2010/05/26 Javascript
js创建表单元素并使用submit进行提交
2014/08/14 Javascript
javascript常用函数(2)
2015/11/05 Javascript
详解AngularJS中的http拦截
2016/02/09 Javascript
轻松掌握JavaScript策略模式
2016/08/25 Javascript
jQuery实现的页面遮罩层功能示例【测试可用】
2017/10/14 jQuery
JS实现点击按钮可实现编辑功能
2018/07/03 Javascript
vue 登录滑动验证实现代码
2018/08/24 Javascript
使用vuex解决刷新页面state数据消失的问题记录
2019/05/08 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
python检测远程udp端口是否打开的方法
2015/03/14 Python
Django中使用celery完成异步任务的示例代码
2018/01/23 Python
将python代码和注释分离的方法
2018/04/21 Python
python矩阵的转置和逆转实例
2018/12/12 Python
Python弹出输入框并获取输入值的实例
2019/06/18 Python
numpy求平均值的维度设定的例子
2019/08/24 Python
美国NBA官方商店:NBA Store
2019/04/12 全球购物
澳大利亚领先的在线礼品网站:Gifts Australia
2020/08/15 全球购物
J2ee常用的设计模式?说明工厂模式
2015/05/21 面试题
思想专业自荐信范文
2013/12/25 职场文书
《钱学森》听课反思
2014/03/01 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
Redis读写分离搭建的完整步骤
2021/09/14 Redis
如何避免mysql启动时错误及sock文件作用分析
2022/01/22 MySQL
Python使用OpenCV实现虚拟缩放效果
2022/02/28 Python
vue使用echarts实现折线图
2022/03/21 Vue.js
Python可变与不可变数据和深拷贝与浅拷贝
2022/04/06 Python