python 与 neo4j 交互(py2neo 使用)

您所在的位置:网站首页 python数据操作包 python 与 neo4j 交互(py2neo 使用)

python 与 neo4j 交互(py2neo 使用)

2024-07-11 23:24| 来源: 网络整理| 查看: 265

参考自:neo4j的python.py2neo操作入门 官方文档:The Py2neo Handbook — py2neo 2021.1 安装:pip install py2neo -i https://pypi.tuna.tsinghua.edu.cn/simple

1 节点 / 关系 / 属性 / 路径

节点(Node)和关系(relationship)是构成图的基础,节点和关系都可以有多个属性(property),并且均可以作为实体

重点:

节点:在图数据库中,节点代表实体,可以拥有属性和标签。节点通常用来表示实际的数据实体,比如人、地点、事件等关系:关系描述了节点之间的连接或关联,必须包含两个节点,且具有方向:start node →end node路径:路径是由节点和关系组成的序列,描述了节点之间的连接路径。路径是一个完整的图形结构,由起始节点、关系和结束节点组成,表示了实体之间的关系和连接方式属性:键-值(key-value),键是字符串类型,值,可以是原数据,也可以由原数据同类型的数组对于一个节点来说,与之相连的关系是有输入和输出两个方向。(如node2有输入关系和输出关系:node1→node2→node3),这个特性对于遍历图很重要一个节点可以有一个关系是指向自己的 2 连接neo4j

前置安装: 配套资料:配套资料 安装Neo4j 下载配套资料中的neo4j-community-3.5.5-windows和jdk-11.0.2_windows-x64_bin neo4j解压即可,jdk就常规安装 完成之后需要将neo4j和jdk的bin目录都配置为环境变量(即path中,若不懂请自行百度)

验证安装: cmd窗口下 java -version 注: 若之前配置过jdk,需要将新配置的jdk上移到环境变量的最上方,或者直接删除以前配置过的jdk,然后重新打开cmd窗口进行验证安装

cmd下启动Neo4j neo4j.bat console

访问http://localhost:7474/,用户名和密码都输入neo4j,并连接(注意命令行窗口不能关闭),之后重新设置密码(建议设置为123456)

#cmd窗口下 neo4j.bat console 浏览器访问 http://localhost:7474/

3 创建图对象 from py2neo import Graph, Subgraph from py2neo import Node, Relationship, Path # 连接数据库 # graph = Graph('http://localhost:7474', username='neo4j', password='123456') # 旧版本 graph = Graph('bolt://localhost:7687', auth=('neo4j', '123456')) # 删除所有已有节点 graph.delete_all() 4 数据类型及操作 4.1 Node:节点

基本语法:Node(*labels,**properties)

# 定义node node_1 = Node('英雄',name = '张无忌') node_2 = Node('英雄',name = '杨逍',武力值='100') node_3 = Node('派别',name = '明教') # 存入图数据库 graph.create(node_1) graph.create(node_2) graph.create(node_3) print(node_1)

在这里插入图片描述

4.2 Relationship:关系

基本语法:Relationship((start_node, type, end_node, **properties))

# 增加关系 node_1_to_node_2 = Relationship(node_2,'教主',node_1) node_3_to_node_1 = Relationship(node_1,'统领',node_3) node_2_to_node_2 = Relationship(node_2,'师出',node_3) graph.create(node_1_to_node_2) graph.create(node_3_to_node_1) graph.create(node_2_to_node_2)

在这里插入图片描述

4.3 Path:路径

基本语法:Path(*entities) 注:entities是实体

# 建一个路径:比如按照该路径查询,或者遍历的结果保存为路径 node_4,node_5,node_6 = Node(name='阿大'),Node(name='阿三'),Node(name='阿二') path_1 = Path(node_4,'小弟',node_5,Relationship(node_6, "小弟", node_5),node_6) # (阿大)-[:小弟 {}]->(阿三)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3