Skip to content

philkra/elasticsearch-py

This branch is 302 commits behind elastic/elasticsearch-py:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b090faa · Feb 28, 2022
Feb 28, 2022
Feb 3, 2022
Feb 28, 2022
Feb 28, 2022
Jun 4, 2021
Feb 16, 2022
Feb 1, 2022
Nov 19, 2021
Nov 10, 2020
Dec 28, 2020
Oct 20, 2021
Feb 1, 2022
Feb 1, 2022
Nov 30, 2021
May 6, 2013
Feb 1, 2022
Feb 1, 2022
Sep 13, 2021
Feb 3, 2022
Nov 19, 2021
Dec 27, 2021
Feb 9, 2022

Repository files navigation

Elasticsearch Python Client

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.

About

Official Python low-level client for Elasticsearch.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.4%
  • Other 0.6%