elasticsearch,curl,Python,elasticsearch,Curl" /> elasticsearch,curl,Python,elasticsearch,Curl" />

使用python'连接到远程Elasticsearch服务器;s Elasticsearch软件包

使用python'连接到远程Elasticsearch服务器;s Elasticsearch软件包,python,elasticsearch,curl,Python,elasticsearch,Curl,我想为我的网站使用远程Elasticsearch服务器 我使用elastic.co/云服务创建了一个远程Elasticsearch服务器。 我可以使用以下命令连接/ping远程Elasticsearch服务器(清除敏感信息): curl-u用户名:密码https://55555555555bb0c30d1cba4e9e6.us-central1.gcp.cloud.es.io:9243 将此命令绑定到终端后,我收到以下响应: { "name" : "insta

我想为我的网站使用远程Elasticsearch服务器

我使用
elastic.co/
云服务创建了一个远程Elasticsearch服务器。 我可以使用以下命令连接/ping远程Elasticsearch服务器(清除敏感信息):
curl-u用户名:密码https://55555555555bb0c30d1cba4e9e6.us-central1.gcp.cloud.es.io:9243 

将此命令绑定到终端后,我收到以下响应:

{
  "name" : "instance-0000000001",
  "cluster_name" : "555555555555",
  "cluster_uuid" : "55555555555",
  "version" : {
    "number" : "7.10.2",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "555555555555555555555555",
    "build_date" : "2021-01-13T00:42:12.435326Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
我正在使用以下Elasticsearch python客户端将Elasticsearch与我的网站集成:

为了初始化本地连接,我导入Elasticsearch类,并通过粘贴Elasticsearch服务器的本地url来初始化该类的实例

>>> from elasticsearch import Elasticsearch
>>> es = Elasticsearch('http://localhost:9200')
>>> es
<Elasticsearch([{'host': 'localhost', 'port': 9200}])>
>>>从elasticsearch导入elasticsearch
>>>es=弹性搜索('http://localhost:9200')
>>>es
现在我想使用相同的Elasticsearch类连接到远程服务器。为此,我需要使用连接到远程Elasticsearch服务器的信息格式化Elasticsearch对象的初始化

>>> from elasticsearch import Elasticsearch
>>> es = Elasticsearch('http://localhost:9200')
>>> es
<Elasticsearch([{'host': 'localhost', 'port': 9200}])>
这就是我遇到麻烦的地方。Elasticsearch类的docstring非常不透明。简而言之,它要求我创建一个自定义连接对象,但我还没有弄清楚如何创建它

Elasticsearch对象的文档有[稍微好一点][1],但仍然没有给出涉及用户名和密码的示例

我有能力创建API密钥,但我不知道如何使用它。如果回答涉及API密钥或回答如何使用我的用户名和密码进行连接,将非常有用。

您需要使用文档中描述的方法进行连接

在你的情况下,你应该使用这样的东西

从elasticsearch导入elasticsearch
es=弹性搜索(
['555555 BB0C30D1CBA4E9E6.us-central1.gcp.cloud.es.io'],
http_auth=('username','password'),
scheme=“https”,
端口=9243,
)

谢谢!这起作用了。