Python请求使用url超出HTTPConnectionPool和Max重试次数

Hen*_*ton 11 python python-requests

在Linux集群上,我通过请求收到此错误:

ConnectionError:HTTPConnectionPool(host ='andes-1-47',port = 8181):使用url:/ jammy/api/v1超出最大重试次数(由:''引起)

这个错误是什么意思?它是一个请求问题还是主机上的问题,解决方案是什么?

顺便说一句,该程序在具有localhost的Windows和Linux独立计算机上成功运行.

Ian*_*sco 10

所以这Max retries exceeded with url: ...一点可能非常令人困惑.很可能(因为你提到这可以使用localhost),这是你正在某处部署的应用程序.这也可以解释为什么主机名是,andes-1-47而不是大多数人期望的东西(例如example.com).我最好的猜测是你需要使用IP地址andes-1-47(例如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)
Run Code Online (Sandbox Code Playgroud)

如果无法解析主机名,则会在2秒内超时.(您可以删除超时,但可能需要更长的时间来确定主机名是否可以通过这种方式访问​​.)