【问题标题】:Connect to Neo4j Aura cloud database with py2neo使用 py2neo 连接 Neo4j Aura 云数据库
【发布时间】:2020-11-17 17:12:27
【问题描述】:

我正在尝试使用 py2neo 连接到 Aura 云数据库的实例。当我尝试不同的参数时,我得到了各种错误,并且无法弄清楚如何连接。我将我的凭据存储在一个 json 文件中,并确认所有详细信息都是正确的。

我可以使用包 neo4j(v4.1.2,2020 年 11 月 17 日发布 - 注意 Windows 10 上的早期版本将返回安全证书 issues)进行连接。但是 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。

【问题讨论】:

    标签: python neo4j py2neo


    【解决方案1】:

    因为 Neo4j Aura 使用的是 neo4j 版本 4,所以你必须升级到最新版本的 Py2neo。只需使用以下命令:

    pip install --upgrade py2neo

    那么,这个错误现在应该被修复了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-19
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多