2401_84519556 2024-07-15 07:52 采纳率: 0%
浏览 11
已结题

关于#python#的问题:今天发现es连不上为什么

各位们,今天发现es连不上为什么?


```python
from elasticsearch import Elasticsearch

es = Elasticsearch('http://localhost:9200')
es.indices.create(index='new', ignore=400)


报错
C:\Users\13802\AppData\Local\Programs\Python\Python312\python.exe "C:\Users\13802\Desktop\python_crawler\Python crawler\es.py" 
C:\Users\13802\Desktop\python_crawler\Python crawler\es.py:4: DeprecationWarning: Passing transport options in the API method is deprecated. Use 'Elasticsearch.options()' instead.
  es.indices.create(index='new', ignore=400)
Traceback (most recent call last):
  File "C:\Users\13802\Desktop\python_crawler\Python crawler\es.py", line 4, in <module>
    es.indices.create(index='new', ignore=400)
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elasticsearch\_sync\client\utils.py", line 446, in wrapped
    return api(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elasticsearch\_sync\client\indices.py", line 553, in create
    return self.perform_request(  # type: ignore[return-value]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elasticsearch\_sync\client\_base.py", line 423, in perform_request
    return self._client.perform_request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elasticsearch\_sync\client\_base.py", line 271, in perform_request
    response = self._perform_request(
               ^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elasticsearch\_sync\client\_base.py", line 316, in _perform_request
    meta, resp_body = self.transport.perform_request(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elastic_transport\_transport.py", line 342, in perform_request
    resp = node.perform_request(
           ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\13802\AppData\Local\Programs\Python\Python312\Lib\site-packages\elastic_transport\_node\_http_urllib3.py", line 202, in perform_request
    raise err from None
elastic_transport.ConnectionError: Connection error caused by: ConnectionError(Connection error caused by: ProtocolError(('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))))

进程已结束,退出代码为 1


```

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-07-15 07:52
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    从你提供的信息来看,你遇到了几个问题,包括Elasticsearch连接问题、客户端库的弃用警告以及Traceback中的异常。下面是一些建议,希望能帮助你解决这些问题:

    1. 解决Elasticsearch连接问题

      • 确保Elasticsearch服务正在运行。你可以使用命令行工具如curlwget来检查Elasticsearch是否响应:
        curl http://localhost:9200
        
      • 检查防火墙设置,确保没有阻止9200端口的访问。
      • 如果你使用的是虚拟机或容器,确保端口映射正确。
    2. 处理Elasticsearch客户端库的弃用警告

      • 根据弃用警告,你应该使用Elasticsearch.options()来代替直接在API方法中传递选项。但是,从你提供的代码来看,似乎并没有直接在API方法中传递任何transport选项。因此,这个警告可能是由于其他原因触发的。如果你使用的是较新版本的Elasticsearch客户端库,建议查看官方文档以了解如何正确使用Elasticsearch.options()
    3. 理解并解决Traceback中的异常

      • ConnectionErrorProtocolError通常表明客户端尝试连接到服务器时出现了问题。这可能是因为服务器没有响应、网络问题或者服务器配置问题。
      • 检查Elasticsearch服务的日志文件,通常位于/var/log/elasticsearch/(Linux系统)或Elasticsearch安装目录的logs文件夹下(Windows系统),以获取更多错误信息。
    4. 更新Elasticsearch客户端代码

      • 如果你需要更新代码以使用Elasticsearch.options(),可以参考以下示例:
        from elasticsearch import Elasticsearch
        
        es = Elasticsearch('http://localhost:9200')
        es = es.options(default_mimetype='application/json')
        es.indices.create(index='new', ignore=400)
        
      • 注意,这里default_mimetype='application/json'是一个示例选项,具体选项取决于你的需求。
    5. 调试连接问题

      • 如果问题依旧存在,尝试使用Elasticsearch的官方客户端工具如elasticsearch-clientcurl命令行工具进行连接测试。
    6. 查看日志文件

      • 检查Elasticsearch的日志文件,可能会有关于为什么连接被关闭的详细信息。
    7. 检查网络设置

      • 确保你的网络配置允许从你的Python脚本运行的机器到Elasticsearch服务的连接。

    通过上述步骤,你应该能够诊断并解决你遇到的Elasticsearch连接问题。如果问题依旧存在,可能需要更详细的错误信息或日志来进一步分析。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月15日
  • 创建了问题 7月15日

悬赏问题

  • ¥15 苹果系统的mac m1芯片的笔记本使用ce修改器使用不了
  • ¥15 单相逆变的电压电流双闭环中进行低通滤波PID算法改进
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 如何卸载arcgis 10.1 data reviewer for desktop
  • ¥15 共享文件夹会话中为什么会有WORKGROUP
  • ¥15 关于#python#的问题:使用ATL02数据解算光子脚点的坐标(操作系统-windows)
  • ¥115 关于#python#的问题:未加密前两个软件都可以打开,加密后只有A软件可打开,B软件可以打开但读取不了数据
  • ¥15 在matlab中Application Compiler后的软件无法打开
  • ¥15 想问一下STM32创建工程模板时遇到得问题
  • ¥15 Fiddler抓包443