一、安装py2neo
pip3 install py2neo
# 或者
pip3 install git+https://github.com/nigelsmall/py2neo.git#egg=py2neo
官方文档:https://py2neo.org/v3/index.html
二、链接Neo4j数据库
from py2neo import Graph,Node,Relationship
'''
host:服务器ip地址,默认为'localhost'
http_port:http协议——服务器监听端口,默认为7474
https_port:https协议——服务器监听端口,默认为7473
bolt_port:bolt协议——服务器监听端口,默认为7687
user:登录用户名,默认为'neo4j'
password:登录密码,无默认值,故若数据库其他参数都为默认值,则可直接通过密码登录
'''
graph1 = Graph(host='localhost',http_port=7978,user='neo4j',password='neo4j')
graph2 = Graph('http://localhost:7474/browser/',user='neo4j',password='neo4j')
graph3 = Graph('https://localhost:7473/browser/', user='neo4j', password='neo4j')
graph4 = Graph(password='neo4j')
graph = graph1.begin() # 打开图数据库,未打开时不能进行操作
三、创建节点
node = Node('label',name='label_name') # label为节点标签,name为节点名称,需要注意不要用label='label'否则label会成为节点的的属性
node['property'] = 'property_info' # 向node添加属性'property'
node.setdefault('age',18) # 通过setdefault()方法赋值默认属性
graph.merge(node) # 将节点加入图数据库与create不同之处在于若节点存在则不创建
graph.commit() # 提交图数据库的变更
四、创建关系
a=Node("People",name='a')
b=Node("People",name='b')
relationship = Relationship(a,'Realize',b) # 创建a与b之间的Realize关系
relationship['date']='20181101' # 在关系上添加data属性
graph.merge(a)
graph.merge(b)
graph.merge(relationship) # 将关系加入图数据库
graph.commit()
五、删除
graph1.delete_all() # 慎用!会删除所有节点及关系,清空整个库(经测试,不能删除属性字段)