配置数据库:
node = ["http://192.168.20.214:9200", "http://192.168.20.215:9200", "http://192.168.20.215:9200"]
es = Elasticsearch(node, timeout=500000)
更新操作:
def update_data():
doc_body = {
"script": {
"source": "ctx._source['info_type']=['时政', '农林牧副渔']"
},
"query": {
"term": {
"data_id": dataid
# "data_id": "23b33de84667db37a4f19f5011257f30"
}
}
}
result = es.update_by_query(index="doc_info_last_1_years", body=doc_body)
print(result)
update_date()
删除操作:
# 删除数据
def delete_data_id():
for data_id in ['农业农村部办公厅关于印发《国家级农作物种质资源库(圃)管理规范》的通知']:
query = {
"query": {
"match": {
# 'data_id': 'b61d30e206fb20a7cd8228e7bd44b1d5'
"title": data_id
}
}
}
# 条件删除
es.delete_by_query(index='doc_info_last_1_years', body=query)
查询操作:
# 查询数据
def get_search():
count_List=[]
leader_list = []
query = {
"query": {
"match": {
# "site_name": name
"data_id": 'f709b6e02e0a399d20323f6d85642197'
}
},
"track_total_hits": "true"
# "publish_timestamp", "leader_activity", "info_type", "data_id",
, "_source": ["site_name", "title", "url",]
, "size": "2"
}
allDoc = es.search(index='doc_info_last_1_months', body=query)
items = allDoc['hits']['hits']
# print(items)
data_list = [i['_source'] for i in items]
print(len(data_list), name)
if len(data_list)==0:
count_List.append(name)
for data in data_list:
print(data)
leader_list.append(deepcopy(data))
print(count_List)
print(leader_list)