py2neo 3.1.2连接问题

时间:2016-12-20 15:08:10

标签: neo4j py2neo

我正在尝试将三个节点(a_py2neo_subgraph)的小图提交给我的石墨烯Neo4j服务器。我正在使用py2neo 3.1.2。

g = py2neo.Graph(server)
tx = g.begin()
tx.create(a_py2neo_subgraph)
tx.commit()
tx.finished()

在哪里"服务器"是石墨烯给出的确切值(即类似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数据库运行我的代码。

感谢您提出任何建议。

2 个答案:

答案 0 :(得分:2)

我是GrapheneDB的Judit。你能查看你使用的是哪个版本的py2neo吗?从Py2neo v2转到v3时,您所描述的问题看起来是个常见问题。由于py2neo v3支持Bolt协议,因此您必须指定螺栓端口或告诉驱动程序您没有使用它。

如果您不想使用Bolt连接,您的代码应如下所示:

graph = Graph("http://USER:PASS@hobby-hash.dbs.graphenedb.com:port/db/data/", bolt = False)

如果不是你的情况,那么了解你使用的是哪个版本的Python / Py2neo / Neo4j会很有用。

干杯!

答案 1 :(得分:0)

我遇到了与py2neo 3.1.2类似的问题,即使使用“bolt = False”开关也无法使其工作。

我已经切换到neorestclient 2.1.1,现在可以使用了。