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 2021 Elasticsearch B.V. Licensed under the Apache License, Version 2.0.

Project details


Download files

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

Source Distribution

elasticsearch8-8.4.1.tar.gz (305.5 kB view details)

Uploaded Source

Built Distribution

elasticsearch8-8.4.1-py3-none-any.whl (385.2 kB view details)

Uploaded Python 3

File details

Details for the file elasticsearch8-8.4.1.tar.gz.

File metadata

  • Download URL: elasticsearch8-8.4.1.tar.gz
  • Upload date:
  • Size: 305.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.3

File hashes

Hashes for elasticsearch8-8.4.1.tar.gz
Algorithm Hash digest
SHA256 7340803850e6cf6f838741fe78500d543aa6b7566d601c9ffec6d5b7f7159f5f
MD5 4c3f65e932b81195c3429236e782b503
BLAKE2b-256 a5e6f69a5a5786747ee97acda16bad1dc72158b4d9b0f1617eb5bab22a7b9e91

See more details on using hashes here.

File details

Details for the file elasticsearch8-8.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for elasticsearch8-8.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 692163edd75a3ed5736724853e9f871ddff6d1e0c5ee4cc7b800fc87a3eaf425
MD5 c6ef32bff9cd286056d82b370423acf4
BLAKE2b-256 d6054775c923c9daf07958a7b79be1c7d5a6d3a49787006714f17b5e43f7df55

See more details on using hashes here.

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