гнездо Python Errno 10060 - PullRequest
       6

гнездо Python Errno 10060

1 голос
/ 26 февраля 2012

Я использую Python для подключения к серверу, но иногда Я получаю это:

ошибка: [Errno 10060] Попытка подключения не удалась, потому что подключено сторона не ответила должным образом по истечении определенного периода времени или установила не удалось установить соединение, поскольку подключенный хост не смог ответить

когда я вызываю метод socket.connect

s= socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((self._ipv4address, host_port))
try:
    s.connect((dest_ip, dest_port))
except:
    raise

Почему я вижу эту ошибку? И как мне решить проблему?

1 Ответ

3 голосов
/ 27 февраля 2012

Вам не нужно связывать сокет (если только удаленный сервер не ожидает входящего сокета) - крайне редко это может быть требованием для подключения.

Вместо использования сокетов для открытия веб-сайта, используйте urllib2 или механизируйте , если вам нужно изменить формы. Они управляют файлами cookie, сессиями, состоянием страницы и т. Д. Гораздо проще.

Кроме того, если вам не удается подключиться .. не сдавайтесь! Попробуйте еще раз, некоторые сайты могут быть pokey, чтобы ответить. Некоторые могут не отвечать некоторое время в зависимости - обращайтесь с этим лучше. Вместо того, чтобы просто выдавать ошибку, оберните ваш метод соединения декоратором экспоненциального отката .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...