Python 的电子邮件编程
目录
python 的电子邮件编程
1.开启SMTP服务设置, 获取验证码
2.编写Python程序发送邮件示例
python 的电子邮件编程
两个内建模块
email 模块, 用于准备邮件内容的模块
smtplib 模块, 用于与邮件服务器连接并发送邮件的模块使用 QQ 邮箱来发送电子邮件
两步
配置QQ邮箱, 开启SMTP服务的设置, 获取验证码
编写 python 程序发送邮件
配置 QQ邮箱的SMTP 服务
网址: mail.qq.com
授权码:
aaaa bbbb cccc dddd
1.开启SMTP服务设置, 获取验证码
进入QQ邮箱的官网: mail.qq.com登陆
滑动滑块进行验证
得到 如 aaaa bbbb cccc dddd 格式的验证码保存起来供后续使用
进入QQ邮箱的设置界面
向下拖动滚动条,找到
POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
,开启SMTP设置用手机 将
配置邮件客户端
发送到1069 0700 69
然后点击 我已发送如果SMTP 服务开启成功,且
IMAP/SMTP服务
状态显示关闭则说明QQ 邮箱的SMTP 服务开启成功
2.编写Python程序发送邮件示例
from email.mime.text import MIMETextfrom email.header import Headerimport smtplibimport getpassdef inet_mail(body, sender, receivers, subject, host, passwd):# 准备正文,plain表示纯文本内容message = MIMEText(body, 'plain', 'utf8')# 设置头部消息message['From'] = Header(sender, 'utf8')message['To'] = Header(receivers[0], 'utf8')message['Subject'] = Header(subject, 'utf8')# 发送邮件smtp = smtplib.SMTP() # 创建smtp对象smtp.connect(host) # 连接服务器# smtp.starttls() # 如果服务器要求安全连接,则打开此注释smtp.login(sender, passwd)smtp.sendmail(sender, receivers, message.as_bytes())if __name__ == '__main__':body = 'python互联网邮件测试\n'sender = '77878045@qq.com'receivers = ['77878045@qq.com', 'weimz@tedu.cn']subject = 'python email test'host = 'smtp.qq.com'# 密码不是登陆密码,而是授权码passwd = getpass.getpass()inet_mail(body, sender, receivers, subject, host, passwd)
Python 的电子邮件编程相关推荐
- 使用Python发送电子邮件
by Arjun Krishna Babu 通过Arjun Krishna Babu 如何使用Python发送电子邮件 (How to send emails using Python) As a l ...
- 《Python数据可视化编程实战》——5.5 用OpenGL制作动画
本节书摘来异步社区<Python数据可视化编程实战>一书中的第5章,第5.5节,作者:[爱尔兰]Igor Milovanović,更多章节内容可以访问云栖社区"异步社区" ...
- PYTHON黑帽编程1.5 使用WIRESHARK练习网络协议分析
Python黑帽编程1.5 使用Wireshark练习网络协议分析 1.5.0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks At ...
- Python黑帽编程2.4 流程控制
Python黑帽编程2.4 流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if -..else 先上一段代码: #!/usr/bin/python # - ...
- Python面对对象编程——对象、类详解及实例
Python中类与对象的初认识 1.Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的 ...
- python的socket编程_Python Socket编程详细介绍
在使用Python做socket编程时,由于需要使用阻塞(默认)的方式来读取数据流,此时对于数据的结束每次都需要自己处理,太麻烦.并且网上也没找到太好的封装,所以就自己写了个简单的封装. 封装思路 1 ...
- Python黑帽编程 3.1 ARP欺骗
Python灰帽编程 3.1 ARP欺骗 ARP欺骗是一种在局域网中常用的攻击手段,目的是让局域网中指定的(或全部)的目标机器的数据包都通过攻击者主机进行转发,是实现中间人攻击的常用手段,从而实现数据 ...
- python采用函数式编程模式吗_Python函数与函数式编程
1 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创 ...
- python趣味编程100_《Python游戏趣味编程》 第8章 勇闯地下一百层
知乎视频www.zhihu.com 图书简介可以看这里:童晶:<Python游戏趣味编程>新书上架了zhuanlan.zhihu.com 本章我们将编写一个勇闯地下一百层的游戏,键盘控 ...
最新文章
- rlwrap 让Linux下的sqlplus变得好用
- GNS3错误7200:无法开始Dynamips于端口7200
- php html url编码,html中url编码是什么?有什么用?
- 如何将业务系统的数据抽取汇聚到数据中台?
- android ble 实现自动连接,Android:自动重新连接BLE设备
- hdfs中与file数组类似的数组_EXCEL中数组的应用专题之十二:行列数相同数组的运算...
- ClippingNode实现新手引导高亮裁切
- OpenGL基础50:HDR
- Java 8 新日期时间 API ( 下 ) – 时区日期时间
- Java中各种读写文件的方法
- 3dsMax批量设置可编辑样条线的视口渲染
- 微信小程序选择图片更换背景
- Keil5中提示warning C318: can‘t open file ‘xxx.h‘
- 安卓面试中高级安卓开发工程师总结之——大公司面试的方向和套路以及应对方法
- oracle 70个常用函数
- 料:泡好的大米15克
- MAC Monterey升级后的L2TP问题的完美解决方案
- 扫描普通二维码跳转到微信小程序指定页面
- 记一次国内投德国IT工作机会
- 超详细的MySQL三万字总结
热门文章
- 一个IEEE论文LaTeX模板,可能较旧
- 程序员面试题精选100题(35)-两链表的第一个公共结点[数据结构]
- 程序员面试题精选100题(11)-求二元查找树的镜像[数据结构]
- Ubuntu下git使用教程
- Day 9: TextBlob——对文本进行情感分析
- 三个程序代码托管平台出现勒索事件? 建议启用多因素验证以保护账户
- VMware Workstation中安装linux系统(CentOS)超详细
- Docker中应用的性能调优指南(一)- 先谈谈容器化性能调优
- arcgis api for flex 开发入门(五)查询
- 现代化权限管理解决方案平台推动商业模式的演进