原标题:Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码

在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景。今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的。

一般发邮件方法

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。

我们以前在通过Python实现自动化邮件功能的时候是这样的:

python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用。smtplib模块主要负责发送邮件,email模块主要负责构造邮件。

smtplib模块主要负责发送邮件:是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件(有发件人,收信人,邮件内容)。

email模块主要负责构造邮件:指的是邮箱页面显示的一些构造,如发件人,收件人,主题,正文,附件等。

其实,这段代码也并不复杂,只要你理解使用过邮箱发送邮件,那么以下问题是你必须要考虑的:

你登录的邮箱帐号/密码

对方的邮箱帐号

邮件内容(标题,正文,附件)

邮箱服务器(SMTP.xxx.com/pop3.xxx.com)

如果要把一个图片嵌入到邮件正文中怎么做?直接在HTML邮件中链接图片地址行不行?答案是,大部分邮件服务商都会自动屏蔽带有外链的图片,因为不知道这些链接是否指向恶意网站。

要把图片嵌入到邮件正文中,我们只需按照发送附件的方式,先把邮件作为附件添加进去,然后,在HTML中通过引用src="cid:0"就可以把附件作为图片嵌入了。如果有多个图片,给它们依次编号,然后引用不同的cid:x即可。

yagmail 实现发邮件

yagmail 可以更简单的来实现自动发邮件功能。

github项目地址: https://github.com/kootenpv/yagmail

代码开源,解释如下:

安装:

pip install yagmail

简单例子:

给多个用户发邮件:

只需要将接收邮箱 变成一个list即可。

yag.send(['aa@126.com','bb@qq.com','cc@gmail.com'], 'subject', contents)

发送附件

如何发送附件呢?只要添加一个附件列表就可以了。

yag.send('aaaa@126.com', '发送附件', contents, ["d://log.txt","d://baidu_img.jpg"])

抄送

很简单吧,开箱即用~~ 返回搜狐,查看更多

责任编辑:

python封装sql脚本 github_Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码...相关推荐

  1. python怎样实现封装_大牛教你如何封装 Python 代码,实现自动发送邮件只需三行代码...

    在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件的方式 SMTP是发送邮件的协议 ...

  2. Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码

    在运维开发中,使用 Python 发送邮件是一个非常常见的应用场景.今天一起来探讨一下,GitHub 的大牛门是如何使用 Python 封装发送邮件代码的. 一般发邮件方法 SMTP是发送邮件的协议, ...

  3. Python第三方库巧用,制作图片验证码只需三行代码

    现在验证码的种类真的是越来越多,短信验证码.语音验证码.图片验证码.滑块验证码 - 我们在 PC 的网页端或者手机上的 app 进行登录或者注册时,应该总会遇见图片验证码,比如下面这类: 上面这些图片 ...

  4. Sweetviz:让你只需三行代码实现Python探索性数据分析

    Sweetviz 是一个开源 Python 库,它只需三行代码就可以生成漂亮的高精度可视化效果来启动EDA(探索性数据分析).输出一个HTML.文末提供技术交流群,喜欢点赞支持,收藏. 如上图所示,它 ...

  5. python几行代码识别验证码_Python有多强?文字识别(验证码识别)只需三行代码!...

    不要说这都是在借用其它语言的代码,其实这些东西真的无关紧要.何为Python高级语言,黑猫白猫能捉到老鼠的就是好猫!如果真的有那么高冷,那么任何程序你都要敲代码而不用任何模块? 再开个玩笑,要不用0和 ...

  6. 用Python实现九九乘法表的几种方式,最简单只需一行代码

    前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 我们在学习Python的过程中需要不断的积累和练习,这样才能够走的更远, 今天一起来学习怎么用Python写九九乘法表~ 更多教程源码资料电子书: 点击此 ...

  7. python实现英文新闻摘要自动提取_利用Python实现摘要自动提取,完美瘦身只需一行代码...

    原标题:利用Python实现摘要自动提取,完美瘦身只需一行代码 今天给大家推荐一个也可以用于关键字提取的算法TextRank,但主要实现的功能是快速从长篇新闻中抽取精准摘要. 前言介绍 TextRan ...

  8. python抢票脚本github_GitHub标星超12K,抢票神器大更新,支持候补!

    原标题:GitHub标星超12K,抢票神器大更新,支持候补! " 掐指一算,距离国庆黄金周还有半个月的时间!你出行的车票都抢到了吗? 图片来自 pexels 根据国务院办公厅发布的关于 20 ...

  9. python 按键精灵脚本_[620]使用Python实现一个按键精灵

    按键精灵想必很多人都玩过,使用录制功能将鼠标和键盘的操作录制下来,录制好后就可以通过回放自动执行之前录制的操作,可以设置重复执行的次数,这样就可以将一些重复的劳动交给脚本自动化去完成.使用Python ...

最新文章

  1. python多版本共存使用pip
  2. 一个GDIPlus的Bug -- OutofMemory异常
  3. Rocket - tilelink - FIFOFixer
  4. linux 定时java程序,Linux操作系统上定时运行Java程序的方法
  5. 使用Nmon监控Linux的系统性能
  6. 【Oracle】权限
  7. RFID电力设备智能巡检管理解决方案
  8. 创新思维案列分析——苹果公司
  9. 传统密码学(三)——转轮密码机
  10. 新思路,坚持创新;好想法,坚持执行
  11. 测试基础-测试用例编写
  12. 人生如逆旅,我亦是行人——与余光中先生握一次手(二)
  13. matlab从无到有系列(五):基本图形图像处理功能
  14. pthread之如何正确的终止正在运行的子线程
  15. 2017.11.06 ~ 11.10 NOIP八连测滚粗记
  16. 02 matplotlib - 柱状图、直方图、散点图 、饼图
  17. 移动互联网时代的失意者
  18. spring之----事务
  19. c语言编译器uwp版,Win10技巧:注册UWP版文件资源管理器
  20. C# 委托学习笔记(一)

热门文章

  1. 共享单车开启混战模式,谁能笑到最后?
  2. *.zip、*.tar、*.tar.gz、*.tar.bz2、*.tar.xz、*.jar、*.7z
  3. 加工费采购订单批准后禁止更改订单数量
  4. Revit二次开发之“创建尺寸标注”
  5. 当年我见过最烂的上网行为审计产品
  6. nyoj985带通配符的数
  7. mac之brew安装卸载使用
  8. 由 Session 和 Cookie 的区别说起
  9. NGUI架构和Draw Call合并原理
  10. [WinCE版凯立德]2013夏季版地图2E21J0D更新下载(9.8增加2E23J0D分省地图)