14

この Python requests エラーはどういう意味ですか? これは、サーバーに接続しようとして失敗したということですか? とは[Errno 8] nodename nor servname provided, or not knownどういう意味ですか?

ファイル "python2.7/site-packages/requests/api.py"、55 行目、get

ファイル「python2.7/site-packages/requests/api.py」、44行目、リクエスト

ファイル「python2.7/site-packages/requests/sessions.py」、279行目、リクエスト

ファイル「python2.7/site-packages/requests/sessions.py」、374行目、送信

ファイル「python2.7/site-packages/requests/adapters.py」、209行目、送信

ConnectionError: HTTPConnectionPool(host='localhost', port=8091): URL: /pools/default で最大再試行回数を超えました (原因: [Errno 8] nodename も servname も指定されていないか、不明です

コードはこれを生成しました: http://github.com...

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 クライアントから生成されます。

4

5 に答える 5

7

アクセスしようとしているホスト名の DNS ルックアップが失敗したことを意味します。たとえば、無効なホスト名を検索しようとすると、同じエラーが発生します。

>>> 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

の値を確認し、serverInfo["ip"]正しく設定されていることを確認してください。

于 2013-03-08T04:55:32.910 に答える