无法在Python中启动smtp

无法在Python中启动smtp,python,smtp,telnet,Python,Smtp,Telnet,我尝试使用python启动smtp服务器,代码如下: import smtplib smtp_server = smtplib.SMTP('localhost') 我得到以下错误: File "test.py", line 2, in <module> smtp_server = smtplib.SMTP('localhost') File "/usr/local/lib/python2.7/smtplib.py", line 242, in __init__

我尝试使用python启动smtp服务器,代码如下:

import smtplib
smtp_server = smtplib.SMTP('localhost')
我得到以下错误:

File "test.py", line 2, in <module>
    smtp_server = smtplib.SMTP('localhost')
  File "/usr/local/lib/python2.7/smtplib.py", line 242, in __init__
    (code, msg) = self.connect(host, port)
  File "/usr/local/lib/python2.7/smtplib.py", line 302, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "/usr/local/lib/python2.7/smtplib.py", line 277, in _get_socket
    return socket.create_connection((port, host), timeout)
  File "/usr/local/lib/python2.7/socket.py", line 571, in create_connection
    raise err
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host: Connection refused
同样的python代码在我的另一台机器上运行得非常好

有什么建议吗

谢谢

更新:


我遇到问题的机器运行的是Python2.7.2,而代码运行良好的机器运行的是Python2.6.2。我不知道这是否是原因之一。

问题在于smtplib不提供SMTP服务器实现,而是实现SMTP客户端。最可能的情况是,代码试图连接到localhost,但失败了。看

您编写的另一台计算机是否已经运行SMTP服务器


您想做什么?

问题是smtplib不提供SMTP服务器实现,而是实现SMTP客户端。最可能的情况是,代码试图连接到localhost,但失败了。看

您编写的另一台计算机是否已经运行SMTP服务器


您想做什么呢?

smtplib
是SMTP协议客户端。您正在寻找的是。

smtplib
是SMTP协议客户端。您需要的是。

这是本地smtp服务器的配置问题。如果看不到配置的更多细节,很难说更多。这是本地smtp服务器的配置问题。如果看不到配置的更多详细信息,很难说更多。如何判断计算机是否正在运行SMTP服务器?如果它没有运行,如何启动一个呢?例如,telnet到SMTP端口。在不运行程序的情况下尝试这样做。如果成功,则已存在一个服务器。很难给出合理的答案,我需要了解您试图做什么以及目的。我正在尝试启动SMTP服务器,并在程序结束时发送电子邮件通知我运行状态。由于smtplib是smtp客户端的实现,它不能只在其他机器上工作。您没有使用smtpd。如果它起作用,它就不会以你想象的方式起作用。它只是连接到本地主机上的smtp服务器。也许你可以发一封电子邮件。如果它工作的机器可以通过网络访问,请尝试指定它(或其IP)而不是本地主机。创建和设置SMTP服务器通常不只是发送电子邮件所需。我如何判断计算机是否正在运行SMTP服务器?如果它没有运行,如何启动一个呢?例如,telnet到SMTP端口。在不运行程序的情况下尝试这样做。如果成功,则已存在一个服务器。很难给出合理的答案,我需要了解您试图做什么以及目的。我正在尝试启动SMTP服务器,并在程序结束时发送电子邮件通知我运行状态。由于smtplib是smtp客户端的实现,它不能只在其他机器上工作。您没有使用smtpd。如果它起作用,它就不会以你想象的方式起作用。它只是连接到本地主机上的smtp服务器。也许你可以发一封电子邮件。如果它工作的机器可以通过网络访问,请尝试指定它(或其IP)而不是本地主机。创建和设置SMTP服务器通常不是发送电子邮件所需的事情。