Python邮件发送。为啥我用smtp发送邮件,发送成功没有报错,却没有收到邮件?求解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python邮件发送。为啥我用smtp发送邮件,发送成功没有报错,却没有收到邮件?求解相关的知识,希望对你有一定的参考价值。

以下代码调试通过:

# coding: utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header

sender = 'lucia_gaga@139.com'
receiver = 'lu.han@beebank.com'
subject = 'python email test'
smtpserver = 'smtp.139.com'
username = 'lucia_gaga@139.com'
password = 'xxxxxxxx'

msg = MIMEText('你好 lucia 这是你的第一封 python 发出的邮件', 'text', 'utf-8')  
# 中文需参数‘utf-8',单字节字符不需要
msg['Subject'] = Header(subject, 'utf-8')

smtp = smtplib.SMTP()
smtp.connect('smtp.139.com')
smtp.login(username, password)
smtp.sendmail(sender, receiver, msg.as_string())
smtp.quit()

运行效果:

追问

成功了!!那我的程序为什么发送不了,错在哪呢?

追答

不知道

参考技术A 建议你把smtp.SMTP改为smtp.SMTP_SSL而且把25换成465试试 注意password为你发送邮箱(不是接收邮箱的哦)的smtp或者pop3的授权码#qq的为16位授权码, 这应该就可以了

python 发送邮件

#发邮件的库
import smtplib
#邮件文本
from email.mime.text import MIMEText

#SMTP服务器
SMTPServer = "smtp.163.com"
#发邮件的地址
sender = "15999999999@163.com"
#发送者邮箱的密码
passwd = "12345678"

#设置发送的内容
message = "点开说明你承认我帅了,嘿嘿~"
#转换成邮件文本
msg = MIMEText(message)
#标题
msg["Subject"] = "来自帅哥的问候"
#发送者
msg["From"] = sender

#创建SMTP服务器
mailServer = smtplib.SMTP(SMTPServer, 25)
#登陆邮箱
mailServer.login(sender, passwd)
#发送邮件
mailServer.sendmail(sender, ["123456789@qq.com"], msg.as_string())
#退出邮箱
mailServer.quit()

以上是关于Python邮件发送。为啥我用smtp发送邮件,发送成功没有报错,却没有收到邮件?求解的主要内容,如果未能解决你的问题,请参考以下文章

如何在python程序中发邮件

php利用smtp类轻松的发送电子邮件

php利用smtp类轻松的发送电子邮件

用python实现自动发邮件的功能

python实现发送邮件

python 发送邮件