Python导入数据到neo4j

img

用neo4j模块执行cql语句,一直报错,节点可以出来,但是关系出不来,这是什么情况。

  • 建议你看下这篇博客👉 :用python把数据导入neo4j中,建立一个简单的知识图谱
  • 除此之外, 这篇博客: neo4j基本使用及其Python语言操作中的  3、修改结点以及删除结点 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  •  修改结点

    from py2neo import Graph,Node,Relationship,NodeMatcher,Subgraph
    match_graph = Graph('http://localhost:7474/', username='neo4j', password=‘*******’)
    matcher = NodeMatcher(match_graph)
    tx = match_graph.begin()
    change_Person_node = matcher.match('Person').all()  # .all()注意版本问题,4.3.0可调用.first(),但无法调用.all() 
    print(change_Person_node)
    new_Person_nodes = []
    for node in change_Person_node:
        node['name']='P'+node['name']
        new_Person_nodes.append(node)
    Sub = Subgraph(nodes=new_Person_nodes)
    tx.push(Sub) # 应使用py2neo 2020.1.0版本,py2neo 4.3.0版本本条语句报错:AttributeError: 'str' object has no attribute 'graph'
    tx.commit()
    

    删除结点

    matcher = NodeMatcher(match_graph)
    num = len(matcher.match('Person'))
    for i in range(num):
        nodes = matcher.match('Person').first()  # 不能使用.all()语句,显示neo4j语法错误 
        match_graph.delete(nodes)
    # g.delete()删除关系时会连带删除与其连接的结点
    # g.separate()删除关系时只删除关系
    # g.separate()可进行删除关系批处理,但删除满足条件的结点,要执行上述删除代码