有谁能给我一些洞察力,为什么这两个:
mailServer = smtplib.SMTP("smtp.gmail.com", 587)这是:
mailServer = smtplib.SMTP('smtp.gmail.com:587')正在这样说:
Traceback (most recent call last):
File "<pyshell#23>", line 1, in <module>
mailServer = smtplib.SMTP("smtp.gmail.com", 587)
File "C:\Users\user\Documents\Shuttlecock_new\python\lib\smtplib.py", line 242, in __init__
(code, msg) = self.connect(host, port)
File "C:\Users\user\Documents\Shuttlecock_new\python\lib\smtplib.py", line 302, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "C:\Users\user\Documents\Shuttlecock_new\python\lib\smtplib.py", line 277, in _get_socket
return socket.create_connection((port, host), timeout)
File "C:\Users\user\Documents\Shuttlecock_new\python\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 because connected host has failed to respond需要非常长的时间
发布于 2011-08-08 09:07:48
尝试指定一个超时(需要Python 2.6+):
smtplib.SMTP("smtp.gmail.com", 587, timeout=120)或者尝试通过SSL连接,而不是TLS/STARTTLS (有和不带timeout):
smtplib.SMTP_SSL("smtp.gmail.com", 465)发布于 2012-02-01 22:29:06
我也有过类似的问题。对mailServer = smtplib.SMTP("smtp.gmail.com", 587)的电话就挂在那里,什么也不做。我甚至不能退出这个项目。它永远呆在后台!
但是添加超时参数解决了问题!它立即返回,我可以成功地通过gmail SMTP服务器发送电子邮件!
但不知道为什么!
发布于 2013-10-05 14:49:08
看,我的朋友,看排队
mailServer = smtplib.SMTP("smtp.gmail.com", 587, timeout=120)将YOUR_USERNAME放在587数字之后,如下所示
mailServer = smtplib.SMTP("smtp.gmail.com", 587, "YOUR_USERNAME", timeout=120)https://stackoverflow.com/questions/6979678
复制相似问题