Ошибка requests.exceptions.ProxyError при отправлении запроса
Я использую прокси для доступа к ресурсу. Время от времена ловлю ошибку, что прокси пока не может получить ответ. По этому мне нужно менять прокси. Внизу функция запроса. Как правильно это встроить в код? self.rot=True
- значит что пора менять прокси. Как сделать по типу:
if ProxyError
self.rot=True
def post(self, *args, **kwargs):
while True:
proxxx=self.proxys["http"]
response = self.session.post(*args, **kwargs, proxies=self.proxys, verify=False)
if response.status_code == 200:
response.close()
return response
elif response.status_code == 403:
if proxxx==self.proxys["http"]:
print("403, меняем прокси")
self.rot=True
sleep(1)
else:
return exceptions.CheckException(response.text)
response = self.session.post(*args, **kwargs, proxies=self.proxys, verify=False)
File "/home/ubuntu/.local/lib/python3.10/site-packages/requests/sessions.py", line 635, in post
return self.request("POST", url, data=data, json=json, **kwargs)
File "/home/ubuntu/.local/lib/python3.10/site-packages/requests/sessions.py", line 587, in request
resp = self.send(prep, **send_kwargs)
File "/home/ubuntu/.local/lib/python3.10/site-packages/requests/sessions.py", line 701, in send
r = adapter.send(request, **kwargs)
File "/home/ubuntu/.local/lib/python3.10/site-packages/requests/adapters.py", line 559, in send
raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPSConnectionPool(host='service.aminoapps.com', port=443): Max retries exceeded with url: /api/v1/x257597713/s/chat/thread/(Caused by ProxyError('Cannot connect to proxy.', RemoteDisconnected('Remote end closed connection without response')))
Источник: Stack Overflow на русском