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基础知识_浅谈用户交互
May 31 Python
python flask 多对多表查询功能
Jun 25 Python
numpy.linspace 生成等差数组的方法
Jul 02 Python
Python合并多个Excel数据的方法
Jul 16 Python
Flask Web开发入门之文件上传(八)
Aug 17 Python
Python3 Post登录并且保存cookie登录其他页面的方法
Dec 28 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
Feb 12 Python
python图片二值化提高识别率代码实例
Aug 24 Python
Python的互斥锁与信号量详解
Sep 12 Python
python二分法查找算法实现方法【递归与非递归】
Dec 06 Python
python使用docx模块读写docx文件的方法与docx模块常用方法详解
Feb 17 Python
Python常用库Numpy进行矩阵运算详解
Jul 21 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
windows xp下安装pear
2006/12/02 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
2007/02/27 PHP
php编写一个简单的路由类
2011/04/13 PHP
php获取中文拼音首字母类和函数分享
2014/04/24 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
PHP实现多图上传(结合uploadify插件)思路分析
2016/11/30 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
JavaScript中URL编码函数代码
2011/01/11 Javascript
Javascript浅谈之this
2013/12/17 Javascript
jQuery实现行文字链接提示效果的方法
2015/03/10 Javascript
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
2016/12/18 Javascript
微信小程序 解析网页内容详解及实例
2017/02/22 Javascript
如何重置vue打印变量的显示方式
2017/12/06 Javascript
关于Vue组件库开发详析
2018/07/01 Javascript
vue+element的表格实现批量删除功能示例代码
2018/08/17 Javascript
详解在vue-cli项目下简单使用mockjs模拟数据
2018/10/19 Javascript
JS字符串补全方法padStart()和padEnd()
2020/05/27 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
举例介绍Python中的25个隐藏特性
2015/03/30 Python
python中学习K-Means和图片压缩
2017/11/20 Python
对numpy.append()里的axis的用法详解
2018/06/28 Python
基于python读取.mat文件并取出信息
2019/12/16 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
详解Scrapy Redis入门实战
2020/11/18 Python
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
澳大利亚手表品牌:Time IV Change
2018/10/06 全球购物
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
教师党员一句话承诺
2014/03/28 职场文书
银行求职信范文
2014/05/26 职场文书
五水共治一句话承诺
2014/05/30 职场文书
年底个人总结范文
2015/03/10 职场文书
我的中国梦主题班会
2015/08/14 职场文书
初三语文教学反思
2016/03/03 职场文书
爱岗敬业事迹材料
2019/06/20 职场文书
2019最新版火锅店的创业计划书 !
2019/07/12 职场文书