python中使用neo4j

参考上片问文档,除了在控制台输入查询外,还可在python中执行查询命令

1.find单个节点。查询tom信息

bash 复制代码
from py2neo import Graph

graph = Graph('bolt://xx.xx.xx.xx:7687',auth=("neo4j","neo4j1234"))
print ("数据库连接正常")

result = graph.run("match (tom {name:'Tom Hanks'}) return tom")

for record in result:
    person_node = record["tom"]
    print(person_node)

2.以节点中的某个属性去查询

修改了下脚本,将url等登录信息放进配置文件中。

bash 复制代码
import configparser
from py2neo import Graph

config = configparser.ConfigParser()
config.read('config.ini')

#获取数据库连接
neo4j_config = config['neo4j']
neo4j_url = neo4j_config['neo4jUrl']
neo4j_name = neo4j_config['neo4jName']
neo4j_passwd = neo4j_config['neo4jPasswd']


graph = Graph(neo4j_url,auth=(neo4j_name,neo4j_passwd))
print ("数据库连接正常")

result = graph.run("match (cloudAtlas {title:'Cloud Atlas'}) return cloudAtlas").data()

for record in result:
    person_node = record["cloudAtlas"]
    print(person_node)

3.查询指定个数的信息

python 复制代码
import configparser
from py2neo import Graph

config = configparser.ConfigParser()
config.read('config.ini')

#获取数据库连接
neo4j_config = config['neo4j']
neo4j_url = neo4j_config['neo4jUrl']
neo4j_name = neo4j_config['neo4jName']
neo4j_passwd = neo4j_config['neo4jPasswd']


graph = Graph(neo4j_url,auth=(neo4j_name,neo4j_passwd))
print ("数据库连接正常")

result = graph.run("match (cloudAtlas:Person) return cloudAtlas limit 10")

for record in result:
    person_node = record["cloudAtlas"]
    print(person_node)

4.条件查询

python 复制代码
import configparser
from py2neo import Graph

config = configparser.ConfigParser()
config.read('config.ini')

#获取数据库连接
neo4j_config = config['neo4j']
neo4j_url = neo4j_config['neo4jUrl']
neo4j_name = neo4j_config['neo4jName']
neo4j_passwd = neo4j_config['neo4jPasswd']


graph = Graph(neo4j_url,auth=(neo4j_name,neo4j_passwd))
print ("数据库连接正常")

result = graph.run("match (nineties:Movie) where nineties.released >= 1990 and nineties.released < 2000 return nineties.title limit 5")

for record in result:
    person_node = record["nineties.title"]
    print(person_node)

5.查询出tom出演的电影名称

python 复制代码
import configparser
from py2neo import Graph

config = configparser.ConfigParser()
config.read('config.ini')

#获取数据库连接
neo4j_config = config['neo4j']
neo4j_url = neo4j_config['neo4jUrl']
neo4j_name = neo4j_config['neo4jName']
neo4j_passwd = neo4j_config['neo4jPasswd']


graph = Graph(neo4j_url,auth=(neo4j_name,neo4j_passwd))
print ("数据库连接正常")
query="match (tom:Person{ name:'Tom Hanks'})-[:ACTED_IN]->(tomHanksMovies) return tom, tomHanksMovies"
result = graph.run(query)

for record in result:
    name = record["tom"]
    movies = record["tomHanksMovies"]
    print(name, movies)

后续的操作,只需要在query中填写需要的查询命令,就能操作各种查询。

相关推荐
rayufo2 分钟前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk5 分钟前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
缺点内向1 小时前
C#编程实战:如何为Word文档添加背景色或背景图片
开发语言·c#·自动化·word·.net
一起养小猫1 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
zhougl9961 小时前
Java 所有关键字及规范分类
java·开发语言
Python 老手1 小时前
Python while 循环 极简核心讲解
java·python·算法
java1234_小锋1 小时前
Java高频面试题:MyISAM索引与InnoDB索引的区别?
java·开发语言
2501_944525542 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
qq_417129252 小时前
C++中的桥接模式变体
开发语言·c++·算法
开源技术2 小时前
如何将本地LLM模型与Ollama和Python集成
开发语言·python