在将此标记为重复之前;我也读过其他帖子。我尝试发送电子邮件就像在php中使用mail()函数一样简单。我只是尝试the example from the official python docs。但是当我尝试连接我的linux机器上的localhost时,我得到:
>>> import smtplib
>>> smtplib.SMTP('localhost')
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/usr/lib/python2.7/smtplib.py", line 251, in __init__
(code, msg) = self.connect(host, port)
File "/usr/lib/python2.7/smtplib.py", line 311, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib/python2.7/smtplib.py", line 286, in _get_socket
return socket.create_connection((host, port), timeout)
File "/usr/lib/python2.7/socket.py", line 571, in create_connection
raise err
error: [Errno 111] Connection refused
我认为这个例子并不需要运行电子邮件服务器(就像php mail()函数不需要运行电子邮件服务器一样)。
任何想法我可能做错了或如何让它发送电子邮件?欢迎所有提示!
答案 0 :(得分:1)
php mail()
函数 需要中继来发送消息。它在Linux机器上defaults to sendmail
。
在Windows上,您必须give it the address of a SMTP server。
要使任何程序发送电子邮件,您需要连接到SMTP服务器。没有乱跑。