В рамках проекта по очистке данных из Craigslist я включил в себя очистку изображений. Я заметил в тестировании, что иногда соединение отказывается. Есть ли способ обойти это, или мне нужно включить перехват ошибок для этого в моем коде? Я помню, что Twitter API ограничивает запросы, поэтому встроен таймер отключения. Любопытно, если у меня такая же ситуация с Craigslist. См. Код и ошибку ниже.
#loops through each image and stores it in a local folder
for img in soup_test.select('a.thumb'):
imgcount += 1
filename = (pathname + "/" + motoid + " - "+str(imgcount)+".jpg")
with open(filename, 'wb') as f:
response = requests.get(img['href'])
f.write(response.content)
ConnectionError: HTTPSConnectionPool (host = 'images.craigslist.org', port = 443): превышено максимальное количество попыток с URL: /00707_fbsCmug4hfR_600x450.jpg (вызвано NewConnectionError (': не удалось установить новое соединение: [WinError 100 Невозможно установить соединение, потому что целевая машина активно отказалась от него ',))
У меня есть 2 вопроса об этом поведении.
Есть ли у серверов CL какие-либо правила или протоколы, такие как блокирование n-го запроса в течение определенного периода времени?
Есть ли способ приостановить цикл после отказа в соединении? Или я просто включил перехват ошибок, чтобы не остановить мою программу?