3

我正在尝试使用以下代码发送电子邮件:

s = smtplib.SMTP("smtp.live.com",587, timeout=120)
    s.ehlo()
    s.starttls() 
    s.ehlo()
    s.login(user, pass)
msg["To"] = string.joinfields(bundle, ", ")
    s.sendmail(usuario, bundle, msg)

但是我收到以下错误:

  File "C:\Python27\lib\smtplib.py", line 242, in __init__
    (code, msg) = self.connect(host, port)
  File "C:\Python27\lib\smtplib.py", line 302, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "C:\Python27\lib\smtplib.py", line 277, in _get_socket
    return socket.create_connection((port, host), timeout)
  File "C:\Python27\lib\socket.py", line 571, in create_connection
    raise err
error: [Errno 10060] A connection attempt failed because the connected party did
 not properly respond after a period of time, or established connection failed b
ecause connected host has failed to respond

我做错了什么?

4

1 回答 1

1

没什么,我想。您可能在防火墙后面,或者 hotmail 的日子不好过。在命令提示符下,尝试telnet smtp.live.com 587. 如果您没有收到回复,则说明您的连接存在问题。

这是我得到的结果:

$ telnet smtp.live.com 587
Trying 65.55.96.11...
Connected to smtp.hot.glbdns.microsoft.com.
Escape character is '^]'.
220 BLU0-SMTP406.phx.gbl Microsoft ESMTP MAIL Service, Version: 6.0.3790.4675 ready at  Mon, 30 Jul 2012 19:37:46 -0700 
于 2012-07-31T02:39:40.410 回答