我在elastic中尝试了typical _update方法,但不起作用。
data_to_send ={
"new_key1": new_value1,
"new_key2": new_value2,
"new_key3": new_value3
}
response = requests.post(
url=f"https://{elasticurl}:{port}/{target_index}/_update/{id}",
headers={'Content-Type': 'application/json'},
json=data_to_send,
verify=False,
auth = (user,password))
字符串
URL被双重检查,并且ID是用于标识要更新的文档的文档ID。这里的关键疑问是,当我们将data_to_send发送到url时,文档会发生什么,文档是否接受新的键值对?文档并没有解决将新的键值对插入到现有文档中的问题,它只讨论了更新现有键的值。
我也试过requests.put,elasticsearch.update,当我尝试在现有文档中插入新的键值对时,这两个方法似乎都不起作用。我需要一些方法来插入新的键-值对到现有的文档中使用的文档ID在弹性。
1条答案
按热度按时间xlpyo6sf1#
您可以参考this文档,正如上面提到的,文档应该在
doc
内部传递以进行部分更新。字符串
我不是pythonMaven,但
data_to_send
应该改变如下,它应该工作:型