【发布时间】:2015-05-30 05:34:07
【问题描述】:
我正在编写python脚本来从多个来源中提取数据并将其以某种结构放入图表中。
我对所有数据都使用灯泡模型。我有所有相关节点类型和关系的模型。我的边缘模型除了“标签”之外没有其他属性。
在开发过程中,我多次运行同一个脚本。我使用get_or_create 来防止重复节点,但边缘没有这种方法。我没有现有边缘的对象,因为它是在脚本的先前运行中创建的。
我看到几个问题与来自 espeed 的答案(如 this)谈论类似的事情,但我无法为我的具体问题找到令人满意的答案。
这个方法最简单的代码是什么?
目前我正在尝试通过加载一个 gremlin 脚本来做到这一点;正如斯蒂芬所建议的那样;具有以下功能:
def is_connected(parent, child, edge_label) {
return g.v(parent).out(edge_label).retain([g.v(child)]).hasNext()
}
还有下面的python代码。
g.scripts.update('gremlin_scripts/gremlin.groovy')
script = g.scripts.get('gremlin:is_connected')
params = dict(parent=parent_node.eid, child=menu_item_v.eid, edge_label='has_sub_menu_item')
response = g.gremlin.execute(script, params)
我不太明白如何将 bool 结果输入 python。我也试过 g.gremlin.query(script, param)
【问题讨论】:
标签: python-3.x tinkerpop bulbs