一.yagmail基本数据准备

1.终端下载yagmail:pip install yagmail

2.获取SMTP和密钥

我们以新浪邮箱为例,登录成功后进入设置页面,点击客户端pop/imap/smtp分类栏,会看见IMAP4服务/SMTP服务

SMTP就是客户端设置下SMTP服务器的值,密钥的话在你开启服务状态成功后会弹出(如果原本就是开启状态,需先

关闭后再开启)。

二.发送正文

1.与邮箱服务器建立连接

smtps = yagmail.SMTP(user='your@sina.com', password='密钥', host='SMTP服务器')  # 建立连接

user:你的邮箱地址

password:密钥值,不是邮箱密码

host:SMTP值

2.通过send()方法发送邮件

smtps.send(to="123456@qq.com", subject="标题", contents="正文")

to:指定接收人的邮箱

subject:邮件标题

contents:邮件正文内容

3.contents属性

1)可直接输入发送的内容或图片以及文件地址,会自动识别传递的内容格式,若是图片/文件会以附件的方式发送给目标邮箱

2)可将内容格式编辑在文件中,直接读取文件内容发送

with open("./txt/yag.txt", mode="r", encoding="utf-8")as a:
data = a.read()
smtps.send(to="123456@qq.com", subject="标题", contents=data)

4.关闭连接

smtps.close() 

三.发送附件

1.发送单个附件

smtps.send(to="123456@qq.com", subject="标题", contents="正文",attachments="文件地址")

attachments:附件

2.发送多个附件

att_list = ['./img/base64.png', 'yag.txt']
smtps.send(to="123456@qq.com", subject="标题", contents="正文", attachments=att_list)

attachments:可传list

四.收件人起别名

reci = {
'123456@QQ.com': "qq" # 取别名
}
smtps.send(to=reci, subject="标题", contents="正文")

若发送多个邮箱都起别名的话,可在reci中添加多个

五.多人发送

to_list = ['123456@qq.com', '123456@163.com']
smtps.send(to=to_list, subject="标题", contents="正文")

to:可传递list

六.多人抄送和密抄

cc_list = ['123456@qq.com', '123456@163.com']
bcc_list = ['123456@sina.com']
smtps.send(to="123456@qq.com", subject="标题", contents="正文",cc=cc_list,bcc=bcc_list)

cc:抄送

bcc:密抄

七.发送html测试报告

1.生成html文件:pytest --html=生成报告的url  --self-contained-html 运行用例的.py文件

2.以附件的形式发送

smtps.send(to="123456@qq.com", subject="发送自动化测试报告html", contents="html", attachments="html地址")

  

文章来源:https://www.cnblogs.com/lihongtaoya/ ,请不要转载

