北京哪家做网站,没网站怎么做cpa,上海门户网站制,手机如何建网站分享一段使用python#xff0c;通过使用发送post请求的方式#xff0c;来从es集群中获取数据。不用使用 elasticsearh#xff0c;仅需要导入request和json包即可。 开源sql插件官方 文档
GitHub - NLPchina/elasticsearch-sql: Use SQL to query Elasticsearch 示例代码
调… 分享一段使用python通过使用发送post请求的方式来从es集群中获取数据。不用使用 elasticsearh仅需要导入request和json包即可。 开源sql插件官方 文档
GitHub - NLPchina/elasticsearch-sql: Use SQL to query Elasticsearch 示例代码
调试过可运行得到的结果为kibana界面上展示的结果需要自己解析hit里边的数据。agg聚合分析结果在 aggregations里边。可以看打印的结果
如果包错没有requests包则导入即可。
pip install requests import requests
import jsondef execute_sql_and_get_json_response(sql_query):# 定义请求的URL和头部url http://localhost:9200/_nlpcn/sqlheaders {Content-Type: application/json}# 确保数据是以UTF-8编码的字节串data_encoded sql_query.encode(utf-8)# 发送POST请求response requests.post(url, headersheaders, datadata_encoded, params{pretty: true})# 处理响应if response.status_code 200:# 返回原始JSON响应文本return response.textelse:raise Exception(f请求失败状态码{response.status_code}\n错误信息{response.text})# 使用方法示例
sql_query select * from indexName WHERE MTJJ AND age 38
try:json_response execute_sql_and_get_json_response(sql_query)# 如果需要将响应内容转化为Python字典可以使用 json.loads 方法python_dict_response json.loads(json_response)# 对python_dict_response进行后续处理print(python_dict_response)
except Exception as e:print(e)
遇到问题
sql中的不等号解析有问题调用报错需要用 代表 !
结果需要自己解析输出的json结果和kibana上的结果一样