一、环境要求
根据es服务器版本,下载es的python api包,我们这里的环境为:
python3.8,
下载的elastic search版本为7.6.0,安装方式:
pip install elasticsearch==7.6.0
二、es操作及python代码
1、获取es实例,连接到es
如果没有额外的安全验证,需要指定的内容包括:集群ip地址(list类型),端口号(每个节点的端口号可能不同,这里是字符串,代表所有节点的端口号是一样的),用户名,密码。
class ElasticSearchHandler():
def __init__(self, host: list, port: str, username: str, password: str):
self.port = port
self.host = host
self.username = username
self.password = password
self.es = self.create()
# 新建es实例,并返回
def create(self) -> Elasticsearch:
context = ssl._create_unverified_context()
addrs = []
for host in self.host:
addr = {
'host': host, 'port': self.port}
addrs.append(addr)
if self.username and self.password:
elasticsearch = Elasticsearch(addrs, http_auth=(self.username, self.password), scheme="https", ssl_context=context