py2neo 3.1.2连接问题
py2neo 3.1.2 connection problems
我正在尝试将一个包含三个节点 (a_py2neo_subgraph) 的小图提交到我的石墨烯 Neo4j 服务器。我正在使用 py2neo 3.1.2.
g = py2neo.Graph(server)
tx = g.begin()
tx.create(a_py2neo_subgraph)
tx.commit()
tx.finished()
其中 "server" 是石墨烯给出的确切值(即类似于 http://nick:password@hobby-hash.dbs.graphenedb.com:port/db/data/)。为了调试,我 运行 使用 py2neo watch,这是 watch 为我的 httpstream 提供的信息:
> GET server
< 200 OK [1287]
然后我得到以下回溯:
Traceback (most recent call last):
File "C:/Users/petr.svarny/PycharmProjects/untitled/test.py", line 116, in <module>
tx = g.begin()
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\database\__init__.py", line 370, in begin
return self.transaction_class(self, autocommit)
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\database\__init__.py", line 1249, in __init__
self.session = driver.session()
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\packages\neo4j\v1\session.py", line 126, in session
connection = connect(self.address, self.ssl_context, **self.config)
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\packages\neo4j\v1\bolt.py", line 419, in connect
s = create_connection(host_port)
File "C:\Python27\Lib\socket.py", line 571, in create_connection
raise err
socket.error: [Errno 10060]
我已经尝试将套接字超时设置为 9999,但没有帮助。我试图通过 telnet 连接到服务器,并且没有遇到任何问题。同样,当我在浏览器中输入服务器地址时,我可以访问它。我还设法 运行 我的本地 Neo4j 数据库代码。
感谢您的任何建议。
我是 GrapheneDB 的 Judit。你能检查一下你使用的是哪个版本的py2neo吗?从 Py2neo v2 迁移到 v3 时,您描述的问题看起来很常见。由于 py2neo v3 支持 Bolt 协议,您必须指定 bolt 端口或直接告诉驱动程序您没有使用它。
如果您不想使用 Bolt 连接,您的代码应如下所示:
graph = Graph("http://USER:PASS@hobby-hash.dbs.graphenedb.com:port/db/data/", bolt = False)
如果不是您的情况,了解您使用的是哪个版本的 Python/Py2neo/Neo4j 会很有用。
干杯!
我在 py2neo 3.1.2 上遇到了类似的问题,即使使用 "bolt=False" 开关我也无法让它工作。
我已经切换到 neorestclient 2.1.1,现在可以了。
我正在尝试将一个包含三个节点 (a_py2neo_subgraph) 的小图提交到我的石墨烯 Neo4j 服务器。我正在使用 py2neo 3.1.2.
g = py2neo.Graph(server)
tx = g.begin()
tx.create(a_py2neo_subgraph)
tx.commit()
tx.finished()
其中 "server" 是石墨烯给出的确切值(即类似于 http://nick:password@hobby-hash.dbs.graphenedb.com:port/db/data/)。为了调试,我 运行 使用 py2neo watch,这是 watch 为我的 httpstream 提供的信息:
> GET server
< 200 OK [1287]
然后我得到以下回溯:
Traceback (most recent call last):
File "C:/Users/petr.svarny/PycharmProjects/untitled/test.py", line 116, in <module>
tx = g.begin()
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\database\__init__.py", line 370, in begin
return self.transaction_class(self, autocommit)
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\database\__init__.py", line 1249, in __init__
self.session = driver.session()
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\packages\neo4j\v1\session.py", line 126, in session
connection = connect(self.address, self.ssl_context, **self.config)
File "C:\Users\petr.svarny\untitled\lib\site-packages\py2neo\packages\neo4j\v1\bolt.py", line 419, in connect
s = create_connection(host_port)
File "C:\Python27\Lib\socket.py", line 571, in create_connection
raise err
socket.error: [Errno 10060]
我已经尝试将套接字超时设置为 9999,但没有帮助。我试图通过 telnet 连接到服务器,并且没有遇到任何问题。同样,当我在浏览器中输入服务器地址时,我可以访问它。我还设法 运行 我的本地 Neo4j 数据库代码。
感谢您的任何建议。
我是 GrapheneDB 的 Judit。你能检查一下你使用的是哪个版本的py2neo吗?从 Py2neo v2 迁移到 v3 时,您描述的问题看起来很常见。由于 py2neo v3 支持 Bolt 协议,您必须指定 bolt 端口或直接告诉驱动程序您没有使用它。
如果您不想使用 Bolt 连接,您的代码应如下所示:
graph = Graph("http://USER:PASS@hobby-hash.dbs.graphenedb.com:port/db/data/", bolt = False)
如果不是您的情况,了解您使用的是哪个版本的 Python/Py2neo/Neo4j 会很有用。
干杯!
我在 py2neo 3.1.2 上遇到了类似的问题,即使使用 "bolt=False" 开关我也无法让它工作。
我已经切换到 neorestclient 2.1.1,现在可以了。