使用yagmail发送邮件的更多相关文章

  1. python之yagmail发送邮件

    yagmail发送邮件 import yagmail yag = yagmail.SMTP(user="xxxxxxxxxx@163.com",password="xxx ...

  2. Unittest单元测试框架——BeautifulReport测试报告和Yagmail自动发送邮件

    一.前言 之前在做appium自动化的时候,已经提到过unittest框架的基本概念.用例执行,以及BeautifulReport测试报告的简单使用了(地址:https://www.cnblogs.c ...

  3. 利用Python 发送邮件

    概要 我们都知道SMTP(简单邮件传输协议),是一组用于从原地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式.SMTP规定电子邮件应该如何格式化.如何加密,以及如何在邮件服务器之间传递.SMT ...

  4. Selenium实战(七)——自动发送邮件

    SMPT(Simple Mail Transfer Protocol)简单邮件传输协议,是一组由源地址到目的地址传送邮件的规则,可以控制信件的中转方式.Python的smptlib模块提供了简单的AP ...

  5. python基础:用yagmail模块发邮件

    一.yagmail模块安装 网上下载的yagmail模块安装以后,在使用过程中,如果附件有中文,会显示乱码. pip install yagmail-0.10.212-py2.py3-none-any ...

  6. Python自动化测试发送邮件太麻烦?!一起聊一聊 Python 发送邮件的3种方式

    1. 前言 发送邮件,我们在平时工作中经用到,做为测试人员,在自动化测试中用的也比较多,需要发送邮件给某领导 SMTP是Python默认的邮件模块,可以发送纯文本.富文本.HTML 等格式的邮件 今天 ...

  7. Python学习笔记18-发送邮件

    SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮件. Python对SMTP支持有smtplib和email两个模块,email负责构造邮件, ...

  8. 【目录】Python模块学习系列

    目录:Python模块学习笔记 1.Python模块学习 - Paramiko  - 主机管理 2.Python模块学习 - Fileinput - 读取文件 3.Python模块学习 - Confi ...

  9. python3学习笔记一

    install 安装软件包download 下载安装包uninstall 卸载安装包freeze 按照req uirements 格式输出安装包,可以到其他服务器上执行pip install -r r ...

  10. ❤️❤️新生代农民工爆肝8万字,整理Python编程从入门到实践(建议收藏)已码:8万字❤️❤️

    @ 目录 开发环境搭建 安装 Python 验证是否安装成功 安装Pycharm 配置pycharm 编码规范 基本语法规则 保留字 单行注释 多行注释 行与缩进 多行语句 数据类型 空行 等待用户输 ...

随机推荐

  1. AI论文解读丨融合视觉、语义、关系多模态信息的文档版面分析架构VSR

    摘要:文档版式分析任务中,文档的视觉信息.文本信息.各版式部件间的关系信息都对分析过程具有很重要的作用.本文提出一种融合视觉.文本.关系多模态信息的版式分析架构VSR. 本文分享自华为云社区<论 ...

  2. vue2升级vue3:getCurrentInstance—Composition api/hooks中如何获取$el

    在vue2中,我们进程看到 this.$el 操作.但是在vue3 如何获取组件的当前 dom 元素呢?  可以利用 getCurrentInstance getCurrentInstance Vue ...

  3. vue2升级vue3:webpack vue-loader 打包配置

    如果没有啥特别的需求还是推荐vue-cli! vite  vue3 TSX项目 虽然vite 很香,但是vite  rollup 动态加载,多页面 等问题比较难搞 vite的缺点 wepback  _ ...

  4. SQL SERVER 查询所有表 统计每张表的大小

    (MySQL查看数据库表容量大小)[https://www.cnblogs.com/vipsoft/p/12145059.html] 查询某数据库中的所有数据表 SELECT name as tabl ...

  5. 【已解决】Uiautomatorviewer报错:Unexpected error while obtaining UI hierarchy java.lang.reflect.InvocationT...

    报错 使用Uiautomatorviewer连接真机报错Unexpected error while obtaining UI hierarchy (获取UI层次结构时出现意外错误) android8 ...

  6. 【PS算法理论探讨三】 Photoshop中图层样式之 颜色叠加/渐变叠加/图案叠加 算法原理初探讨。

    这三个表面上看上去很简单,我们就先描述简单的部分. 颜色叠加:这个和编辑菜单下的填充 颜色 基本是一个意思,相当于在原有的图层上部添加了一个纯实色的虚拟图层,选项里的不透明度和混合模式和普通的概念是一 ...

  7. CH0304 IncDec Sequence (差分)

    题目链接: https://ac.nowcoder.com/acm/contest/999/B 思路:(见图中解释) AC代码: #include<bits/stdc++.h> using ...

  8. 2017年第八届 蓝桥杯A组 C/C++决赛题解

    蓝桥杯历年国赛真题汇总:Here 1. 平方十位数 由0~9这10个数字不重复.不遗漏,可以组成很多10位数字. 这其中也有很多恰好是平方数(是某个数的平方). 比如:1026753849,就是其中最 ...

  9. kafka搭建 一、单机版

    系列导航 一.kafka搭建-单机版 二.kafka搭建-集群搭建 三.kafka集群增加密码验证 四.kafka集群权限增加ACL 五.kafka集群__consumer_offsets副本数修改 ...

  10. off-policy RL | Advantage-Weighted Regression (AWR):组合先前策略得到新 base policy

    论文题目:Advantage-Weighted Regression: Simple and Scalable Off-Policy Reinforcement Learning,ICLR 2020 ...