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 相关文章推荐
urllib2自定义opener详解
Feb 07 Python
使用PyInstaller将Python程序文件转换为可执行程序文件
Jul 08 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
Jan 20 Python
Python+PIL实现支付宝AR红包
Feb 09 Python
Python pyinotify日志监控系统处理日志的方法
Mar 08 Python
Python闭包执行时值的传递方式实例分析
Jun 04 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
解决Python一行输出不显示的问题
Dec 03 Python
对python生成业务报表的实例详解
Feb 03 Python
Python中一个for循环循环多个变量的示例
Jul 16 Python
python实现按行分割文件
Jul 22 Python
使用python实现下载我们想听的歌曲,速度超快
Jul 09 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 is_file()和is_dir()用于遍历目录时用法注意事项
2010/03/02 PHP
PHP实现下载功能的代码
2012/09/29 PHP
php浏览历史记录的方法
2015/03/10 PHP
PHP获取一段文本显示点阵宽度和高度的方法
2015/03/12 PHP
变量在 PHP7 内部的实现(一)
2015/12/21 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
2015/12/22 PHP
PHP正则删除HTML代码中宽高样式的方法
2017/06/12 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
php封装db类连接sqlite3数据库的方法实例
2017/12/19 PHP
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
通过pjax实现无刷新翻页(兼容新版jquery)
2014/01/31 Javascript
jquery trigger伪造a标签的click事件取代window.open方法
2014/06/23 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
js 求时间差的实现代码
2016/04/26 Javascript
javascript执行环境及作用域详解
2016/05/05 Javascript
js捕捉键盘事件和按键键值的方法
2016/10/10 Javascript
AngularJS出现$http异步后台无法获取请求参数问题的解决方法
2016/11/03 Javascript
Bootstrap table表格简单操作
2017/02/07 Javascript
JS使用插件cryptojs进行加密解密数据实例
2017/05/11 Javascript
bootstrap日期插件daterangepicker使用详解
2017/10/19 Javascript
详谈构造函数加括号与不加括号的区别
2017/10/26 Javascript
使用ngrok+express解决本地环境中微信接口调试问题
2018/02/26 Javascript
Python批量查询域名是否被注册过
2017/06/21 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
在Pycharm中对代码进行注释和缩进的方法详解
2019/01/20 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
Python系统公网私网流量监控实现流程
2020/11/23 Python
Django web自定义通用权限控制实现方法
2020/11/24 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
Python 利用argparse模块实现脚本命令行参数解析
2020/12/28 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
初中教师业务学习材料
2014/05/12 职场文书
优秀应届毕业生自荐书
2014/06/29 职场文书