示例编辑

以下您可以找到使用 Python 客户端调用最频繁的 API 的示例。

索引文档编辑

要索引文档,您需要指定三条信息:indexid 和一个 document

from datetime import datetime
from elasticsearch import Elasticsearch
client = Elasticsearch('https://127.0.0.1:9200')

doc = {
    'author': 'author_name',
    'text': 'Interesting content...',
    'timestamp': datetime.now(),
}
resp = client.index(index="test-index", id=1, document=doc)
print(resp['result'])

获取文档编辑

要获取文档,您需要指定其 indexid

resp = client.get(index="test-index", id=1)
print(resp['_source'])

刷新索引编辑

您可以在索引上执行刷新操作

client.indices.refresh(index="test-index")

搜索文档编辑

search() 方法返回与查询匹配的结果

resp = client.search(index="test-index", query={"match_all": {}})
print("Got %d Hits:" % resp['hits']['total']['value'])
for hit in resp['hits']['hits']:
    print("%(timestamp)s %(author)s: %(text)s" % hit["_source"])

更新文档编辑

要更新文档,您需要指定三条信息:indexid 和一个 doc

from datetime import datetime
from elasticsearch import Elasticsearch

client = Elasticsearch('https://127.0.0.1:9200')

doc = {
    'author': 'author_name',
    'text': 'Interesting modified content...',
    'timestamp': datetime.now(),
}
resp = client.update(index="test-index", id=1, doc=doc)
print(resp['result'])

删除文档编辑

您可以通过在 delete() 方法中指定其 indexid 来删除文档

client.delete(index="test-index", id=1)