elasticsearch
Python client for Elasticsearch
Install
elasticsearch on PyPI
pip
pip install elasticsearchuv
uv add elasticsearchpoetry
poetry add elasticsearchPackage facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — anyio, elastic-transport, python-dateutil, sniffio, typing-extensions |
| Maintenance | actively maintained — 9 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: elasticsearch-9.5.0-py3-none-any.whl
Keywords: REST, client, elastic, elasticsearch, index, kibana, mapping, search
About elasticsearch
from the package's own PyPI description — quoted content, verbatim
<p align="center"> <img src="https://github.com/elastic/elasticsearch-py/raw/main/docs/images/logo-elastic-glyph-color.svg" width="20%" alt="Elastic logo" /> </p>
Elasticsearch Python Client
<p align="center"> <a href="https://pypi.org/project/elasticsearch"><img alt="PyPI Version" src="https://img.shields.io/pypi/v/elasticsearch" /></a> <a href="https://pypi.org/project/elasticsearch"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/elasticsearch" /></a> <a href="https://anaconda.org/conda-forge/elasticsearch"><img alt="Conda Version" src="https://img.shields.io/conda/vn/conda-forge/elasticsearch" /></a> <a href="https://pepy.tech/project/elasticsearch?versions=*"><img alt="Downloads" src="https://static.pepy.tech/badge/elasticsearch" /></a> <br/> <a href="https://github.com/elastic/elasticsearch-py/actions/workflows/ci.yml?query=workflow%3ACI"><img alt="Build Status on GitHub" src="https://github.com/elastic/elasticsearch-py/workflows/CI/badge.svg" /></a> <a href="https://buildkite.com/elastic/elasticsearch-py-integration-tests"><img alt="Buildkite Status on Buildkite"...
Read as markdown · JSON record · Source repository · Homepage · Docs
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Official Python client for Elasticsearch that handles connection pooling, node discovery, load balancing, and TLS authentication to query and manage Elasticsearch clusters.
Low friction installation with five lightweight runtime dependencies. Actively maintained with a release 9 days ago and strong upstream engagement (4385 GitHub stars, last commit 2026-08-13).
Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions; attribution and license notice required.
Usage
pip install elasticsearch==9.5.0
from elasticsearch import Elasticsearch
client = Elasticsearch(["http://localhost:9200"])
result = client.search(index="my_index", query={"match_all": {}})
Requires Python 3.10 or later; Elasticsearch server must be running and accessible at the specified host/port.
Verdict: Production-ready official client with active maintenance, no known vulnerabilities, and permissive licensing. Low install friction and broad Python version support (3.10–3.14) make it a safe choice for Elasticsearch integration.
Needs verification
- Whether elastic-transport and anyio are well-maintained and have their own security track records.
- Performance characteristics under high concurrency or large result sets compared to alternatives.
Similar packages
permissive · top 1,000 on PyPI
aws-requests-authpermissive · top 1,000 on PyPI
requests-aws4authpermissive · top 1,000 on PyPI
py-key-value-aiopermissive · top 1,000 on PyPI
terminadopermissive · top 1,000 on PyPI
litellmpermissive · top 100 on PyPI
urllib3permissive · top 100 on PyPI
oracledbunclear · top 1,000 on PyPI
executingpermissive · top 1,000 on PyPI
pure-evalpermissive · top 1,000 on PyPI