要使用python連接neo4j,需先安裝neo4j庫,配置數據庫并編寫連接代碼。1. 安裝依賴:執行pip install neo4j;2. 配置數據庫:啟動neo4j服務,確認地址、用戶名和密碼,遠程連接時檢查防火墻及配置文件;3. 編寫代碼:引入graphdatabase模塊,使用driver創建連接,并通過Session執行查詢;4. 排查問題:檢查認證、網絡、協議及驅動兼容性,可借助瀏覽器或telnet測試連接。按照這些步驟操作,即可順利建立python與neo4j的連接。
想用 Python 操作 Neo4j,連接數據庫是第一步。這一步做不對,后面的操作就都白搭。好在官方提供了比較完善的驅動庫,只要配置得當,連接起來并不復雜。
下面我來分享幾個關鍵點,幫你順利建立 Python 和 Neo4j 的連接。
安裝必要的依賴
要讓 Python 能和 Neo4j 通信,首先得安裝官方的驅動包。最常用的是 neo4j 這個庫:
立即學習“Python免費學習筆記(深入)”;
pip install neo4j
這個庫支持 Python 3.6 及以上版本,而且兼容 Neo4j 3.x 到 5.x 的多個版本。
如果你用的是 jupyter Notebook 或者其他交互式環境,同樣可以用 %pip install neo4j 來安裝。
配置Neo4j數據庫
在 Python 代碼能連上 Neo4j 前,你得確保數據庫本身已經準備好:
- 啟動 Neo4j 服務:你可以用 docker 啟動,也可以本地安裝。
- 確認訪問地址:默認是 bolt://localhost:7687
- 用戶名和密碼:默認用戶是 neo4j,第一次登錄后需要改密碼
如果你遠程連接,還需要檢查防火墻設置和 Neo4j 的配置文件(通常是 neo4j.conf),確保開啟了遠程訪問權限:
dbms.connectors.default_listen_address=0.0.0.0
否則可能會遇到連接不上、超時等問題。
編寫Python連接代碼
安裝完庫并確認數據庫沒問題后,就可以開始寫代碼了。基本流程如下:
- 引入 GraphDatabase 模塊
- 使用 driver 創建連接
- 通過 session 執行查詢語句
一個簡單的例子:
from neo4j import GraphDatabase driver = GraphDatabase.driver("bolt://localhost:7687", auth=("neo4j", "your_password")) def get_greeting(tx): result = tx.run("RETURN 'Hello, Neo4j!' AS greeting") return result.single()["greeting"] with driver.session() as session: greeting = session.read_transaction(get_greeting) print(greeting) driver.close()
這段代碼會連接本地 Neo4j 實例,并執行一條返回問候語的 Cypher 查詢。
注意:
- 如果你使用的是 Neo4j Aura(云端服務),連接方式略有不同,需要用 neo4j+s:// 協議
- 如果你在遠程服務器上部署 Neo4j,記得開放對應端口(如 7687)
常見問題排查
連接過程中容易遇到的問題包括:
- 認證失敗:密碼錯誤或未修改初始密碼
- 連接超時:網絡不通、防火墻限制或數據庫沒啟動
- 協議不匹配:比如用了 http 協議而不是 bolt
- 驅動版本不兼容:確保你的 neo4j 包版本與數據庫版本兼容
可以嘗試以下方法排查:
- 用瀏覽器訪問 http://localhost:7474 看是否能正常登錄
- 用 telnet localhost 7687 測試端口是否通
- 查看 Neo4j 日志文件是否有報錯信息
基本上就這些。Python 連接 Neo4j 不算難,但有些細節容易忽略,比如認證、端口和協議這些。只要一步步檢查清楚,一般都能搞定。