py2neo获取neo4j的节点对象

py2neo处理neo4j数据库获取节点对象

对于neo4j,尤其是版本4以上的neo4j,在使用py2neo对数据库进行match匹配选择节点的时候,数据库中的节点对象不能使用以前的方式进行获取了,比如下面这样:

q = db.nodes.match("法人",法人=row[2]).first()

会出现以下报错信息:
在这里插入图片描述
将.first()去掉,查看一下对应的数据和数据类型

q = db.nodes.match("法人",法人=row[2])
print(q)
print(type(q))

显示的数据和相应的数据类型如下所示,可以看出并不是一个节点对象(node):
在这里插入图片描述

原因

neo4j在4.0版本之后 弃用了param,py2neo 解析代码时,仍然把属性解析为param,导致失效,可以考虑用以下的方式获取已有节点对象,这样可以将节点创建和关系创建分开进行。

q = db.nodes.match("法人").where("_.法人="+"'"+row[2]+"'").first()
print(type(q))

如下显示其类别为py2neo.data.Node,意味着可以在此基础上对获取的对象进行下一步的操作了。
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值