【问题标题】:Launch elasticsearch server using python code使用 python 代码启动 elasticsearch 服务器
【发布时间】:2015-01-06 02:50:31
【问题描述】:

我想用 python 编写一个脚本,在 localhost 9200 创建一个 elasticsearch 服务器。我在网上找到的所有示例都与连接到在 localhost 9200 上运行的现有 elasticsearch 实例有关。我的动机是我不想要必须使用命令行来运行或关闭服务器。

基本替换掉这一行

 bin/elasticsearch

在 python 中使用一些东西。

更新:我尝试了以下

subprocess.popen('elasticsearch-1.4.0/bin/elasticsearch')

但是,我收到错误“AttributeError: 'module' object has no attribute 'popen'”

我的 application.py 文件将运行 elasticsearch 服务,然后创建另一个服务,我可以使用它来调用 elasticsearch 服务器。

谁能提供我将如何以编程方式创建弹性搜索实例的代码 sn-p?是否有任何现有的项目可以做到这一点?提前感谢您的帮助。

【问题讨论】:

  • 大写字母 P : subprocess.Popen(...)

标签: python elasticsearch pyelasticsearch


【解决方案1】:

这样的?

from os import popen
popen('bin/elasticsearch')

【讨论】:

  • popen 允许我运行弹性搜索,但是 popen 之后的代码行没有被执行。我认为该程序正在挂起。我应该生成一个单独的线程吗?
【解决方案2】:
from os import popen
import subprocess

subprocess.Popen('elasticsearch-1.4.0/bin/elasticsearch')

【讨论】:

    【解决方案3】:

    Elasticsearch 需要一些时间才能启动。这就是为什么您可能无法看到连接并立即运行以下命令的原因。几秒钟后再次尝试运行脚本。

    【讨论】:

      猜你喜欢
      • 2017-03-03
      • 2014-08-26
      • 2016-06-19
      • 2021-11-21
      • 2021-06-07
      • 2020-07-21
      • 1970-01-01
      • 1970-01-01
      • 2013-06-25
      相关资源
      最近更新 更多