python自动化发送邮件实例讲解


Posted in Python onJanuary 04, 2021

在python中,通过如下两个模块可以实现邮件的自动化操作

  1. smtplib
  2. email

smtplib模块是对SMTP协议的封装,用于发送邮件;email模块用于构建邮件内容,支持以下3种形式的邮件

  1. 纯文本
  2. html
  3. 带附件

首先来看下邮件的构建,对于一封邮件,需要指定发件人,收件人,主题,正文等内容,以最简单的纯文本邮件为例,构建方式如下

>>> from email.mime.text import MIMEText
>>> from email.header import Header
>>> subject = '主题'
>>> message = MIMEText('正文', 'plain', 'utf-8')
>>> message['From'] = Header("发件人", 'utf-8')
>>> message['To'] = Header("收件人", 'utf-8')
>>> message['Subject'] = Header(subject, 'utf-8')

通过MIMEText方法来创建邮件,第一个参数为邮件的正文,第二个参数为邮件正文的形式,plain表示纯文本,第三个参数指定编码方式;然后通过From, To, Subject等属性的设置来分别指定发件人,收件人和主题。

对于html形式的邮件,只需要指定MIMEText的第二个参数为html即可,用法如下

>>> msg = '<p>正文</p>'
>>> message = MIMEText(msg, 'html', 'utf-8')

对于带附件的邮件,需要通过MIMEMultipart来创建邮件,用法如下

>>> from email.mime.multipart import MIMEMultipart
>>> message = MIMEMultipart()
>>> message.attach(MIMEText('正文', 'plain', 'utf-8'))
>>> attach = MIMEText(open('input.txt', 'rb').read(), 'base64', 'utf-8')
>>> attach["Content-Type"] = 'application/octet-stream'
>>> attach["Content-Disposition"] = 'attachment; filename="test.txt"'
>>> message.attach(attach)

创建好邮件之后,就可以通过SMTP来发送了,这里以QQ邮箱为例,首先需要开启QQ邮箱的SMTP服务器,然后生成授权码,图示如下

python自动化发送邮件实例讲解

用QQ邮箱发送邮件的代码如下

>>> import smtplib
>>> from email.mime.text import MIMEText
>>> from email.header import Header
>>> message = MIMEText('正文', 'plain', 'utf-8')
>>> message['From'] = Header("发件人", 'utf-8')
>>> message['To'] = Header("收件人", 'utf-8')
>>> message['Subject'] = Header('主题', 'utf-8')
>>> server=smtplib.SMTP_SSL("smtp.qq.com", 465)
>>> server.login('xxxxxxxx@qq.com', 'dvyybvbwpnnbbdaj')
>>> server.sendmail('xxxxxxxx@qq.com', 'xxxxxxxx@qq.com' , message.as_string())

对于需要定期发送,且内容较为固定的邮件,通过自动化可以大大减少工作量,比如通过python监控磁盘空间,当使用率超过80%时,自动向运维人员发送邮件,以提醒备份和清理磁盘。

到此这篇关于python自动化发送邮件实例讲解的文章就介绍到这了,更多相关使用python自动化发送邮件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python基础教程之获取本机ip数据包示例
Feb 10 Python
状态机的概念和在Python下使用状态机的教程
Apr 11 Python
Python中import导入上一级目录模块及循环import问题的解决
Jun 04 Python
django基础之数据库操作方法(详解)
May 24 Python
python给微信好友定时推送消息的示例
Feb 20 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
python浪漫表白源码
Apr 05 Python
python flask解析json数据不完整的解决方法
May 26 Python
python3实现mysql导出excel的方法
Jul 31 Python
python属于软件吗
Jun 18 Python
OpenCV图片漫画效果的实现示例
Aug 18 Python
python基于win32api实现键盘输入
Dec 09 Python
Python Selenium库的基本使用教程
Jan 04 #Python
selenium学习教程之定位以及切换frame(iframe)
Jan 04 #Python
python自动打开浏览器下载zip并提取内容写入excel
Jan 04 #Python
python Scrapy框架原理解析
Jan 04 #Python
如何用 Python 处理不平衡数据集
Jan 04 #Python
Python创建简单的神经网络实例讲解
Jan 04 #Python
python实现跨年表白神器--你值得拥有
Jan 04 #Python
You might like
php+javascript的日历控件
2009/11/19 PHP
PHP培训要多少钱
2017/06/06 PHP
基于php流程控制语句和循环控制语句(讲解)
2017/10/23 PHP
js同时按下两个方向键
2007/12/01 Javascript
js用图作提交按钮或超连接
2008/03/26 Javascript
javascript 操作Word和Excel的实现代码
2009/10/26 Javascript
jquery动态更换设置背景图的方法
2014/03/25 Javascript
javascript常用的正则表达式实例
2014/05/15 Javascript
JS实现具备延时功能的滑动门菜单效果
2015/09/17 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
JS获取中文拼音首字母并通过拼音首字母快速查找页面内对应中文内容的方法【附demo源码】
2016/08/19 Javascript
Websocket协议详解及简单实例代码
2016/12/12 Javascript
WEB开发之注册页面验证码倒计时代码的实现
2016/12/15 Javascript
vue通过watch对input做字数限定的方法
2017/07/13 Javascript
用ES6写全屏滚动插件的示例代码
2018/05/02 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
[05:34]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY第二弹
2014/06/25 DOTA
[55:48]VGJ.S vs TNC Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
编写自定义的Django模板加载器的简单示例
2015/07/21 Python
Python求算数平方根和约数的方法汇总
2016/03/09 Python
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
分享Python开发中要注意的十个小贴士
2016/08/30 Python
python 字符串只保留汉字的方法
2018/11/16 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
Python解释器以及PyCharm的安装教程图文详解
2020/02/26 Python
Python 如何在字符串中插入变量
2020/08/01 Python
html5使用canvas画三角形
2014/12/15 HTML / CSS
美国高端寝具品牌:Coyuchi
2017/02/08 全球购物
捷克鲜花配送:Florea.cz
2018/10/29 全球购物
澳大利亚最大的在线美发和美容零售商之一:My Hair Care & Beauty
2019/08/24 全球购物
int和Integer有什么区别
2013/05/25 面试题
如何通过jdbc调用存储过程
2012/04/19 面试题
银行出纳岗位职责
2013/11/25 职场文书
青春无悔演讲稿
2014/05/08 职场文书
2014年小学工作总结
2014/11/26 职场文书