发送简单的邮件

用一个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. Python 基础教程 —— 网络爬虫入门篇

    前言 Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言,它由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年.自面世以后,Pytho ...

  2. hdu1428 spfa+记忆化搜索

    题意:      题意坑爹,很容易误认成是做短路的条数,题意是给你一个图,让你从起点走到终点,问你有多少种走法,但有一个限制,假如你想从a走到b,必须满足终点到b的最短距离小于终点到a的最短距离. 思 ...

  3. Intel汇编程序设计-整数算术指令(上)

    第七章 整数算术指令 7.1 简介 每种汇编语言都有进行操作数移位的指令,移位和循环移位指令在控制硬件设备.加密数据,以及实现高速的图形操作时特别有用.本章讲述如何进行移位和循环移位操作以及如何使用移 ...

  4. Docker搭建开发环境(Nginx+MySQL+PHP)

    注意事项 1.像MySQL配置文件.Nginx配置文件.网站根目录这种比较经常操作的需要先使用 docker cp 将文件从容器里复制到主机目录,docker run的时候直接挂载目录就可以了 2.d ...

  5. layui中的视频上传(PHP )

    1.html中: <div class="layui-form-item"> <label class="layui-form-label"& ...

  6. @shiro.hasPermission 使用

    在页面上加上@shiro.hasPermission 如下用.ftl为例子: 当加上shiro标签后,会与后台代码结合使用: 需要继承AuthorizingRealm  下的 protected Au ...

  7. Spring核心结构及核心思想

    Spring核心结构 基本概念 Spring是⼀个分层⾮常清晰并且依赖关系.职责定位⾮常明确的轻量级框架,主要包括⼏个⼤模块:数据处理模块.Web模块.AOP(Aspect Oriented Prog ...

  8. utf8改成utf8mb4实战教程

    前言: 在 MySQL 中,系统支持诸多字符集,不同字符集之间也略有区别.目前最常用的字符集应该是 utf8 和 utf8mb4 了,相比于 utf8 ,utf8mb4 支持存储 emoji 表情,使 ...

  9. 关于__new__和__call__的想法

    __new__和__call__很像,两个都是用来产生对象的 __new__用来产生的对象是'类',class 时触发(不是) __call__用来产生的对象是'对象',这种对象无法继续产生对象,但是 ...

  10. 消息队列之 RabbitMQ【验证通过】

    消息队列之 RabbitMQ 预流 关注  22.9 2017.05.06 16:03* 字数 4884 阅读 284691评论 41喜欢 618赞赏 2 关于消息队列,从前年开始断断续续看了些资料, ...