Skip to main content

Lightweight python wrapper for elasticsearch.

Project description

A Python client for elasticsearch.

Usage

pyelasticsearch handles the low-level interactions with elasticsearch, allowing you to use native Python datatypes to index or perform queries.

Example:

conn = ElasticSearch('http://localhost:9200/')

# Index some documents.
conn.index({"name":"Joe Tester", "age": 25, "title": "QA Master"}, "contacts", "person", 1)
conn.index({"name":"Jessica Coder", "age": 32, "title": "Programmer"}, "contacts", "person", 2)
conn.index({"name":"Freddy Tester", "age": 29, "title": "Office Assistant"}, "contacts", "person", 3)

# Refresh the index to pick up the latest documents.
conn.refresh(["contacts"])

# Get just Jessica's document.
jessica = conn.get("contacts", "person", 2)

# Perform a simple search.
results = conn.search("name:joe OR name:freddy")

# Perform a search using the elasticsearch Query DSL (http://www.elasticsearch.org/guide/reference/query-dsl)
query = {
    "query_string": {
        "query": "name:tester"
    },
    "filtered": {
        "filter": {
            "range": {
                "age": {
                    "from": 27,
                    "to": 37,
                },
            },
        },
    },
}
results = conn.search(query)

# Clean up.
conn.delete_index("contacts")

For more examples, please check out the doctests & tests.py.

License

Licensed under the New BSD license.

Credits

Used pysolr as a jumping off point - thanks guys.

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

pyelasticsearch-0.1.tar.gz (7.5 kB view hashes)

Uploaded Source

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