python操作Elasticsearch8创建索引时如何避免索引已经存在报错信息

2022-05-03 00:00:00 索引 创建 报错

Python操作Elasticsearch8以上的版本时,以前因为可以使用ignore=400参数,新版提示此参数在下一版本将会被拿掉,推荐使用Elaticsearch.options(),经过测试具体使用方法如下。
之前的代码如下:

es = Elasticsearch()
es.indices.create(index=self._index_name, ignore=400)

这段代码可以执行成功,但是会提示:
DeprecationWarning: Passing transport options in the API method is deprecated. Use 'Elasticsearch.options()' instead.
es.indices.create(index=self._index_name, ignore=400)

当出现这个提示后,可以使用下面的代码替换上面的写法:

es = Elasticsearch()
es.options(ignore_status=[400, 404]).indices.create(index='pidancode')

pidancode 为索引名称,可以自己替换
代码在python3.9+Elasticsearch8.1.0测试通过。

相关文章