发送简单的邮件

用一个QQ邮箱发送到另一个QQ邮件。

首先设置QQ邮箱,邮箱设置 -> 账号 开启SMTP服务,点击开启按钮,按提示进行操作,需要1毛钱的短信费。开启后如下所示

 1 # coding = utf-8
2
3 import smtplib
4 from email.header import Header
5 from email.mime.text import MIMEText
6
7 # 发送邮箱
8 sender='12*****@qq.com'
9 # 发送密码,即开启smtp的授权码
10 psw='y****d'
11
12 # 接收邮箱
13 receiver='45*****@qq.com'
14 # 发送邮箱服务器
15 smtp_server='smtp.qq.com'
16
17 # 邮件正文,可编写HTML类型
18 msg=MIMEText('Hello,the test is finished, please check the attachment. Thanks','plain','utf-8')
19
20 # Header()来定义邮件标题
21 msg['From']=Header('Test Runner','utf-8')
22 msg['To']=Header('Test Monitor','utf-8')
23 msg['Subject']=Header('Test Result','utf-8')
24
25
26 server=smtplib.SMTP(smtp_server)
27 server.set_debuglevel(1)
28 server.starttls()
29 server.login(sender,psw)
30 server.sendmail(sender,receiver,msg.as_string())
31 server.quit()

运行结果如下

发送带附件的邮件

 1 #-*- coding:utf-8 -*-
2
3 import smtplib
4 from email.header import Header
5 from email.mime.text import MIMEText
6 from email.mime.multipart import MIMEMultipart
7
8 # 发送邮箱
9 sender='12****@qq.com'
10 # 发送密码,即开启smtp的授权码
11 psw='yzpi****cid'
12
13 # 接收邮箱
14 receiver='45*****@qq.com'
15 # 发送邮箱服务器
16 smtp_server='smtp.qq.com'
17
18 file = open('E:\\Python-Project\\unittest\\Report\\log.txt','rb').read()
19 att = MIMEText(file, 'base64','utf-8')
20 att["Content-Type"] = 'application/octet-stream'
21 att["Content-Disposition"] = 'attachment; filename="log.txt"'
22 msgRoot = MIMEMultipart('related')
23 msgRoot.attach(att)
24
25 # Header()来定义邮件标题
26 msgRoot['From']=Header('Test Runner','utf-8')
27 msgRoot['To']=Header('Test Monitor','utf-8')
28 msgRoot['Subject']=Header('Test Result','utf-8')
29
30
31 server=smtplib.SMTP(smtp_server)
32 server.set_debuglevel(1)
33 server.starttls()
34 server.login(sender,psw)
35 server.sendmail(sender,receiver,msgRoot.as_string())
36 server.quit()

运行结果

 
 

Python+Selenium学习笔记19 - 自动发送邮件的更多相关文章

  1. Python+Selenium学习笔记15 - 读取txt和csv文件

    读取txt的内容并用百度查找搜索 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 # 打开浏览器 7 d ...

  2. python+selenium生成测试报告后自动发送邮件

    标签(空格分隔): 自动化测试 运行自动化脚本后,会产生测试报告,而将测试报告自动发送给相关人员,能够让对方及时的了解测试情况,查看测试结果. 整个脚本包括三个部分: 生成测试报告 获取最新的测试报告 ...

  3. python + selenium 学习笔记 -摘要

    一.浏览器操作相关 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 窗口最大 ...

  4. Python+Selenium学习笔记17 - HTML测试报告

    运行少量case时 1 # coding = utf-8 2 3 from selenium import webdriver 4 import unittest 5 import time 6 fr ...

  5. Python+Selenium学习笔记11 - python官网的tutorial - 定义函数

    1 def f(a, L=[]): 2 L.append(a) 3 return L 4 5 print f(5) 6 print f(2) 输出 1 def f(a, L=None): 2 if L ...

  6. Python+Selenium学习笔记12 - 窗口大小和滚动条

    涉及到的三个方法 set_window_size()  用于设置浏览器窗口的大小 e.gset_window_size(600,600) window.scrollTo() 用于设置浏览器窗口滚动条的 ...

  7. Python+Selenium学习笔记9 - 警告框处理

    如下图所示,这种窗口是不能通过前端工具对其进行定位的,这里可以通过switch_to_alert()方法去接受这个弹窗 1 # coding = utf-8 2 3 from selenium imp ...

  8. Python+Selenium学习笔记8 - 多表单&多窗口切换

    1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os ...

  9. Python+Selenium学习笔记5 - python官网的tutorial - 交互模式下的操作

    这篇笔记主要是从Python官网的Tutorial上截取下来,再加上个人理解 1. 在交互模式下,下划线'_'还可以表示上一步的计算结果 2.引号转义问题. 从下图总结的规律是,字符串里的引号如果和引 ...

随机推荐

  1. C/C++ 进程代码注入与提权/降权

    如果将shellcode注入到具有特定权限的进程中,我们就可以获得与该进程相同的权限,此方法可以用于提权与降权操作,注入有多种方式,最简单的是直接将metasploit生成的有效载荷直接注入到目标进程 ...

  2. 缓冲区溢出分析第07课:MS06-040漏洞研究——静态分析

    前言 我在之前的课程中讨论过W32Dasm这款软件中的漏洞分析与利用的方法,由于使用该软件的人群毕竟是小众群体,因此该漏洞的危害相对来说还是比较小的.但是如果漏洞出现在Windows系统中,那么情况就 ...

  3. hdu4370 比较抽象的最短路

    题意:       给你一个n*n的矩阵,然后让咱们构造另一个n*n的矩阵,构造的矩阵有如下要求, 1.X12+X13+...X1n=1. 2.X1n+X2n+...Xn-1n=1. 3.for ea ...

  4. POJ1149 PIGS(最大流)

    题意:       有一个人,他有m个猪圈,每个猪圈里面有一定数量的猪,但是每个猪圈的门都是锁着的,他自己没有钥匙,只有顾客有钥匙,一天依次来了n个顾客,(记住是依次来的)他们每个人都有一些钥匙,和他 ...

  5. 学习Canvas绘图与动画基础 绘制直线(二)

    1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="U ...

  6. CentOS运行多个Tomcat操作步骤

    一:修改环境变量 在/et/profile文件追加以下内容 # tomcat1 env ( 第一个tomcat 的环境变量) export CATALINA_HOME=/usr/local/apach ...

  7. Newtonsoft.Json的使用整理

    关于我 我的博客 | 欢迎关注 引言 json是我们在工作中经常用到的一种数据传输格式,开始过程中解析json是我们经常面对的问题.NewtonsoftJson是c#的一套json处理封装类,它可以高 ...

  8. java如何调用本地扬声器

    各位看官可以关注博主个人博客,了解更多信息. 作者:Surpasser 链接地址:https://surpass.org.cn 前言 博主的毕设系统在做一个餐厅的点餐管理系统,在记性移动端页面开发的时 ...

  9. FreeSWITCH的安装与使用

    FreeSWITCH

  10. Zabbix 5.0 优化建议

    Blog:博客园 个人 在使用Zabbix过程中,正确的调整Zabbix系统,使之保持高性能是非常重要的,能够充分利用硬件资源,监控更多主机和性能指标. 硬件 关于zabbix server端硬件的建 ...