洒哥洒哥 2020-05-27 16:54 采纳率: 0%
浏览 628

python中用139邮箱发送邮件只有一个邮箱能收到邮件,其他的邮箱都收不到

我在windows上安装了python3.8版本,写了一个用139邮箱发送邮件的脚本,只有我自己的139邮箱能收到,收件人中有一个是公司邮箱收不到邮件,抄送给的qq邮箱也收不到邮件,脚本和如下请大神们分析一下
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import Header
from email import encoders
from email.mime.base import MIMEBase

mail_host = 'smtp.139.com'
mail_user = '183xxxxxx63@139.com'
mail_pass = 'sxxxxxx5'
#receivers = ['183xxxxxx63@139.com,lixxxx@xxx.cn']

#def mailsend():
# 创建一个带有附件的实例
msg = MIMEMultipart()
subject = '标题:邮件附件发送测试'
msg['From'] = '姓名' + '<' + mail_user + '>'
msg['To'] = '183xxxxx63@139.com,lixxxxx@xxx.cn'

msg['Subject'] = subject
msg['Cc'] = '129xxxxxx@qq.com'
msg.attach(MIMEText('正文:python邮件附件发送测试', 'plain', 'utf-8'))

part = MIMEBase("application", "octet-stream")
part.set_payload(open(r"123.xls", "rb").read())
encoders.encode_base64(part)
part.add_header('Content-Disposition', '123.xls', filename='123.xls')
msg.attach(part)"""
try:
s = smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user, mail_pass)
s.sendmail(msg['From'],msg['To'] + msg['Cc'], msg.as_string())
s.quit()
except Exception as e:
print('错误类型:', e.__class__.__name__)
print('错误明细:', e)

如果我把我自己的139收件箱,只留下公司邮箱和qq邮箱为收件人时回报错,
报错如下:
错误类型: SMTPDataError
错误明细: (550, b'2efc5ecf88251af-e25bd Mail rejected')

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-05-27 19:15
    关注

    如果你自己的能收到,说明不是代码的问题,而是别的服务器当作垃圾邮件拒收了。
    包括你的电脑的ip在黑名单上,你的发送smtp在黑名单上,你的邮箱地址在黑名单上,或者你的smtp的端口/验证方式和别的smtp服务器不匹配。

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