Python py2neo v4无法连接到Graphenedb
我可以用版本3连接到graphenedb(因为我无法连接v4),但在使用git安装重新安装v4后,我现在无法登录。我遵循文档中推荐的登录方法,下面是我的代码 我使用的是ubuntu 16.04和python版本3.5.2 我在代码中有帐户和密码,因为它是一个测试数据库,所以您可以使用它进行测试。谢谢Python py2neo v4无法连接到Graphenedb,python,neo4j,py2neo,Python,Neo4j,Py2neo,我可以用版本3连接到graphenedb(因为我无法连接v4),但在使用git安装重新安装v4后,我现在无法登录。我遵循文档中推荐的登录方法,下面是我的代码 我使用的是ubuntu 16.04和python版本3.5.2 我在代码中有帐户和密码,因为它是一个测试数据库,所以您可以使用它进行测试。谢谢 from py2neo import Graph uri='bolt://hobby-decofbokkgfdgbkemhfoical.dbs.graphenedb.com:24786' user
from py2neo import Graph
uri='bolt://hobby-decofbokkgfdgbkemhfoical.dbs.graphenedb.com:24786'
user='Sen'
pwd='b.QS1afdAYIUnb.FWIkIyENscjeVzMJ'
graph = Graph(uri, auth=(user, pwd), port=24786)
而回应是这样的,
S: [CLOSE]
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/py2neo/database.py", line 89, in __new__
inst = cls._instances[key]
KeyError: '8e260f1265ad91eb60c4ceb775be7ba2'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "graphObjects.py", line 7, in <module>
graph = Graph(uri, auth=(user, pwd), port=24786)
File "/usr/local/lib/python3.5/dist-packages/py2neo/database.py", line 307, in __new__
database = Database(uri, **settings)
File "/usr/local/lib/python3.5/dist-packages/py2neo/database.py", line 98, in __new__
user_agent=connection_data["user_agent"])
File "/usr/local/lib/python3.5/dist-packages/neo4j/v1/api.py", line 125, in driver
return driver_class(uri, **config)
File "/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py", line 69, in __init__
pool.release(pool.acquire())
File "/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py", line 44, in acquire
return self.acquire_direct(self.address)
File "/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py", line 453, in acquire_direct
connection = self.connector(address, self.connection_error_handler)
File "/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py", line 66, in connector
return connect(address, security_plan.ssl_context, error_handler, **config)
File "/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py", line 707, in connect
raise last_error
File "/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py", line 699, in connect
connection = _handshake(s, resolved_address, der_encoded_server_certificate, error_handler, **config)
File "/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py", line 655, in _handshake
raise ProtocolError("Connection to %r closed without handshake response" % (resolved_address,))
neo4j.exceptions.ProtocolError: Connection to ('54.86.53.94', 24786) closed without handshake response
S:[关闭]
回溯(最近一次呼叫最后一次):
文件“/usr/local/lib/python3.5/dist-packages/py2neo/database.py”,第89行,新__
inst=cls.\u实例[键]
键错误:“8e260f1265ad91eb60c4ceb775be7ba2”
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“graphObjects.py”,第7行,在
graph=graph(uri,auth=(用户,pwd),端口=24786)
文件“/usr/local/lib/python3.5/dist-packages/py2neo/database.py”,第307行,新__
数据库=数据库(uri,**设置)
文件“/usr/local/lib/python3.5/dist-packages/py2neo/database.py”,第98行,新__
用户\代理=连接\数据[“用户\代理”])
文件“/usr/local/lib/python3.5/dist-packages/neo4j/v1/api.py”,第125行,在驱动程序中
返回驱动程序类(uri,**配置)
文件“/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py”,第69行,在__
pool.release(pool.acquire())
文件“/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py”,第44行,在acquire中
返回self.acquire_direct(self.address)
文件“/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py”,第453行,直接获取
connection=self.connector(地址、self.connection\u错误\u处理程序)
文件“/usr/local/lib/python3.5/dist-packages/neo4j/v1/direct.py”,第66行,在连接器中
返回连接(地址、安全\u plan.ssl\u上下文、错误\u处理程序、**配置)
文件“/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py”,第707行,在connect中
提出最后一个错误
文件“/usr/local/lib/python3.5/dist-packages/neo4j/bolt/connection.py”,第699行,在connect中
连接=\握手(s,解析的\地址,顺序编码的\服务器\证书,错误\处理程序,**配置)
文件“/usr/local/lib/python3.5/dist packages/neo4j/bolt/connection.py”,第655行,in_握手
raise ProtocolError(“与%r的连接已关闭,没有握手响应”%(已解析的\u地址,))
neo4j.exceptions.ProtocolError:到('54.86.53.94',24786'的连接已关闭,没有握手响应
谢谢 您的Neo4J实例正在使用TLS进行螺栓连接,但您的py2neo没有。 这种回溯的特点是尝试使用正常的、未加密的连接连接到TLS服务器 为了解决此问题,请告诉py2neo螺栓连接应使用TLS,方法是将
secure=True
传递到图形
实例的初始化中:
graph=graph(uri,auth=(user,pwd),port=24786,secure=True)
您的Neo4J实例正在使用TLS进行螺栓连接,但您的py2neo没有。
这种回溯的特点是尝试使用正常的、未加密的连接连接到TLS服务器
为了解决此问题,请告诉py2neo螺栓连接应使用TLS,方法是将secure=True
传递到图形
实例的初始化中:
graph=graph(uri,auth=(user,pwd),port=24786,secure=True)
您的graphenedb实例是否启用了SSL?如果是这样,您需要在连接中通过将secure=True
传递给Graph()
初始化来指定该值。@您的解决方案是正确的!我在graphenedb上找不到任何SSL设置,但我想这是默认设置的;我将设置一个答案。您的graphenedb实例是否启用了SSL?如果是这样,您需要在连接中通过将secure=True
传递给Graph()
初始化来指定该值。@您的解决方案是正确的!我在graphenedb上找不到任何SSL设置,但我想这是默认设置的;我会给你一个答案。