ElasticSearch的Python Client测试

一、Python环境准备

1、下载Python安装包并安装

https://www.python.org/ftp/python/3.13.0/python-3.13.0-amd64.exe

2、安装 SDK

参考ES官方文档: https://www.elastic.co/guide/en/elasticsearch/client/index.html

python 复制代码
python -m pip install elasticsearch

一、Client 代码案例

1、 索引文档操作

python 复制代码
from elasticsearch import Elasticsearch

# 定义ES的地址和端口,用户名和密码
host = "http://es-cn-************.public.elasticsearch.aliyuncs.com:9200"
username = "elastic"
password = "******"

client = Elasticsearch(host,basic_auth=(username, password))
# 使用es对象来与ES集群进行交互

# 创建索引
client.indices.create(index="heqiang")
print("创建索引成功")

# 插入文档
client.index(
    index="heqiang",
    id="1",
    document={
        "name": "jiabei",
        "age": 28,
        "description": "用代码改变世界的程序员"
    }
)
print("插入文档成功")

client.index(
    index="heqiang",
    id="2",
    document={
        "name": "jsck",
        "age": 20,
        "description": "一名优秀的大学生"
    }
)
print("插入文档成功")

# 查询文档
getResultData = client.get(index="heqiang", id="1")
print("查询文档结果:" + str(getResultData.body))


# 搜索文档
searchResultData = client.search(index="heqiang", query={"match": {"name": "jiabei"}})
print("搜索文档结果:" + str(searchResultData.body))

# 更新文档
client.update(index="heqiang", id="1", doc={
    "name": "jiabei",
    "age": 29,
    "description": "用代码改变世界的程序员兼工程师"
})
print("更新文档成功")

# 删除文档
client.delete(index="heqiang", id="2")
print("删除文档成功")

# 删除索引
# client.indices.delete(index="heqiang")
# print("删除索引成功")
相关推荐
用户8356290780514 小时前
使用 C# 在 Excel 中创建数据透视表
后端·python
码路飞7 小时前
FastMCP 实战:一个 .py 文件,给 Claude Code 装上 3 个超实用工具
python·ai编程·mcp
dev派9 小时前
AI Agent 系统中的常用 Workflow 模式(2) Evaluator-Optimizer模式
python·langchain
前端付豪11 小时前
AI 数学辅导老师项目构想和初始化
前端·后端·python
用户03321266636711 小时前
将 PDF 文档转换为图片【Python 教程】
python
Elasticsearch12 小时前
为上下文工程构建高效的数据库检索工具
elasticsearch
悟空爬虫12 小时前
UV实战教程,我啥要从Anaconda切换到uv来管理包?
python
dev派13 小时前
AI Agent 系统中的常用 Workflow 模式(1)
python·langchain
明月_清风15 小时前
从“能用”到“专业”:构建生产级装饰器与三层逻辑拆解
后端·python
曲幽1 天前
数据库实战:FastAPI + SQLAlchemy 2.0 + Alembic 从零搭建,踩坑实录
python·fastapi·web·sqlalchemy·db·asyncio·alembic