1

我正在使用 Python 的弹性搜索扩展,尝试查询特定路径。

这是我的包装查询:

{
"size": 1000,
 "query": {
   "filtered": {
     "filter": {
       "bool": {
         "must": [
           {
             "term": {
               "Path": "c:\\myfolder\\myfile.txt"
             }
           }
         ]
       }
     }
   }
 }
}

kopf插件中运行良好。

这是我的 Python 代码:

from elasticsearch import Elasticsearch
es = Elasticsearch(hosts=['my_server'])
index = "my_index"
query = '{"size":1000,"query":{"filtered":{"filter":{"bool":{"must":[{"term":{"Path":"c:\\myfolder\\myfile.txt"}}]}}}}}'
response = es.search(index=index, body=query)

出于某种原因,我收到了这个错误(没有反斜杠就不会发生):

/usr/local/lib/python2.7/dist-packages/elasticsearch/client/utils.py”,第 69 行,在 _wrapped return func(*args, params=params, **kwargs) 文件“/usr/local/ lib/python2.7/dist-packages/elasticsearch/client/ init.py”,第 530 行,搜索 doc_type,'_search'),params=params,body=body) 文件“/usr/local/lib/python2.7/dist-packages/elasticsearch/transport.py”,第 329 行, 在 perform_request 状态, headers, data = connection.perform_request(method, url, params, body, ignore=ignore, timeout=timeout) File "/usr/local/lib/python2.7/dist-packages/elasticsearch/connection/ http_urllib3.py”,第 106 行,在 perform_request self._raise_error(response.status, raw_data) 文件“/usr/local/lib/python2.7/dist-packages/elasticsearch/connection/base.py”,第 105 行,在_raise_error raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code, error_message, additional_info) elasticsearch.exceptions.RequestError

仅当存在反斜杠时才会出现此问题。

注意:我正在使用 Ubuntu。

提前致谢。

4

1 回答 1

1

尝试将“路径”更改为c:\\\\myfolder\\\\myfile.txt.

于 2016-03-03T09:29:16.267 回答