当前位置: 首页 > 知识库问答 >
问题:

python elasticsearch API的脚本解析异常

荀俊迈
2023-03-14

我编写了以下代码来为新索引设置模板:

from elasticsearch import Elasticsearch

doc = {
   "template": "te*",
  "settings": {
     "number_of_shards": 1
  },
  "mappings": {
     "type1": {
      "_source": {
         "enabled": "false"
       },
      "properties": {
        "host_name": {
          "type": "string",
          "index": "not_analyzed"
        },
        "created_at": {
          "type": "date",
          "format": "EEE MMM dd HH:mm:ss Z YYYY"
        }
      }
    }
  }
 }

 es = Elasticsearch([{'host': "127.0.0.1", "port": 9200}])
 es.put_template("f_1", body=doc)

以下错误看起来像是我无法解决的一些语法错误:

启动(file, globals, locals)#执行脚本
File"/User/D/workspace/es_index_template/create_schema.py",第31行,在es.put_template("freshmilk_1", body=doc)File"/User/D/. viralenvs/es_index_template/lib/python2.7/site-pack/elasticsearch/Client/utils.py",第69行,在_wrapped返回func(*args, params=params,**kwargs)File"/User/D/. viralenvs/es_index_template/lib/python2.7/site-pack/elasticsearch/Client/init.py",第1152行,在put_template'模板', id)中,params=params, body=body)File"/User/D/. viralenvs/es_index_template/lib/python2.7/site-pack/elasticsearch/transport.py",第329行,在perform_request状态中,标头,数据=connection.perform_request(方法,url,参数,正文,忽略=忽略,超时=超/python2.7/site-packages/elasticsearch/connection/http_urllib3.py",第109行,perform_request本身。_raise_error(response.status,raw_data)文件"/用户/D/.虚拟化/es_index_template/lib/python2.7/site-包/elasticsearch/连接/base.py",

第108行,_raise_error提高HTTP_EXCEPTIONS. get(status_code, TransportError)(status_code,error_message,additional_info)elasticsearch.exceptions.TransportError: TransportError(500, u'script_parse_exception', u'意外字段[mappings]')

有人知道为什么映射失败了吗?

共有1个答案

严成礼
2023-03-14

我将put_template方法作为查询模板,但它意味着是一个索引模板:库的使用应该如下所示:

es = Elasticsearch([{'host': "127.0.0.1", "port": 9200}])
IndicesClient(es).put_template(name="f_1", body=request_body)
 类似资料:
  • 问题内容: 我想将参数传递给它。 我已经习惯了这样做,,....但我要开始对其进行命名 问题答案: 有很多方法可以解析sh中的参数。Getopt很好。这是一个简单的脚本,可以手动解析内容: 运行示例如下: 请注意,由于脚本eval是由用户构造的字符串,因此它甚至不具有强大的鲁棒性,也没有向安全漏洞开放。它仅是作为一种可能的做事方式的示例。一种更简单的方法是要求用户在环境中传递数据。在bourne

  • 问题内容: 关于这种事情有很多问题,但让我们想象一下,我们的目标是安装了getopt和getopts的通用Linux系统(不是我们将使用其中任何一种,但它们似乎很流行) 如何同时解析长参数(–example | –example简单选项)和短参数(-e | -esimple-example | -e简单示例) 问题答案: 您想使用多头和空头期权。工作代码示例: 注意,是先前定义的功能(未显示)。

  • 本文向大家介绍解析Tomcat的启动脚本--catalina.bat,包括了解析Tomcat的启动脚本--catalina.bat的使用技巧和注意事项,需要的朋友参考一下 概述 Tomcat 的三个最重要的启动脚本: startup.bat catalina.bat setclasspath.bat 上一篇咱们分析了 startup.bat 脚本 这一篇咱们来分析 catalina.bat 脚本.

  • 本文向大家介绍解析Tomcat的启动脚本--startup.bat,包括了解析Tomcat的启动脚本--startup.bat的使用技巧和注意事项,需要的朋友参考一下 概述 我们通常使用 Tomcat 中的 startup.bat 来启动 Tomcat. 但是这其中干了一些什么事呢? 大家都知道一个 Java 程序需要启动的话, 肯定需要 main 方法, 那么这个 main 方法在哪呢? Tom

  • Step4. 数据解析脚本 概述 编辑脚本内容 保存草稿 脚本模拟运行 提交脚本 Step4. 数据解析脚本 更新时间:2018-03-23 18:15:58 概述 本章节主要针对采用透传/自定义格式上报数据的设备,您如果使用了Alink协议可以跳过,可以直接参考 Alink 协议文档完成设备端的开发和接入,无需编辑数据解析脚本。 Link Develop为开发者提供了用于数据解析的在线脚本编辑器

  • 问题内容: 我已经使用了很长一段时间了(使用python绑定以及大多数情况下),每次我需要执行javascript代码时,我都使用过method。例如,用于滚动页面(python): 或者,要在另一个元素(量角器)内无限滚动: 或者,为了获取所有元素属性的字典)(python): 但是,WebDriver API也具有我个人未使用过的功能。 它涵盖了哪些用例?什么时候应该代替常规? 这个问题是se