Elasticsearch 8.15.1中使用Python列表作为match查询值报错“Can't get text on a START_ARRAY at 1:30”的解决方案咨询
Elasticsearch 8.15.1中使用Python列表作为match查询值报错“Can't get text on a START_ARRAY at 1:30”的解决方案咨询
我刚开始接触Elasticsearch(同时也刚学Python),不过已经取得了一点小进展:
es = Elasticsearch(['http://localhost:9200'], basic_auth=('user', 'pw')) query_body = { "query": { "match": { "content": "English" } } } response = es.search(index="resumes", body=query_body)
这段代码运行完全没问题。
但现在我有一个关键词列表,需要用列表作为输入,而不是单个字符串。我看到有示例说只要把查询内容改成列表形式就行,于是修改了代码:
query_body = { "query": { "match": { "content": ["English", "German"] } } }
可运行后却抛出了异常:"Can't get text on a START_ARRAY at 1:30"。
我做了更多研究,发现之前有一个相关的Bug,但我觉得这个Bug现在应该已经修复了。我现在使用的是Elasticsearch 8.15.1版本,有没有人知道怎么解决这个问题?
谢谢!
Andre
备注:内容来源于stack exchange,提问作者Andre Bergmann
相关产品推荐
相关产品推荐

