您的位置:首页技术文章
文章详情页

用python3的smtplib库发邮件一直返回无法发送邮件提示,是什么原因?

浏览:134日期:2022-06-29 10:51:04

问题描述

按照网上python3发邮件的教程,在jupyter运行都返回发送失败提示,是缺少了什么环境吗?

代码应该没问题,不过还是贴出来:

# import smtplib# from email.mime.text import MIMEText# from email.header import Header# # 第三方 SMTP 服务# mail_host='smtp.qq.com' #设置服务器# mail_user='我的邮箱' #用户名# mail_pass='邮箱口令' #口令 # sender = ’我的邮箱’# receivers = [’目标邮箱’] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱 # # 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码# message = MIMEText(’这是一个礼物,我等会会删掉的’, ’plain’, ’utf-8’)# message[’From’] = Header('你的邮件', ’utf-8’)# message[’To’] = Header('你的邮件', ’utf-8’)# subject = ’你的邮件’# message[’Subject’] = Header(subject, ’utf-8’)# try:# smtpObj = smtplib.SMTP('smtp.qq.com') # smtpObj.connect('smtp.qq.com', 25) # 25 为 SMTP 端口号# smtpObj.login(mail_user,mail_pass)# smtpObj.sendmail(sender, receivers, message.as_string())# print ('邮件发送成功')# except smtplib.SMTPException:# print('Error: 无法发送邮件')

问题解答

回答1:

你的邮箱账号开启了 POP3/SMTP/IMAP 这几个协议吗

回答2:

了解 SMTP, IMAP, POP3 之间的关联及区别, 了解电子邮件的收/发是如何进行的, 了解MIME是咋回事

了解你所在的邮件服务商是否会有 App Code 这种东西( 主流邮箱都有了 )

不要用 Python 标准库来弄这件事情了, 比如: https://github.com/hezhiming/...

其实只要搞定1, 其他的都是浮云

标签: Python 编程
相关文章: