python3实现163邮箱SMTP发送邮件


Posted in Python onMay 22, 2018

SMTP协议

首先了解SMTP(简单邮件传输协议),邮件传送代理程序使用SMTP协议来发送电邮到接收者的邮件服务器。SMTP协议只能用来发送邮件,不能用来接收邮件,而大多数的邮件发送服务器都是使用SMTP协议。SMTP协议的默认TCP端口号是25。

发送邮件之前的配置:

上面说了是使用SMTP协议发送的邮件,所以需要先查看你的发件人邮箱是否有开启SMTP协议,如没有,则需要开启,我测试使用的是163.com的邮箱作为发信人邮箱,在设置中开启SMTP协议如下图所示。

python3实现163邮箱SMTP发送邮件

  测试的前提是你需要开通客户端授权,开通后会让你设置密码,那个密码要记好,下面的passwd接收的是授权密码而不是邮箱密码!否则会出现下图所示的错误提示:

python3实现163邮箱SMTP发送邮件

小栗子:

import smtplib 
from email.header import Header 
from email.mime.text import MIMEText 
 
# 第三方 SMTP 服务 
mail_host = "smtp.163.com" # SMTP服务器 
mail_user = "***"   # 用户名 
mail_pass = "***"  # 授权密码,非登录密码 
 
sender = ***@163.com' # 发件人邮箱(最好写全, 不然会失败) 
receivers = [***@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱 
 
content = '我用Python' 
title = '人生苦短' # 邮件主题 
 
def sendEmail(): 
 
 message = MIMEText(content, 'plain', 'utf-8') # 内容, 格式, 编码 
 message['From'] = "{}".format(sender) 
 message['To'] = ",".join(receivers) 
 message['Subject'] = title 
 
 try: 
 smtpObj = smtplib.SMTP_SSL(mail_host, 465) # 启用SSL发信, 端口一般是465 
 smtpObj.login(mail_user, mail_pass) # 登录验证 
 smtpObj.sendmail(sender, receivers, message.as_string()) # 发送 
 print("mail has been send successfully.") 
 except smtplib.SMTPException as e: 
 print(e) 
 
def send_email2(SMTP_host, from_account, from_passwd, to_account, subject, content): 
 email_client = smtplib.SMTP(SMTP_host) 
 email_client.login(from_account, from_passwd) 
 # create msg 
 msg = MIMEText(content, 'plain', 'utf-8') 
 msg['Subject'] = Header(subject, 'utf-8') # subject 
 msg['From'] = from_account 
 msg['To'] = to_account 
 email_client.sendmail(from_account, to_account, msg.as_string()) 
 
 email_client.quit() 
 
if __name__ == '__main__': 
 sendEmail() 
 # receiver = '***' 
 # send_email2(mail_host, mail_user, mail_pass, receiver, title, content)

如果测试出现报错,请看网易邮箱给出的状态码及含义。

菜鸟教程也有详细教程。

本文有参考孙华强的博客,十分感谢。

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

Python 相关文章推荐
Python入门及进阶笔记 Python 内置函数小结
Aug 09 Python
Python跳出循环语句continue与break的区别
Aug 25 Python
Python多继承原理与用法示例
Aug 23 Python
python实现两张图片拼接为一张图片并保存
Jul 16 Python
pytorch查看torch.Tensor和model是否在CUDA上的实例
Jan 03 Python
pandas数据拼接的实现示例
Apr 16 Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
May 27 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
Jun 10 Python
python zip()函数的使用示例
Sep 23 Python
python 如何上传包到pypi
Dec 24 Python
Python数据清洗工具之Numpy的基本操作
Apr 22 Python
numpy array找出符合条件的数并赋值的示例代码
Jun 01 Python
django请求返回不同的类型图片json,xml,html的实例
May 22 #Python
Django使用HttpResponse返回图片并显示的方法
May 22 #Python
python实现最长公共子序列
May 22 #Python
使用python存储网页上的图片实例
May 22 #Python
python3模块smtplib实现发送邮件功能
May 22 #Python
Python3.x爬虫下载网页图片的实例讲解
May 22 #Python
python3使用smtplib实现发送邮件功能
May 22 #Python
You might like
模仿OSO的论坛(四)
2006/10/09 PHP
用PHP写的基于Memcache的Queue实现代码
2011/11/27 PHP
php输出xml格式字符串(用的这个)
2012/07/12 PHP
php采用curl实现伪造IP来源的方法
2014/11/21 PHP
用js实现的一个Flash滚动轮换显示图片代码生成器
2007/03/14 Javascript
jQuery筛选器children()案例详解(图文)
2013/02/17 Javascript
jquery鼠标放上去显示悬浮层即弹出定位的div层
2014/04/25 Javascript
JavaScript中常见的字符串操作函数及用法汇总
2015/05/04 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
2016/05/05 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
基于JavaScript定位当前的地理位置
2017/04/11 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
select标签设置默认选中的选项方法
2018/03/02 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
2018/04/17 Javascript
vue同步父子组件和异步父子组件的生命周期顺序问题
2018/10/07 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
JS常见内存泄漏及解决方案解析
2020/05/30 Javascript
关于vue 结合原生js 解决echarts resize问题
2020/07/26 Javascript
[03:41]DOTA2上海特锦赛小组赛第三日recap精彩回顾
2016/02/28 DOTA
最基础的Python的socket编程入门教程
2015/04/23 Python
Python输出各行命令详解
2018/02/01 Python
python 提取tuple类型值中json格式的key值方法
2018/12/31 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
python中if及if-else如何使用
2020/06/02 Python
Python 发送邮件方法总结
2020/08/10 Python
HTML5 Canvas阴影使用方法实例演示
2013/08/02 HTML / CSS
iRobot官网:改变生活的家用机器人品牌
2016/09/20 全球购物
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
FC-Moto美国:欧洲最大的摩托车服装和头盔商店之一
2019/08/24 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
2014年三八妇女节活动总结
2014/03/01 职场文书
乡镇总工会学雷锋活动总结
2014/03/01 职场文书
销售经理岗位职责
2015/01/31 职场文书
看看如何用Python绘制小米新版天价logo
2021/04/20 Python
python 标准库原理与用法详解之os.path篇
2021/10/24 Python