rest - 如何在带有弹性云的python上使用elasticsearch库?
问题描述
Rest API 和弹性云的新手在这里尝试将我的 json 文件发布到 elasticsearch 中,以便我可以索引并在 kibana 中查看它。所以我在网上阅读了弹性搜索库,我基本上是按照它的例子来的。但是,当我尝试运行该东西时,却遇到了连接错误。现在,本教程指的是本地弹性而不是云,所以我猜云的身份验证不一样,我应该以某种方式添加用户和密码?任何人都可以帮助我吗?
请注意,当我尝试使用 get 时,我实际上得到了代码 200,所以通信应该没问题
es = Elasticsearch([{'host': 'https:/cloudhosturl', 'port': 9243}])
for i,line in enumerate(emails):
for match in re.finditer(from_pat, line):
ioc.append(match.group(1))
es.index(index='senders', doc_type='addresses', id=k, body=json.dumps(match.group(1)))
elasticsearch.exceptions.ConnectionError: ConnectionError(: 无法建立新连接: [Errno 11001] getaddrinfo failed) 原因:NewConnectionError(: 无法建立新连接: [Errno 11001] getaddrinfo failed)
解决方案
我正在使用来自https://elasticsearch-py.readthedocs.io/en/master/的片段,它适用于弹性云集群。这个需要pip install elasticsearch
例子:
es = Elasticsearch(
['https:/cloudhosturl'],
http_auth=('USERNAME', 'PASSWORD'),
scheme="https", port=443,)
推荐阅读
- python - Python3.8 与 PySide2 类到类用法
- vuejs2 - 如何在 vue-cli 应用程序中显示基本的 Autodesk Forge 查看器?
- javascript - 如何在javascript的主块中调用函数
- java - 如何在 Scenform (AR CORE) 中将屏幕触摸坐标添加到现实世界?
- javascript - 正则表达式匹配jsx中的className
- scala - scala中列表的滑动和分组函数的时间复杂度是多少
- zsh - 分配非数组变量时的文件名扩展
- php - 在 laravel 中自定义电子邮件验证链接问题
- java - android studio 中没有显示错误,但 setOnClickListener 仅在一个按钮上有效,而在另一个按钮上无效
- angular - 如何使用多个角度版本?