2016-11-10 64 views
1

我必须发布一些信息来使用python进行弹性搜索。我的信息看起来像如何使用python发布批量到弹性搜索?

{ "index": {"_type": "TestSuiteReport","_index": "testsuite"}}{"Driver Name": "","Run Mode": "","TestSuite_Starttime": "2016-10-0T14:20:09","TestSuite Link": "2016-10-20T14:20:09","Number Of Tests Passed": 491} 

我用的是使用命令

Curl -i -X PUT -k "http://serverip:5601/_bulk" --data-binary @filelocation. 

有人可以帮助我找到在Python实现这种替代方式发布数据,以我的搜索服务器卷曲?

回答

2

从您的文件中读取json数据。使用请求python库发布json到您的服务器

import requests 
data = open('yourfile').read() 
url = "http://serverip:5601/_bulk" 
requests.post(url, data=data) 
+1

请注意,5601是kibana端口,所以它必须是9200,如果你想直接存储到es。 – Wokoman

0

我发现python有用于这种情况和示例,在这里共享。 tryolabs.com/blog/2015/02/17/python-elasticsearch-first-step秒。这可能会将您的单个json文档发送到elasticsearch。