Skip to main content

A lightweight Python client for ElasticSearch

Project description

ESClient is a Python library that uses the ElasticSearch REST API. It is meant to be lightweight and be close to the actual REST API in terms of usage.

Web:

http://pypi.python.org/pypi/ESClient/

Download:

http://pypi.python.org/pypi/ESClient/

Source:

https://github.com/eriky/ESClient/

Installation

To install:

python setup.py install

You can also install ESClient with easy_install or pip. The following commands will install the latest released version of ESClient:

$ easy_install esclient

Or with pip:

$ pip install esclient

Usage

Please take a look at the test_esclient.py file for usage examples. This code at least covers all the API methods that are implemented. As soon as the API reaches stability I will put more time into writing decent documentation. I advice you to keep the ElasticSearch documentation at hand when you start using this library. The documentation strings in the code should be very useful.

Unit tests

test_esclient.py can be used for unit testing. You can directly run this file if you have an ElasticSearch instance running on localhost.

Bug Tracker and Issues

If you find a bug or any other issue you may create an issue on GitHub!

https://github.com/eriky/ESClient/issues

Roadmap

My target is to reach a stable 1.0 release in the coming months. Currently on the roadmap to reach a 1.0 release are:

  • Implementing most or even all the API methods

License

Licensed under the New BSD License. See also the LICENSE file

Credits

This client library was written by Erik-Jan van Baaren (erikjan@gmail.com) Others have contributed bugfixes or extensions too (thanks!) The style of this library is inspired by pyelasticsearch.

Dependencies

  • ESClient uses the excellent requests library.

  • The unit tests only work on Python 2.7 (one test will fail on 2.6)

  • The code is tested mostly on Python 2.6 and 2.7

Changelog

0.5.0

  • Added bulk API + unit tests (thanks to isnowfy)

0.4.0

  • Added API method: index_exists

0.3.0

  • Better error handling (by using _parse_json_response() method everywhere)

  • Added API methods: get_mapping, put_mapping

0.2.1

  • Added API methods: status, flush

  • some code improvements / beautifying

0.2.0

  • Removed option to choose between JSON or hierachy of Python objects. It would have created too much hassle.

  • Added API methods: mget, open+close index, create_alias, delete_alias

  • small fixes here and there

0.1.1

  • Added docstring to the get API

  • made sure that makedist.sh removes old MANIFEST file before making new package

  • fixed version string in esclient.py

0.1.0

From now on I will conform to the Semantic Versioning Guidelines outlined on this site: http://semver.org/ In that spirit, I bumped the minor version to 0.1.0 and will keep doing so until public API stability is reached.

0.0.1

First official release that was published to PyPI. Alpha quality, but with working unit tests for each API method.

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

ESClient-0.5.1.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

ESClient-0.5.1.macosx-10.7-intel.exe (71.7 kB view details)

Uploaded Source

File details

Details for the file ESClient-0.5.1.tar.gz.

File metadata

  • Download URL: ESClient-0.5.1.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ESClient-0.5.1.tar.gz
Algorithm Hash digest
SHA256 e9464bf2bd8c269875a38904795dab8ff3a3e11d1490ab763d88eb4e3f680f90
MD5 794a2697a4cb5d80dde84057c9cf3a7a
BLAKE2b-256 ca121aa3520c18fc69ebcaccd0aa2a4c533f167af2c74880e7a3151a00c742da

See more details on using hashes here.

File details

Details for the file ESClient-0.5.1.macosx-10.7-intel.exe.

File metadata

File hashes

Hashes for ESClient-0.5.1.macosx-10.7-intel.exe
Algorithm Hash digest
SHA256 693d2aeed4caedff8db2550ef832992b96b10f05cdcaa823de9f6b29da86549a
MD5 4ccfdfecc2717b83e332fb04af151e74
BLAKE2b-256 893b3243f1633da82022cea3ab8f93a8643362766d1b9df648142b07f8dacd86

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