Python Urlopen IoError: [Ошибка Socket errno] [Errno 10060]
Вопрос
Я хочу получить больше информации о IOError: [Errno socket error] [Errno 10060]
при использовании URLOPEN в Python 2.7. Я использую мое личное подключение к Интернету 35 МБ / с (без прокси).
Я открывал несколько веб-страниц с различных веб-сайтов, используя сценарий Python и время от времени получить сообщение об ошибке:
webpage = urlopen('http://www.thewebpage.com')
IOError: [Errno socket 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
.
Эта ошибка появилась после попытки открыть страницы с разных веб-сайтов. Поэтому, похоже, не связано исключительно к открытию страниц с одного конкретного сайта. Я также получил эту ошибку, используя механизацию .
Мои вопросы:
- Это ошибка связана с тем, что я отправляю несколько запросов на тот же сервер в течение короткого периода времени? Будет сокращать бы шанс получить эту ошибку?
- Есть ли способ предотвратить это? Могу ли я использовать условное утверждение, чтобы предотвратить сбой сценария?
Мой скрипт занимает около часа, чтобы запустить, и при необходимости перезагрузиться из-за этой ошибки довольно неприятно.
Решение
Отправка нескольких запросов к одному и тому же серверу, в краткой последовательности, вполне может вызвать, что сервер не отвечает, поскольку ваши запросы могут выглядеть как атаку DDOS.Вы можете поймать исключение с пунктом попробовать, кроме как попробуйте снова.