使用py2neo填充neo4j并使用cypher查询时出现编码问题

时间:2014-09-18 02:00:34

标签: neo4j ascii cypher py2neo uuencode

我使用py2neo在neo4j中添加节点和关系。

创建时:

asno, = graphDB.create({"name":"ASNO:"+fields[8], "ASNO":fields[8]});
asno.add_labels("Network", "ASNO", continent);

在python中打印:         ASNO:38023


然而,当我用cypher查询时:

查询1.匹配(n)其中n.name =“ASNO:38023”返回n;

  
    
      

没有回报;

    
  

查询2.匹配(n)其中n.name =“ASNO:\ u00003 \ u00008 \ u00000 \ u00002 \ u00003 \ u0000”返回n;

  
    
      

返回以下内容。

    
  

{ "table": [ { "n": { "name": "ASNO:\u00003\u00008\u00000\u00002\u00003\u0000", "ASNO": "\u00003\u00008\u00000\u00002\u00003\u0000" } } ], "graph": { "nodes": [ { "name": "ASNO:\u00003\u00008\u00000\u00002\u00003\u0000", "ASNO": "\u00003\u00008\u00000\u00002\u00003\u0000", "id": "906", "type": "Network" } ], "edges": [] }, "labels": [ "Network" ] }


我需要帮助才能在Query 1方法中运行查询。 感谢和感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

尝试使用str()函数将您的名称值强制为ASCII。

nameval = str("ASNO:" + fields[8])

asno, = graphDB.create({"name":nameval, "ASNO":fields[8]})

asno.add_labels("Network", "ASNO", continent)