Hallo,
ich habe die community version von Neo4j und verwende Python.
Ich habe beides installiert und auch viele module, unter anderem p2neo bereits installiert. Ich möchte die Pythonverknüpfung zu Neo4j verwenden
sowie wie es bei dem Tutorial hier :http://py2neo.org/2.0/intro.html.
Ferner habe ich auch in der Config-Datei die Einstelung #dmbs.directories.import=import verändert.
Dennoch kann ich noch nichts machen. Wenn ich zB diesen Code schreibe kommt eine Fehlermeldung:
from py2neo import Graph
graph = Graph()
Fehlermeldung:
Traceback (most recent call last):
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\database\__init__.py", line 318, in __new__
inst = cls.__instances[key]
KeyError: (<class 'py2neo.database.Graph'>, <ServerAddress settings={}>, 'data')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\database\http.py", line 154, in get
response = self.__base.get(headers=headers, redirect_limit=redirect_limit, **kwargs)
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\packages\httpstream\http.py", line 966, in get
return self.__get_or_head("GET", if_modified_since, headers, redirect_limit, **kwargs)
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\packages\httpstream\http.py", line 943, in __get_or_head
return rq.submit(redirect_limit=redirect_limit, **kwargs)
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\packages\httpstream\http.py", line 452, in submit
return Response.wrap(http, uri, self, rs, **response_kwargs)
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\packages\httpstream\http.py", line 489, in wrap
raise inst
py2neo.packages.httpstream.http.ClientError: 401 Unauthorized
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "Desktop\Python_2_Neo\p2n_1.py", line 2, in <module>
graph = Graph()
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\database\__init__.py", line 327, in __new__
use_bolt = version_tuple(inst.__remote__.get().content["neo4j_version"]) >= (3,)
File "C:\Users\nounh\AppData\Local\Programs\Python\Python36-32\lib\site-packages\py2neo\database\http.py", line 157, in get
raise Unauthorized(self.uri.string)
py2neo.database.status.Unauthorized: http://localhost:7474/db/data/
Meine Frage:
Wie kann ich exakt die Schnittstelle zu Neo4j herstellen? Was mache ich falsch ?
Schnittstelle Python zu Neo4j
- noisefloor
- User
- Beiträge: 4159
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
die Fehlermeldung legt die Vermutung nah, dass deine Datenbank eine Authorisierung erwartet, du aber keine sendest.
Gruß, noisefloor
die Fehlermeldung legt die Vermutung nah, dass deine Datenbank eine Authorisierung erwartet, du aber keine sendest.
Gruß, noisefloor
Ich kenne mich null mit neo4j aus, aber die Fehlermeldung besagt doch recht eindeutig, das du nicht berechtigt bist die Datenbank anzusprechen. Daran musst du also schrauben, zB durch Angabe von user und passwort, oder runterschrauben der Nutzerrechte, etc.
- noisefloor
- User
- Beiträge: 4159
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
_wie_ hast du den Neo4j Konfiguriert? Es geht ja nicht in die Rechte _in_ der DB, sondern dass du dich überhaupt damit verbinden kannst, um überhaupt was zu machen.
In der Doku des Python-Moduls steht doch auch direkt zu Beginn, wie man Nutzername und Password mit überträgt, wenn man eine Instanz zur Kommunikation mit der DB anlegt.
Gruß, noisefloor
_wie_ hast du den Neo4j Konfiguriert? Es geht ja nicht in die Rechte _in_ der DB, sondern dass du dich überhaupt damit verbinden kannst, um überhaupt was zu machen.
In der Doku des Python-Moduls steht doch auch direkt zu Beginn, wie man Nutzername und Password mit überträgt, wenn man eine Instanz zur Kommunikation mit der DB anlegt.
Gruß, noisefloor