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+master/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

elasticsearch7-7.17.4.tar.gz (247.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

elasticsearch7-7.17.4-py2.py3-none-any.whl (386.2 kB view details)

Uploaded Python 2Python 3

File details

Details for the file elasticsearch7-7.17.4.tar.gz.

File metadata

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

File hashes

Hashes for elasticsearch7-7.17.4.tar.gz
Algorithm Hash digest
SHA256 8b9b7c87c100f4ffb5bd34c29fb313cc19b1672df553b93bab822f0df0568dee
MD5 f4722a0152e11a67a2b338176fb743fd
BLAKE2b-256 75c20652c3b8b6b241f03a9ccfad4b07821a0efd1c7c8272ebe4de100c3208a6

See more details on using hashes here.

File details

Details for the file elasticsearch7-7.17.4-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for elasticsearch7-7.17.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a54c02eacbf45ef15db04500bbf16c377d8736f950c81fd1b90b989681ae1a26
MD5 fa133c7063bdef312b4f668b68f15d56
BLAKE2b-256 4aaa567d4330c6a2f29a37377c67dc2e2e8e786f06ddb087d702fffd799020f6

See more details on using hashes here.

Supported by

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