簡體   English   中英

使用 py2neo 連接 Neo4j Aura 雲數據庫

[英]Connect to Neo4j Aura cloud database with py2neo

我正在嘗試使用 py2neo 連接到 Aura 雲數據庫的實例。 我在嘗試不同的參數時遇到各種錯誤,並且無法弄清楚如何連接。 我將我的憑據存儲在 json 文件中,並確認所有詳細信息均正確無誤。

我可以使用軟件包 neo4j(v4.1.2,11/17/2020 發布 - 請注意 Windows 10 上的以前版本會返回安全證書問題)進行連接。 但是 py2neo 不能使用相同的憑據。

代碼不起作用:

from py2neo import Graph
import json

with open('secrets/aura_creds.json') as f:
    creds = json.load(f)

URI = creds.get('URI')
USERNAME = creds.get('USERNAME')
PASSWORD = creds.get('PASSWORD')

# connect to database
graph = Graph(URI, auth=(USERNAME, PASSWORD))

這是適用於 neo4j 的代碼:

from neo4j import GraphDatabase
import json 

with open('secrets/aura_creds.json') as f:
    creds = json.load(f)

URI = creds.get('URI')
USERNAME = creds.get('USERNAME')
PASSWORD = creds.get('PASSWORD')

graph = GraphDatabase.driver(URI, auth=(USERNAME, PASSWORD))

使用 py2neo 收到的錯誤是:

Traceback (most recent call last):
  File "C:\Users\Erik\Documents\_c-dev\essc-knowledge-base\scripts\graph_databas
e.py", line 21, in <module>
    graph = Graph(URI, secure=False, verify=False, auth=(USERNAME, PASSWORD))
  File "C:\Users\Erik\Anaconda3\envs\essc-knowledge-base\lib\site-packages\py2ne
o\database\__init__.py", line 358, in __init__
    self.service = GraphService(profile, **settings)
  File "C:\Users\Erik\Anaconda3\envs\essc-knowledge-base\lib\site-packages\py2ne
o\database\__init__.py", line 181, in __init__
    profile = ConnectionProfile(profile, **settings)
  File "C:\Users\Erik\Anaconda3\envs\essc-knowledge-base\lib\site-packages\py2ne
o\client\config.py", line 166, in __init__
    self._apply_components(**settings)
  File "C:\Users\Erik\Anaconda3\envs\essc-knowledge-base\lib\site-packages\py2ne
o\client\config.py", line 231, in _apply_components
    self.__secure = self._coalesce(settings.get("secure"), self.secure, NEO4J_SE
CURE)
  File "C:\Users\Erik\Anaconda3\envs\essc-knowledge-base\lib\site-packages\py2ne
o\client\config.py", line 305, in secure
    return self.__secure
AttributeError: 'ConnectionProfile' object has no attribute '_ConnectionProfile_
_secure'

使用帶有 Python 3.9.0、neo4j 4.1.2 和 py2neo v.2020.1.0 的 Windows 8.1 Pro。

因為 Neo4j Aura 使用的是 neo4j 版本 4,所以你必須升級到最新版本的 Py2neo。 只需使用此命令:

pip install --upgrade py2neo

然后,現在應該修復錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM