前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python连接elasticsearc

python连接elasticsearc

作者头像
py3study
发布2020-01-07 16:52:15
5090
发布2020-01-07 16:52:15
举报
文章被收录于专栏:python3python3
代码语言:javascript
复制
# -*- encoding: utf-8 -*-
import sys
import json
from elasticsearch import Elasticsearch

reload(sys)
sys.setdefaultencoding("utf8")

######################################################
# 用于连接ES环境,查询检索小区信息,返回排名靠前10的小区信息。
# http_auth=('es_username', 'es_passwd')
# es_search(city,name):es_search(深圳,登科花园)
######################################################


es = Elasticsearch(
        ['xxx.xxx.xxx.xxx'],
        http_auth=('elastic', 'passwd'),
        port=9200
)


def es_search(city, name):
    query_json = {
        "bool": {
            "must": {
                "term": {
                    "city": city
                }
            },
            "must_not":{
                "term": {
                    "base_inf.kind":'商铺'
                }
            },
            "should": [
                {
                    "match": {
                        "message": name
                    }
                }
            ]
        }
    }

    source_arr = ["name",
                  "Long_lat.lon",
                  "Long_lat.lat",
                  "detail_inf",
                  "avg_price",
                  "base_inf.kind",
                  "base_inf.build_time"]



    res = es.search(index="st_soufang", body={"query": query_json, "_source": source_arr})  # 获取所有数据

    # 获取第一条数据,得分最高。
    top_10_recodes = res['hits']['hits']
    # print json.dumps(top_10_recodes)
    return [top_10_recodes]
    #
    # for item in best_recode:
    #     if item != '_source':
    #         print item,best_recode[item]


if __name__ == "__main__":
    # 测试单例
    city = '深圳'
    name = '东方星大厦'
    es_search(city, name)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档