2016-12-20 1 views
0

J'essaye de commettre un petit graphique de trois noeuds (a_py2neo_subgraph) à mon serveur grapho Neo4j. J'utilise py2neo 3.1.2.py2neo 3.1.2 problèmes de connexion

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

Où « serveur » est la valeur exacte donnée par graphène (à savoir quelque chose comme http://nick:[email protected]:port/db/data/). Pour debug, je courais avec py2neo montre et ce fut l'info donnée par la montre pour mon httpstream:

> GET server 
< 200 OK [1287] 

Puis-je obtenir le retraçage suivant:

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] 

J'ai déjà essayé de mettre la prise délai d'attente à 9999, n'a pas aidé. J'ai essayé de me connecter via telnet au serveur et j'ai réussi à le faire sans aucun problème. De même, je suis en mesure d'accéder à l'adresse du serveur lorsque je l'entre dans mon navigateur. J'ai également réussi à exécuter mon code pour une base de données Neo4j locale.

Nous vous remercions de vos suggestions.

Répondre

2

Je suis Judit de GrapheneDB. Pouvez-vous vérifier quelle version de py2neo utilisez-vous? Le problème que vous avez décrit ressemble à un problème courant lors du passage de Py2neo v2 à v3. Puisque py2neo v3 prend en charge le protocole Bolt, vous devez spécifier le port de verrou ou simplement indiquer au pilote que vous ne l'utilisez pas.

Si vous ne voulez pas utiliser la connexion Bolt, votre code devrait ressembler à ceci:

graph = Graph("http://USER:[email protected]:port/db/data/", bolt = False)

Si c'est de ne pas connaître votre cas, il serait utile que la version de Python/Py2neo/Neo4j utilisez-vous.

À la votre!

+0

Merci beaucoup, je n'ai pas remarqué cela. – SvarnyP

0

J'ai eu un problème similaire avec py2neo 3.1.2 et je ne pouvais pas le faire fonctionner même avec le commutateur "boulon = faux". Je suis passé à neorestclient 2.1.1 et maintenant cela fonctionne.