python发送邮件问题
import smtplibfrom email.mime.text import MIMEText
from email.header import Header
from email.utils import make_msgid, formatdate, formataddr
def SendMail(receiver,code):
sender = "email@139.com"
receivers =
msg = MIMEText(f"验证码:{code}\n注意:请在5分钟以内进行验证", "plain", "utf8")
msg["From"] = formataddr(["XXXXX", sender])
msg["To"] = Header(receivers, "utf8")
msg["Subject"] = Header("XXXXX 验证码", "utf8")
msg["Message-ID"] = make_msgid()
msg["Date"] = formatdate(localtime=True)
try:
smtpobj = smtplib.SMTP_SSL("smtp.139.com", 465, timeout=10)
smtpobj.login(sender, "授权码")
smtpobj.sendmail(sender, receivers, msg.as_string())
print("OK")
return True
except Exception as e:
print(e)
return False
使用的139邮箱
结果返回:(550, b'2eef6905ae5094d-049aa Mail rejected') 邮箱被拒绝 请问大佬们为什么会被拒绝 自己给自己发是没问题的 给别人发有问题 换邮箱吧{:10_254:} 快速收敛 发表于 2025-11-3 11:13
换邮箱吧
额 为啥 就是因为需要手机号注册才选的这个邮箱 Yukiouht 发表于 2025-11-3 11:26
额 为啥 就是因为需要手机号注册才选的这个邮箱
用了你的代码试了网易邮箱没有问题,然后也注册了你这个139,确实发送不了{:10_257:}。可能只能咨询官方了 本帖最后由 快速收敛 于 2025-11-3 16:39 编辑
貌似多发送几次就成了,正常收到邮件 我记得原来要自动发邮件的话,需要先验证各邮箱服务公司的什么码? import smtplib
from email.mime.text import MIMEText from email.header import Header
from email.utils import make_msgid,formatdate,formataddr
def SendMail(receiver, code):
sender = "email@139.com" receivers =
#邮件内容,可以设计得更友好一些 mail_content = fu""您好! except smtplib.SMTPException as e: ,列表
print("邮件发送失数,SMTP错误:",e)
except Exception return False S python发送邮件问题 (复制撞] 00
print("其他错误:",e
return False
您的验证码是:{code}
请注意:此验证码将在5分钟后失效。
如果您没有请求此验证码,请忽略此邮件。
谢谢!
XXXXX团队#。计
msg =MIMEText(mail_content,"plain","utf8")
#设置邮件头部
msg["From"]= formataddr(["xxxxx",sender]) msg["To"] = Header(receiver, "utf8")
msg["Subject"]=Header("XXXXX验证码","utf8") msg["Message-ID"] = make_msgid()
msg["Date"] = formatdate(localtime=True) msg["MIME-Version"] = "1.0"
try:
#使用SMTP_SSL连接139邮箱的SMTP服务器,端口465
smtpobj= smtplib.SMTP_SSL("smtp.139.com",465,timeout=10)#登录,注意这里使用的是授权码,而不是邮箱密码
smtpobj.login(sender,"你的授权码")#请将"你的授权码"替换为实际的授权码#发送邮件
smtpobj.sendmail(sender, receivers, msg.as_string()) print("邮件发送成功") return True 本帖最后由 高山 于 2026-1-19 22:47 编辑
可以测试一下其他邮件,如果都没问题,可能是几个原因:
1、你核实你使用正确的SMTP密码了吗?
2、你确定139邮箱支持这个功能 ?
3、你确定139邮箱没有收到安全通知,触发风控,操作存在危险行为?
4、你确定139邮箱有没有可能认为你的服务器登录存在危险而拒绝,是否确认?
一般来说不是代码的问题,大概率是邮箱提供商的问题。
可以尝试更换一下邮箱,或者问一下139客服关于风控问题。
如果你认为我的回答满意,可以设置为最佳答案,有问题可以继续问我。
以上为人类回复,不是机器人,也不是AI。大概率确实是风控问题。
页:
[1]