Как решить ошибку 10054Python

Программы на Python
Anonymous
Как решить ошибку 10054

Сообщение Anonymous »

Я использую приложение, предоставленное каким-то веб-сайтом, для периодического сбора некоторых данных с веб-сайта, скажем, 30 секунд за раз.
После этого возвращенный ответ записывается в базу данных.
Я использую модульные запросы для запросов на импорт и пишу коды для перехвата исключений.
Коды для основной функции следующие:

Код: Выделить всё

def get_response(self):
try:
response = requests.get(self.request_url)
if response.status_code == 200:
return response.json()
except Exception as e:
msg = "Exception is:\n %s \n" % e
print msg
Вышеуказанная функция работает достаточно хорошо в течение первых нескольких часов.
Функция также может восстанавливаться после некоторых исключений, таких как:
('Соединение прервано. ', BadStatusLine("''",))

или
(«Соединение прервано.', error(10053, ''))
Исключение исключается (путем записи значение NULL в базе данных) и продолжает получать ответ следующего периода.

Однако функция перестает работать при обнаружении ошибки 10054.

Код: Выделить всё

Exception is:
('Connection aborted.', error(10054, ''))
Я проверяю базу данных и обнаруживаю, что все ответы имеют значение NULL после появления ошибки 10054.
Сначала я предполагаю, что веб-сайт может выйти из строя, поэтому ответ не получен.
Но когда я вручную перезапускаю функцию, она снова начинает получать ответ.
Так что это не связано с поломкой сайта.

Я ищу в stackoverflow и нахожу: Errno 10054 Существующее соединение было принудительно закрыто удаленным хостом.
Но я не знаю, как это решить.

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

Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/273 ... 0054-error

Вернуться в «Python»