The official Python client for Elasticsearch.
- Translating basic Python data types to and from JSON
- Configurable automatic discovery of cluster nodes
- Persistent connections
- Load balancing (with pluggable selection strategy) across available nodes
- Failed connection penalization (time based - failed connections won't be retried until a timeout is reached)
- Support for TLS and HTTP authentication
- Thread safety across requests
- Pluggable architecture
- Helper functions for idiomatically using APIs together
Refer to the Installation section of the getting started documentation.
Refer to the Connecting section of the getting started documentation.
- Creating an index
- Indexing a document
- Getting documents
- Searching documents
- Updating documents
- Deleting documents
- Deleting an index
Language clients are forward compatible; meaning that clients support communicating with greater or equal minor versions of Elasticsearch. Elasticsearch language clients are only backwards compatible with default distributions and without guarantees made.
If you have a need to have multiple versions installed at the same time older
versions are also released as elasticsearch2
and elasticsearch5
.
Documentation for the client is available on elastic.co and Read the Docs.
Copyright 2023 Elasticsearch B.V. Licensed under the Apache License, Version 2.0.