Python SMTP Errno 10060 - PullRequest
       5

Python SMTP Errno 10060

4 голосов
/ 08 августа 2011

Может кто-нибудь дать мне некоторое представление о том, почему оба:

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
  • Я в Китае.
  • У меня есть VPN.Я попробовал это с и без VPN.
  • Я много раз раньше использовал этот код для отправки электронной почты с моей учетной записи электронной почты.Внезапно сегодня я получил эту ошибку.
  • Gmail, если доступ осуществляется через мой браузер Chrome, работает нормально.Хотя отправка простых писем занимает необычно много времени ... хммм

Ответы [ 3 ]

4 голосов
/ 08 августа 2011

Попробуйте указать время ожидания (требуется Python 2.6 +):

smtplib.SMTP("smtp.gmail.com", 587, timeout=120)

или попробуйте подключиться через SSL вместо TLS / STARTTLS (с timeout) и без него:

smtplib.SMTP_SSL("smtp.gmail.com", 465)
2 голосов
/ 02 февраля 2012

У меня была похожая проблема.Звонок на mailServer = smtplib.SMTP("smtp.gmail.com", 587) просто висит там, ничего не делая.Я даже не могу выйти из программы.Он остается в фоновом режиме навсегда!

Но добавление параметра timeout решило проблему!Он немедленно возвращается, и я могу успешно отправить электронное письмо через SMTP-сервер Gmail!

Не знаю, почему, хотя!

1 голос
/ 05 октября 2013

Смотри, мой друг, вижу строчку

mailServer = smtplib.SMTP("smtp.gmail.com", 587, timeout=120)

и поставьте YOUR_USERNAME после номера 587, например

mailServer = smtplib.SMTP("smtp.gmail.com", 587, "YOUR_USERNAME", timeout=120)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...