目录
1. 索引操作
1.1. 新建索引
from elasticsearch import Elasticsearch
es = Elasticsearch('http://localhost:9200', request_timeout=30, max_retries=5, retry_on_timeout=True)
index_name = "test"
create_result = es.indices.create(index=index_name)
print(create_result)
1.2. 删除索引
from elasticsearch import Elasticsearch
es = Elasticsearch('http://localhost:9200', request_timeout=30, max_retries=5, retry_on_timeout=True)
index_name = "test"
delete_result = es.indices.delete(index=index_name)
print(delete_result)
2. 插入数据
2.1. 单个数据插入
from elasticsearch import Elasticsearch
es = Elasticsearch('http://localhost:9200', request_timeout=30, max_retries=5, retry_on_timeout=True)
index_name = "test"
data = {"title": "各种信息"}
insert_result = es.index(index=index_name, body=data)
print(insert_result)
2.2. 批量数据插入
from elasticsearch import Elasticsearch
from elasticsearch import helpers
es = Elasticsearch('http://localhost:9200', request_timeout=30, max_retries=5, retry_on_timeout=True)
index_name = "test"
data = [
{"title": "各种信息1"},
{"title": "各种信息2"},
{"title": "各种信息3"},
{"title": "各种信息4"},
{"title": "各种信息5"},
{"title": "各种信息6"},
]
batch_size = 5
for index in range(0, len(data), batch_size):
batch = [{"_index": index_name, "_type": "_doc", "_source": doc} for doc in data[index:index + batch_size]]
insert_result = helpers.bulk(es, batch)
print(insert_result)