经测试可用的发送邮件代码:
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协议的基本命令包括:
到此这篇关于python中执行smtplib失败的处理方法的文章就介绍到这了,更多相关python中执行smtplib失败如何处理内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!
尝试在IntelliJ中调试项目时出现此错误。有人能帮忙吗? 任务应用程序的执行失败。main()。 进程'命令'/usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java"以非零退出值1完成
无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.1:在项目gameoflife上编译(default-compile)-core:编译失败[错误]此环境中未提供编译器。也许您运行的是JRE而不是JDK? 我已经在我的机器上安装了Java,但仍然面临这个问题。 我在做EC2。
有人知道这个错误是怎么回事吗??
我对spark streaming有两个问题: < li >我有一个spark流应用程序正在运行,并以< code>20秒的批处理间隔收集数据,在< code>4000个批处理中,有< code>18个批处理因异常而失败: 无法计算拆分,块输入-0-1464774108087 未找到 我假设此时数据大小大于spark可用内存,并且应用程序< code>StorageLevel为< code>MEM
我试图使用JsonSlurper从不同的文件输入变量。但它在第二次执行时失败了。有人能帮帮我吗? 从步骤 主要的棒极了 Java全球设置。json 詹金斯档案 错误记录
在两台不同的笔记本电脑上使用maven构建相同的项目。一个是运行良好,一个是显示错误。 状态:两个系统的配置相同。 使用的命令:mvn clean install-DskipTests=true 错误: 我什至尝试删除所有内容,例如再次创建. m2文件夹。
你知道错误的根源是什么吗?filepath也不太长,每次都不是256个符号,那也没有问题:/ 提前谢谢:)
问题内容: 我正在尝试编写一个小型节点应用程序,该应用程序将搜索并解析文件系统上的大量文件。为了加快搜索速度,我们尝试使用某种类型的map reduce。该计划将是以下简化方案: Web请求带有搜索查询 启动3个进程,每个进程分配1000个(不同)文件 进程完成后,它将“返回”结果回到主线程 一旦所有进程完成,主线程将通过返回组合结果作为JSON结果来继续 我对此有以下疑问: 这在Node中可行吗