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

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'

解决:可能是由于用户名不正确,因此代码中的用户名应该填写为邮箱地址@前面部分 ,或是在邮箱设置的帐户昵称,如下图昵称Morning和马赛克部分,都可作为用户名

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

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

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

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

原文:https://blog.csdn.net/dearmorning/article/details/81069075

版权声明:本文为博主原创文章,转载请附上博文链接!

python发送邮件拒绝_Python发送邮件smtplib.SMTP各报错问题的解决方法相关推荐

  1. Python发送邮件smtplib.SMTP各报错问题的解决方法

    Python发送邮件smtplib.SMTP各报错问题的解决方法 参考文章: (1)Python发送邮件smtplib.SMTP各报错问题的解决方法 (2)https://www.cnblogs.co ...

  2. python 安装库 报错 SSL: CERTIFICATE_VERIFY_FAILED 解决方法

    目录 问题描述 临时解决方法 永久生效方法 问题描述 pip install virtualenv Collecting virtualenv /opt/python27/lib/python2.7/ ...

  3. python安装失败0x80070570_e460安装win10系统报错0x80070570的解决方法

    win10系统现已逐渐成为了主流操作系统,很多用户都将自己的电脑升级为win10系统.但近日却有用户跟小编反映说自己的e460电脑在安装win10系统时出现了提示错误0x80070570情况,那我们要 ...

  4. python class函数报错_Python multiprocess pool模块报错pickling error问题解决方法分析

    本文实例讲述了Python multiprocess pool模块报错pickling error问题解决方法.分享给大家供大家参考,具体如下: 问题 之前在调用class内的函数用multiproc ...

  5. python版本升级导致_python升级导致yum使用报错

    今天计划安装walle2.0,按官方文档http://www.walle-web.io/docs/index.html一步步进行 进行到这一步突然报错 yum install -y mariadb-d ...

  6. python中利用lxml模块解析xml文件报错XMLSyntaxError: Opening and ending tag mismatch

    今天在代码中第一次使用lxml解析xml文件时出错了, XMLSyntaxError: Opening and ending tag mismatch: keyEffectiveDate line 2 ...

  7. python程序在命令行执行提示ModuleNotFoundError: No module named ‘XXX‘ 解决方法

    python程序在命令行执行提示ModuleNotFoundError: No module named 'XXX' 解决方法 参考文章: (1)python程序在命令行执行提示ModuleNotFo ...

  8. python open找不到文件的原因_浅谈python在提示符下使用open打开文件失败的原因及解决方法...

    题目:在提示符下使用open打开一个文件 刚开始网上看了下打开的方式,结果一直实现不了,报错是没找到这个文件,而且和我输入的文件名不一样. 错误如下: >>>open('d:\456 ...

  9. python modulenotfounderror_python 服务器运行代码报错ModuleNotFoundError的解决办法

    一.问题描述 一段 Python 代码在本地的 IDE 上运行正常,部署到服务器运行后,出现了 ModuleNotFoundError: No module named 'xxx" 错误. ...

最新文章

  1. 和SAP Sales Organization相关的一些有用函数
  2. 页表长度和页表大小_在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起( ) 。_学小易找答案...
  3. mysql_install_db: /usr/bin/perl: bad interpreter:
  4. nginx 跨服务器显示图片,centos6.6下nginx配置远程服务器上图片访问
  5. mysql 数据备份方案_MySQL常见备份方案
  6. 如何一本正经地写出别人无法维护的代码?
  7. 解决vue2.0路由 TypeError: Cannot read property ‘matched‘ of undefined 的错误问题
  8. 印地语自由对话语音识别数据库-200人
  9. Composite UI Application Block(Cab)比较详细的一片文章
  10. 微软切断XP供应 Vista成制造商惟一选择
  11. CentOS7.5搭建ELK6.2.4集群与简单测试
  12. Vue3.0中文地址文档
  13. Til the Cows Come Home-Poj2387(最短路)
  14. 语法练习——动名词专项训练
  15. Beego 简单用户注册与登录
  16. 今年最后一月数据库排名公布!前三难以撼动!
  17. 全球及中国铁路行业十四五规划目标与投资建设状况分析报告2021版
  18. matlab解决根据营养成分表搭配营养配方
  19. 6angular1、jquery实现无限表单效果
  20. 为了圆梦黑客,大学四年自学计算机总结的经验全部无偿分享

热门文章

  1. 智能家庭娱乐与智能家居娱乐系统
  2. HTML5移动开发的基础与技巧(一)HTML5新增标签及应用场景
  3. 省级刊物发表方法步骤
  4. 软考之信息系统运行管理员(包含2006、2018历年真题详解+课本教材讲义)
  5. [RFID]射频卡介绍(二)IC-Mifare(M1)
  6. 数据驱动的领导力:如何通过数据分析来提升领导力和决策能力
  7. 查看gcc/g++版本以及对应默认的的C++标准
  8. 基于微信小程序的旅游系统设计与实现(毕业论文)
  9. OpenCV--圆检测
  10. python center函数_利用Python函数实现一个万历表完整示例