![](/img/trans.png)
[英]Python requests.exceptions.ConnectionError: HTTPConnectionPool(host='10.10.10.10', port=80): Max retries exceeded with url
[英]Python Requests HTTPConnectionPool and Max retries exceeded with url
在 Linux 集群上,我在請求中收到此錯誤:
ConnectionError: HTTPConnectionPool(host='andes-1-47', port=8181): Max retries exceeded with url: /jammy/api/v1 (Caused by : '')
這個錯誤是什么意思? 是請求問題還是主機上的問題,解決方法是什么?
順便說一下,該程序在帶有 localhost 的 Windows 和 Linux 獨立機器上都可以成功運行。
所以Max retries exceeded with url: ...
位可能會非常混亂。 很可能(因為您提到這可以使用 localhost 工作)這是您在某處部署的應用程序。 這也可以解釋為什么主機名是andes-1-47
而不是大多數人所期望的(例如, example.com
)。 我最好的猜測是您需要使用andes-1-47
的 IP 地址(例如, 192.168.0.255
)或者您的 Linux 集群不知道如何解析andes-1-47
,您應該將它添加到您的/etc/hosts
文件(即添加行: 192.168.0.255 andes-1-47
)。
如果您想查看您的 linux 集群是否可以解析名稱,您可以隨時使用此腳本:
import socket
socket.create_connection(('andes-1-47', 8181), timeout=2)
如果您無法解析主機名,這將在 2 秒后超時。 (您可以刪除超時,但確定主機名是否可以通過這種方式訪問可能需要更長的時間。)
在urlopen
調用中,嘗試設置retries=False
或retries=1
以查看差異。 默認值為3
,這聽起來很合理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.