Python通过yagmail实现发送邮件代码解析


Posted in Python onOctober 27, 2020

之前使用email模块+smtplib模块发送邮件,虽然可以实现功能,但过程比较繁琐,今天发现一个宝藏库(yagmail),可以说是炒鸡好用啦!!!

贴上实现代码,大家细品

yagmail安装

pip install yagmail

封装邮件发送服务:

import yagmail


class SendEmail:
  def __init__(self, receiver,subject=None,contents=None,attachment=None):
    """

    :param receiver: 收件人
    :param attachment: 附件
    :param contents: 正文
    :param subject: 标题
    """
    self.receiver = receiver
    self.attachment = attachment
    self.contents = contents
    self.subject = subject

  def send_email(self):
    # 链接邮箱服务器
    yag = yagmail.SMTP(user="29xxx959@qq.com", password="授权码", host='smtp.qq.com')

    # 发送邮件
    yag.send(to=self.receiver, subject=self.subject, contents=self.contents, attachments=self.attachment)

测试发送(带附件):

pro_dir = os.getcwd()
report = os.path.join(pro_dir, r'ApiReport_2020_06_28 16_31_00.html')
send = SendEmail('864xxx590@qq.com','ceshifasong', '测试', report)send.send_email()

*收件人可使用列表,同时发送给多个邮箱*

接收到的邮件:

Python通过yagmail实现发送邮件代码解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中利用Pandas库处理大数据的简单介绍
Apr 07 Python
python定时检查某个进程是否已经关闭的方法
May 20 Python
详解python如何调用C/C++底层库与互相传值
Aug 10 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
Python数据可视化正态分布简单分析及实现代码
Dec 04 Python
Python 在字符串中加入变量的实例讲解
May 02 Python
用pycharm开发django项目示例代码
Oct 24 Python
Python逐行读取文件中内容的简单方法
Feb 26 Python
Django中自定义admin Xadmin的实现代码
Aug 09 Python
基于python cut和qcut的用法及区别详解
Nov 22 Python
python常用数据重复项处理方法
Nov 22 Python
python 获取谷歌浏览器保存的密码
Jan 06 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
Oct 27 #Python
Python字符串查找基本操作代码案例
Oct 27 #Python
Python爬取豆瓣数据实现过程解析
Oct 27 #Python
UI自动化定位常用实现方法代码示例
Oct 27 #Python
基于python获取本地时间并转换时间戳和日期格式
Oct 27 #Python
如何在pycharm中安装第三方包
Oct 27 #Python
Python操控mysql批量插入数据的实现方法
Oct 27 #Python
You might like
php获取后台Job管理的实现代码
2011/06/10 PHP
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
2012/08/31 PHP
几个有趣的Javascript Hack
2010/07/24 Javascript
关于JavaScript中var声明变量作用域的推断
2010/12/16 Javascript
jQuery版Tab标签切换
2011/03/16 Javascript
JS 有趣的eval优化输入验证实例代码
2013/09/22 Javascript
通过JS来动态的修改url,实现对url的增删查改
2014/09/01 Javascript
javascript引擎长时间独占线程造成卡顿的解决方案
2014/12/03 Javascript
javascript中的Function.prototye.bind
2015/06/25 Javascript
javascript简单实现滑动菜单效果的方法
2015/07/27 Javascript
Javascript基于对象三大特性(封装性、继承性、多态性)
2016/01/04 Javascript
angular.js分页代码的实例
2016/07/27 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
原生js实现返回顶部缓冲效果
2017/01/18 Javascript
Bootstrap fileinput文件上传预览插件使用详解
2017/05/16 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
Vue 监听列表item渲染事件方法
2018/09/06 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
2019/01/17 Javascript
javascript实现点击按钮切换轮播图功能
2020/09/23 Javascript
[01:06:30]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第二场 1月9日
2021/03/11 DOTA
Python的净值数据接口调用示例分享
2016/03/15 Python
在Django中进行用户注册和邮箱验证的方法
2016/05/09 Python
Python实现的寻找前5个默尼森数算法示例
2018/03/25 Python
Win10环境中如何实现python2和python3并存
2020/07/20 Python
python中re模块知识点总结
2021/01/17 Python
CSS3对图片照片进行边缘模糊处理的实现
2018/08/08 HTML / CSS
html5的pushstate以及监听浏览器返回事件的实现
2020/08/11 HTML / CSS
L*SPACE官网:比基尼、泳装和度假服装
2019/03/18 全球购物
甜品蛋糕店创业计划书范文
2014/02/06 职场文书
高中生学期学习自我评价
2014/02/24 职场文书
幼儿园端午节活动方案
2014/08/25 职场文书
社区环境卫生倡议书
2015/04/29 职场文书
初中英语教学随笔
2015/08/15 职场文书
详解CSS3.0(Cascading Style Sheet) 层叠级联样式表
2021/07/16 HTML / CSS
vue3.0 数字翻牌组件的使用方法详解
2022/04/20 Vue.js