python中的Elasticsearch操作汇总

yipeiwu_com6年前Python基础

这篇文章主要介绍了python中的Elasticsearch操作汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

导入包

from elasticsearch import Elasticsearch

本地连接

es = Elasticsearch(['127.0.0.1:9200'])

创建索引

es.indices.create(index="python_es01",ignore=400)

ingore=400 ingore是忽略的意思,400是未找到

删除索引

es.indices.delete(index="python_es01")

检查索引是否存在

es.indices.exists(index="python_es01")

插入数据

es.index(index="python_es01",doc_type="doc",id=1,body={"name":"kitty","age":50})

同时也可以不加id,即

es.index(index="python_es01",doc_type="doc",body={"name":"kitty","age":10})

查询操作

按id查询

result = es.get(index="python_es01",doc_type="doc",id=1)

会有一个返回值

全查

body= {
    "query":{
      "match_all":{}
    }
  }
result = es.search(index="python_es01",body=body)

使用id的用GET,其他search

删除操作

result = es.delete(index="goods",doc_type="type1",id=2)

按查询结果删除

result = es.delete_by_query(index="goods",body=body)

建立mapping

body = {
  "mappings": {
    "properties": {
      "name": {
        "type": "text"
      },
      "price": {
        "type": "long"
      }
    }
  }
}
result = es.indices.create(index="shang",body=body)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python3.5以上版本lxml导入etree报错的解决方案

Python3.5以上版本lxml导入etree报错的解决方案

在python中安装了lxml-4.2.1,在使用时发现导入etree时IDE中报错Unresolved reference 其实发现,不影响使用,可以正常运行,对于我这种要刨根问底的...

python ctypes库2_指定参数类型和返回类型详解

python函数的参数类型和返回类型默认为int。 如果需要传递一个float值给dll,那么需要指定参数的类型。 如果需要返回一个flaot值到python中,那么需要指定返回数据的类...

Numpy数组array和矩阵matrix转换方法

1、ndarray转换成matrix import numpy as np from numpy import random,mat r_arr=random.rand(4,4)...

Python3实现发送QQ邮件功能(文本)

本文为大家分享了Python3实现发送QQ邮件功能:文本,供大家参考,具体内容如下 注意:使用前需要到qq中设置开启POP3 和IMAP服务和设置第三方授权码 然后在下面打x那里填入相...

基于TensorFlow常量、序列以及随机值生成实例

TensorFlow 生成 常量、序列和随机值 生成常量 tf.constant()这种形式比较常见,除了这一种生成常量的方式之外,像Numpy一样,TensorFlow也提供了生成...