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

yipeiwu_com6年前Python基础

自动化测试的脚本运行完成之后,可以生成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,运行得到,如图所示:

 

邮件内容,如图所示:

这样就实现了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,运行得到,如图所示:

 

打开邮箱,如图所示:

 

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

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python基础之函数的定义与使用示例

本文实例讲述了Python基础之函数的定义与使用。分享给大家供大家参考,具体如下: Python 定义函数使用 def 关键字,一般格式如下: def 函数名(参数列表):  ...

详解Python图像处理库Pillow常用使用方法

 PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。 其官...

Python FTP文件定时自动下载实现过程解析

这篇文章主要介绍了Python FTP文件定时自动下载实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、需求:   某数...

python pandas 如何替换某列的一个值

python pandas 如何替换某列的一个值

摘要:本文主要是讲解怎么样替换某一列的一个值。 应用场景: 假如我们有以下的数据集: 我们想把里面不是pre的字符串全部换成Nonpre,我们要怎么做呢? 做法很简单。 df['c...

django做form表单的数据验证过程详解

django做form表单的数据验证过程详解

我们之前写的代码都没有对前端input框输入的数据做验证,我们今天来看下,如果做form表单的数据的验证 在views文件做验证 首先用文字描述一下流程 1、在views文件中导入for...