我想尝试一下pyelasticsearch软件包。因此,我安装了pyelasticsearch
:
pip install pyelasticsearch
它已安装最新版本pyelasticsearch-1.4.1
。同样在引擎盖下安装elasticsearch-1.9.0
,如requirements.txt
一样,版本应为:
elasticsearch>=1.3.0,<2.0.0
但是,这是一个非常旧的版本,因此,当试图运行一个简单的脚本时:
from pyelasticsearch import ElasticSearch
es = ElasticSearch()
es.search(query, index='bank')
然后,我得到了:
elasticsearch.exceptions.TransportError:TransportError(406,'不支持Content-Type标头[]')
似乎无法理解query
是json
的主体。但是,我也无法通过elasticsearch
API调用传递任何标头。
当我尝试将elasticsearch
升级到最新版本6.3.1
并运行脚本时,我不断得到:
ValueError:太多值无法解包
看起来pyelasticsearch
和elasticsearch
的版本在这里存在冲突。
现在,我的问题是,如何成功运行此基本代码?
如果相关,我正在运行python3.7.1