python中执行smtplib失败的处理方法


Posted in Python onJuly 01, 2020

经测试可用的发送邮件代码:

import smtplib
from email.mime.text import MIMEText
  
# 第三方 SMTP 服务
mail_host = "smtp.163.com" # SMTP服务器
mail_user = "username" # 用户名
mail_pass = "passwd" # 密码(这里的密码不是登录邮箱密码,而是授权码)
  
sender = 'sender_mail@163.com' # 发件人邮箱
receivers = ['receive_mail@qq.com'] # 接收人邮箱 
  
content = 'Python Send Mail !'
title = 'Python SMTP Mail Test' # 邮件主题
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)

问题解决与注意点:

1.报错:Error: A secure connection is requiered(such as ssl)

解决:因为邮箱SSL验证的问题,因此把smtplib.SMTP()改成smtplib.SMTP_SSL(),端口号为465。

2.报错:535, b'Error: authentication failed'

解决:可能是由于用户名不正确,因此代码中的用户名应该填写为邮箱地址@前面部分 ,或是在邮箱设置的帐户昵称。

3.SMTP服务器可根据发送的邮箱做相应的选择,如代码中使用163邮箱则设为mail_host = "smtp.163.com",

可以改成"smtp.126.com"、"smtp.qq.com"等等。

4.代码中的密码mail_pass为授权码,并非邮箱密码,授权码用于登录第三方邮件客户端的专用密码,

QQ邮箱可通过设置→帐户→生成授权码;网易邮箱126/163可通过设置→客户端授权密码。

知识点扩展:

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

smtp协议的基本命令包括:

  • HELO 向服务器标识用户身份
  • MAIL 初始化邮件传输 mail from:
  • RCPT 标识单个的邮件接收人;常在MAIL命令后面,可有多个rcpt to:
  • DATA 在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输,以.结束
  • VRFY 用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令
  • EXPN 验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用
  • HELP 查询服务器支持什么命令
  • NOOP 无操作,服务器应响应OK
  • QUIT 结束会话
  • RSET 重置会话,当前传输被取消
  • MAIL FROM 指定发送者地址
  • RCPT TO 指明的接收者地址

到此这篇关于python中执行smtplib失败的处理方法的文章就介绍到这了,更多相关python中执行smtplib失败如何处理内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
pandas pivot_table() 按日期分多列数据的方法
Nov 16 Python
python学生管理系统
Jan 30 Python
python自动保存百度盘资源到百度盘中的实例代码
Aug 26 Python
python的pyecharts绘制各种图表详细(附代码)
Nov 11 Python
python创建n行m列数组示例
Dec 02 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
Apr 07 Python
Python实现转换图片背景颜色代码
Apr 30 Python
python 解决mysql where in 对列表(list,,array)问题
Jun 06 Python
解决pip install psycopg2出错问题
Jul 09 Python
python自动打开浏览器下载zip并提取内容写入excel
Jan 04 Python
用python查找统一局域网下ip对应的mac地址
Jan 13 Python
python实现代码审查自动回复消息
Feb 01 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
Jul 01 #Python
完美解决keras 读取多个hdf5文件进行训练的问题
Jul 01 #Python
学python需要去培训机构吗
Jul 01 #Python
详解python logging日志传输
Jul 01 #Python
python怎么调用自己的函数
Jul 01 #Python
解决keras模型保存h5文件提示无此目录问题
Jul 01 #Python
如何解决安装python3.6.1失败
Jul 01 #Python
You might like
PHP HTML代码串截取代码
2008/12/29 PHP
php使用imagick模块实现图片缩放、裁剪、压缩示例
2014/04/17 PHP
thinkphp3.x中cookie方法的用法分析
2016/05/19 PHP
PHP使用第三方即时获取物流动态实例详解
2017/04/27 PHP
jQuery中的.bind()、.live()和.delegate()之间区别分析
2011/06/08 Javascript
Javascript设置对象的ReadOnly属性(示例代码)
2013/12/25 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖放商品放置购物车
2015/11/30 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
js如何判断输入字符串长度
2015/12/16 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
Javascript技术栈中的四种依赖注入详解
2016/02/23 Javascript
ASP.NET jquery ajax传递参数的实例
2016/11/02 Javascript
使用jQuery的ajax方法向服务器发出get和post请求的方法
2017/01/13 Javascript
Node.js使用gm拼装sprite图片
2017/07/04 Javascript
js实现按钮开关单机下拉菜单效果
2018/11/22 Javascript
简单使用webpack打包文件的实现
2019/10/29 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
python以环状形式组合排列图片并输出的方法
2015/03/17 Python
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
Django使用HttpResponse返回图片并显示的方法
2018/05/22 Python
Django框架HttpRequest对象用法实例分析
2019/11/01 Python
python opencv实现gif图片分解的示例代码
2019/12/13 Python
Python3 操作 MySQL 插入一条数据并返回主键 id的实例
2020/03/02 Python
Django如何使用asyncio协程和ThreadPoolExecutor多线程
2020/10/12 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
pytorch 把图片数据转化成tensor的操作
2021/03/04 Python
CSS3制作翻转效果_动力节点Java学院整理
2017/07/11 HTML / CSS
基于HTML5+CSS3实现简单的时钟效果
2017/09/11 HTML / CSS
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
学生个人求职自荐信格式
2013/09/23 职场文书
汽车销售求职自荐信
2013/10/01 职场文书
房地产财务管理制度
2014/02/02 职场文书
开展党的群众路线教育实践活动方案
2014/02/05 职场文书
工商企业管理专业自荐信范文
2014/04/12 职场文书
个人查摆剖析材料
2014/10/04 职场文书
Java面试题冲刺第十六天--消息队列
2021/08/07 面试题