Skip to main content

Python client for Elasticsearch

Project description

https://img.shields.io/pypi/v/elasticsearch https://img.shields.io/conda/vn/conda-forge/elasticsearch?color=blue https://pepy.tech/badge/elasticsearch https://clients-ci.elastic.co/job/elastic+elasticsearch-py+main/badge/icon https://readthedocs.org/projects/elasticsearch-py/badge/?version=latest&style=flat

The official Python client for Elasticsearch.

Features

  • 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

Installation

Install the elasticsearch package with pip:

$ python -m pip install elasticsearch

If your application uses async/await in Python you can install with the async extra:

$ python -m pip install elasticsearch[async]

Read more about how to use asyncio with this project.

Compatibility

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

Documentation for the client is available on elastic.co and Read the Docs.

Quick Start

# Import the client from the 'elasticsearch' module
>>> from elasticsearch import Elasticsearch

# Instantiate a client instance
>>> client = Elasticsearch("http://localhost:9200")

# Call an API, in this example `info()`
>>> resp = client.info()

# View the result
>>> resp
{
  "name" : "instance-name",
  "cluster_name" : "cluster-name",
  "cluster_uuid" : "cluster-uuid",
  "version" : {
    "number" : "7.14.0",
    ...
  },
  "tagline" : "You know, for Search"
}

You can read more about configuring the client in the documentation.

License

Copyright 2023 Elasticsearch B.V. Licensed under the Apache License, Version 2.0.

Project details


Release history Release notifications | RSS feed

This version

8.8.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elasticsearch-8.8.1.tar.gz (312.1 kB view details)

Uploaded Source

Built Distribution

elasticsearch-8.8.1-py3-none-any.whl (393.9 kB view details)

Uploaded Python 3

File details

Details for the file elasticsearch-8.8.1.tar.gz.

File metadata

  • Download URL: elasticsearch-8.8.1.tar.gz
  • Upload date:
  • Size: 312.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for elasticsearch-8.8.1.tar.gz
Algorithm Hash digest
SHA256 88f6c20c7903b5e0c79d30feb98a988a16524d947627bfd5628a5385ecd4c7f3
MD5 f2e398ceea51747f0efa4f57f6fd5a40
BLAKE2b-256 b42a893907a270aa5b55caa424ec5e27b5af360336d82743e1713255e069dc2e

See more details on using hashes here.

Provenance

File details

Details for the file elasticsearch-8.8.1-py3-none-any.whl.

File metadata

File hashes

Hashes for elasticsearch-8.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2f71990228770ff61fc59ad82f22458f44a6b44743e16ec7bbd6c7e821a30cc7
MD5 47438b63c87f31b5e055435e97af7c03
BLAKE2b-256 56307267f8b277c9aafd4decc2ded9f23efbb54501bf1b1e394acdea664c5478

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page