如何解决在弹性搜索中索引包含多个文档的 JSON 文件
我是 elasticsearch 的新手,我想索引一个 JSON 文件并从 elasticsearch 执行搜索查询
如果我将参数作为 "field3.innerfield" 传递,我如何索引这个 json 并执行查询以获取值:"someval"
我尝试使用 helpers.bulk 为该文件编制索引并进行搜索,但它返回所有字段而不是选定字段。
以下是 JSON 示例
[
{
"id": "someid","metadata": {
"docType": "value","otherfield": " ",morefields
.
.
},"field1":"value1","field2":"value2,"field3": [
{
"innerfield": "someval","innerfield1":[
"kind of a paragraph"
]
}
],"field4": [
{
"innerfield": "someval","innerfield1": "kind of a paragraph"
}
],},{ again the format repeats with different id but same fields
},{
}
]
解决方法
您的问题不够清晰,但我的理解是您想从嵌套 json 的键中获取值。您可以通过以下方式执行此操作,如下所示。 对其进行多次解析并根据您的需要进行必要的更改。
import json
data = data.apply(lambda x: json.loads(json.loads(x).get("metadata","{}")).get("doctype") if x else None)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。