Python发送邮件实现基础解析


Posted in Python onAugust 14, 2020

一、python邮件模块简介

email模块属于内置模块,用来自定义邮件的中文、主题、日期、附件等信息;

smtplib模块属于内置模块,它对smtp协议进行了简单的封装,能实现邮件发送。

二、邮件发送步骤

创建SMTP的操作对象并连接smtp目标服务器,可以是163、QQ等

使用自己的账号登录目标服务器(自己的邮箱地址和邮箱授权码)

调用对象中的方法,发送邮件到目标地址

示例代码如下:

import smtplib

server = smtplib.SMTP() 
smtp.connect(smtp_server) # 发件人邮箱中的SMTP服务器,端口默认是25
server.login(sender, passwd) # 发件人邮箱账号、邮箱授权码
# msg.as_string()中as_string()是将msg(MIMEText或MIMEMultipart对象)变为str。
server.sendmail(sender, receive, msg.as_string()) 
server.quit()

上述代码没有填写实际的值,不能直接执行,有以下注意点:

msg就是我们的邮件信息对象,通过 email模块 进行定义

邮箱授权码 非登录邮箱的密码,需要读者进入QQ邮箱或其它邮箱根据步骤进行开通和获取

简单邮件实战代码如下:

import smtplib
from email.mime.text import MIMEText
smtp = smtplib.SMTP()
smtp.connect('smtp.qq.com')
smtp.login('329999897@qq.com','***授权码***')

msg = MIMEText('这是一封测试邮件', "html", "utf-8") #邮件信息对象
msg['from'] = '329999897@qq.com' # 发送人邮箱
msg['to'] = ‘liusir@qq.com' # 邮件接收人邮箱
msg['subject'] = ‘测试邮件' #邮件主题

smtp.sendmail('329999897@qq.com','liusir@qq.com',msg.as_string())
smtp.quit()

此时就可以完成简单发送邮件啦。

发送邮件的时候也可以带附件,下一次分享吧。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
10款最好的Web开发的 Python 框架
Mar 18 Python
Django中反向生成models.py的实例讲解
May 30 Python
python3实现域名查询和whois查询功能
Jun 21 Python
使用python语言,比较两个字符串是否相同的实例
Jun 29 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
Jul 12 Python
pyside+pyqt实现鼠标右键菜单功能
Dec 08 Python
python处理“
Jun 10 Python
Python进阶:生成器 懒人版本的迭代器详解
Jun 29 Python
Flask之pipenv虚拟环境的实现
Nov 26 Python
python json.dumps() json.dump()的区别详解
Jul 14 Python
Python中的With语句的使用及原理
Jul 29 Python
python实现调用摄像头并拍照发邮箱
Apr 27 Python
Python压缩模块zipfile实现原理及用法解析
Aug 14 #Python
Python编写memcached启动脚本代码实例
Aug 14 #Python
Python自动巡检H3C交换机实现过程解析
Aug 14 #Python
基于python调用jenkins-cli实现快速发布
Aug 14 #Python
使用tensorflow进行音乐类型的分类
Aug 14 #Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 #Python
如何真正的了解python装饰器
Aug 14 #Python
You might like
PHP字符串 ==比较运算符的副作用
2009/10/21 PHP
openflashchart 2.0 简单案例php版
2012/05/21 PHP
php通过curl添加cookie伪造登陆抓取数据的方法
2016/04/02 PHP
jquery png 透明解决方案(推荐)
2010/08/21 Javascript
js判读浏览器是否支持html5的canvas的代码
2013/11/18 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
2014/09/06 Javascript
Javascript中Array用法实例分析
2015/06/13 Javascript
AngularJS ng-blur 指令详解及简单实例
2016/07/30 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
JS设计模式之观察者模式实现实时改变页面中金额数的方法
2018/02/05 Javascript
Koa2微信公众号开发之消息管理
2018/05/16 Javascript
Vue验证码60秒倒计时功能简单实例代码
2018/06/22 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
2019/04/17 Javascript
ajaxfileupload.js实现上传文件功能
2019/04/19 Javascript
mpvue小程序循环动画开启暂停的实现方法
2019/05/15 Javascript
[06:14]《辉夜杯》外卡赛附加赛 4支战队巡礼
2015/10/23 DOTA
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
利用 Monkey 命令操作屏幕快速滑动
2016/12/07 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
Window系统下Python如何安装OpenCV库
2020/03/05 Python
HTML5 Canvas概述
2009/08/26 HTML / CSS
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
材料加工硕士生求职信
2013/10/10 职场文书
求职信模版
2013/11/30 职场文书
护士自我评价
2014/02/01 职场文书
小学班级口号
2014/06/09 职场文书
关心下一代工作先进事迹
2014/08/15 职场文书
售后服务承诺函格式
2015/01/21 职场文书
2016国培学习心得体会
2016/01/08 职场文书
Golang中interface{}转为数组的操作
2021/04/30 Golang
关于Vue Router的10条高级技巧总结
2021/05/06 Vue.js
redis内存空间效率问题的深入探究
2021/05/17 Redis
动画「半妖的夜叉姬」新BD特典图公开
2022/03/22 日漫
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers