What does this Python requests error mean?
这个Python请求错误意味着什么? 这是否意味着它尝试连接到服务器而不能?
File"python2.7/site-packages/requests/api.py", line 55, in get
File"python2.7/site-packages/requests/api.py", line 44, in request
File"python2.7/site-packages/requests/sessions.py", line 279, in
requestFile"python2.7/site-packages/requests/sessions.py", line 374, in
sendFile"python2.7/site-packages/requests/adapters.py", line 209, in
sendConnectionError: HTTPConnectionPool(host='localhost', port=8091): Max
retries exceeded with url: /pools/default (Caused by : [Errno 8] nodename nor servname provided, or not
known
代码生成了这个:http://github.com ...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | class RestConnection(object): def __init__(self, serverInfo): #serverInfo can be a json object if isinstance(serverInfo, dict): self.ip = serverInfo["ip"] self.username = serverInfo["username"] self.password = serverInfo["password"] self.port = serverInfo["port"] self.couch_api_base = serverInfo.get("couchApiBase") else: self.ip = serverInfo.ip self.username = serverInfo.rest_username self.password = serverInfo.rest_password self.port = serverInfo.port self.couch_api_base = None self.base_url ="http://{0}:{1}".format(self.ip, self.port) server_config_uri = ''.join([self.base_url, '/pools/default']) self.config = requests.get(server_config_uri).json() # if couchApiBase is not set earlier, let's look it up if self.couch_api_base is None: #couchApiBase is not in node config before Couchbase Server 2.0 self.couch_api_base = self.config["nodes"][0].get("couchApiBase") |
仅供参考,此错误由Couchbase Python客户端生成。
这意味着您尝试访问的主机名的DNS查找失败。 例如,如果我尝试查找无效的主机名,则会收到相同的错误:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | >>> import requests >>> requests.get('http://apsoapsodjaopisjdaoij.com') Traceback (most recent call last): File"<stdin>", line 1, in <module> File"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/api.py", line 65, in get return request('get', url, **kwargs) File"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/safe_mode.py", line 39, in wrapped return function(method, url, **kwargs) File"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/api.py", line 51, in request return session.request(method=method, url=url, **kwargs) File"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/sessions.py", line 241, in request r.send(prefetch=prefetch) File"/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/models.py", line 631, in send raise ConnectionError(sockerr) requests.exceptions.ConnectionError: [Errno 8] nodename nor servname provided, or not known |
检查
为那些将来遇到这种情况的人添加我自己的经验。
事实证明,这实际上是因为我已达到系统上打开文件的最大数量。 它与失败的连接无关,甚至与指示的DNS错误无关。