smtplib - 无法建立连接,因为目标计算机主动拒绝它

时间:2017-02-04 21:22:25

标签: python-2.7 smtplib

虽然我可以找到很多关于这个失败的类似问题,但建议/答案对我的情况没有帮助,所以我正在寻求一些帮助。我有以下功能,它在我的开发机器(Windows 7)上工作得非常好但是当我尝试在另一台运行Windows Server 2012 R2标准操作系统的机器上运行时,我得到了“Errno 10061 - 无法建立连接因为目标机器主动拒绝它“失败。 我试过禁用机器上的防火墙,但没有帮助。我知道端口和SMTP服务器正在正确监听,因为我的开发机器上的代码相同。我该如何解决这个问题?任何帮助表示赞赏

def send_email(user, pwd, recipient, subject, body):
  gmail_user = user
  gmail_pwd = pwd
  FROM = user
  TO = recipient if type(recipient) is list else [recipient]
  SUBJECT = subject
  TEXT = body

message = """From: %s\nTo: %s\nSubject: %s\n\n%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
try:
    server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465)
    server_ssl.ehlo()
    # server_ssl.starttls()
    server_ssl.login(gmail_user, gmail_pwd)
    server_ssl.sendmail(FROM, TO, message)
    server_ssl.close()
    print 'successfully sent the mail'
except:
    print "failed to send mail"

1 个答案:

答案 0 :(得分:0)

问题是防火墙阻止连接。一旦删除该脚本就可以了