Python中使用connect()函数连接Elasticsearch搜索引擎
发布时间:2023-12-16 16:26:13
在Python中连接Elasticsearch搜索引擎可以使用elasticsearch-py库来实现。
首先,需要确保已经安装了elasticsearch-py库。可以使用以下命令安装:
pip install elasticsearch
接下来,导入elasticsearch库并使用connect()函数连接Elasticsearch搜索引擎。示例如下:
from elasticsearch import Elasticsearch # 使用默认本地地址连接Elasticsearch es = Elasticsearch() # 或者指定连接的主机和端口 es = Elasticsearch(['localhost'], port=9200)
在连接成功后,可以调用Elasticsearch实例对象的各种方法来与搜索引擎进行交互。下面是一些常用的方法:
1. 索引文档
doc = {
'author': 'John Doe',
'text': 'Elasticsearch is awesome!'
}
# 索引一个文档
res = es.index(index='my-index', doc_type='my-doc', id=1, body=doc)
print(res['result']) # 输出:created
2. 获取文档
# 获取索引为my-index,类型为my-doc,id为1的文档
res = es.get(index='my-index', doc_type='my-doc', id=1)
print(res['_source']) # 输出:{'author': 'John Doe', 'text': 'Elasticsearch is awesome!'}
3. 删除文档
# 删除索引为my-index,类型为my-doc,id为1的文档 res = es.delete(index='my-index', doc_type='my-doc', id=1) print(res['result']) # 输出:deleted
4. 搜索文档
# 在索引为my-index,类型为my-doc的文档中搜索包含关键字'elasticsearch'的文档
res = es.search(index='my-index', doc_type='my-doc', body={'query': {'match': {'text': 'elasticsearch'}}})
for hit in res['hits']['hits']:
print(hit['_source']) # 输出匹配到的文档
这些只是elasticsearch-py库的一部分功能,它提供了更多的API来与Elasticsearch搜索引擎进行交互。可以查阅官方文档来获取更多信息:https://elasticsearch-py.readthedocs.io/
