python操作elasticsearch

from elasticsearch import Elasticsearch

# 删除索引
def delete_indices(es, my_index):
    if es.indices.exists(my_index):  # 确认删除再改为True
        es.indices.delete(index=my_index)   # 删除

# 创建索引示例1
def create_indices(es, my_index):
    # 创建
    es.indices.create(index=my_index)

# 查询索引内容
def search_index(es, my_index):
    body = {
        "query":{
            "match":{
                "name":"jgc"
            }
        }
    }
    res = es.search(index=my_index, body=body)
    # res = es.search(index=my_index, body=body, filter_path=['hits.hits']
    return res

if __name__ == "__main__":
    # 链接数据库
    es = Elasticsearch(['http://127.0.0.1:9200'])

    # 测试是否能链接
    print(es.ping())

    # 创建索引
    create_indices(es, "newlab")

    # 删除索引
    delete_indices(es, "newlab")

    # 查询
    print(search_index(es, "lab"))
    for item in res['hits']['hits']:
        print(item['_source'])
from elasticsearch import Elasticsearch

# 删除索引
def delete_indices(es, my_index):
    if es.indices.exists(my_index):  # 确认删除再改为True
        es.indices.delete(index=my_index)   # 删除

# 创建索引
def create_indices(es, my_index):
    mappings = {
        "mappings":{
            "properties": {
                "name": {
                    "type": "text"
                },
                "age": {
                    "type": "integer"
                }
            }
        }
    }
    # 创建索引时添加限制
    es.indices.create(index=my_index, body=mappings)

# 插入一条数据
def insert_index(es, my_index):
    body = {
        "name":"smr",
        "age":10
    }
    # 也可以在body里添加"_id"指定id,默认id为随机值
    es.index(index=my_index, body=body)

# 查询索引内容
def search_index(es, my_index):
    body = {
        "query":{
            "match_all":{
            }
        }
    }
    res = es.search(index=my_index, body=body)
    # res = es.search(index=my_index, body=body, filter_path=['hits.hits']
    return res

if __name__ == "__main__":
    # 链接数据库
    es = Elasticsearch(['http://127.0.0.1:9200'])

    # 测试是否能链接
    # print(es.ping())

    # 创建索引
    # create_indices(es, "test")

    # 插入一条数据
    # insert_index(es, "test")

    # 查询
    print(search_index(es, "test"))
    # for item in res['hits']['hits']:
    #     print(item['_source'])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

H4ppyD0g

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值