python批量导入数据进Elasticsearch的实例


Posted in Python onMay 30, 2018

ES在之前的博客已有介绍,提供很多接口,本文介绍如何使用python批量导入。ES官网上有较多说明文档,仔细研究并结合搜索引擎应该不难使用。

先给代码

#coding=utf-8
from datetime import datetime
from elasticsearch import Elasticsearch
from elasticsearch import helpers
es = Elasticsearch()
actions = []
f=open('index.txt')
i=1
for line in f:
 line = line.strip().split(' ')
 action={
 "_index":"image",
 "_type":"imagetable",
 "_id":i,
 "_source":{
  u"图片名":line[0].decode('utf8'),
  u"来源":line[1].decode('utf8'),
  u"权威性":line[2].decode('utf8'),
  u"大小":line[3].decode('utf8'),
  u"质量":line[4].decode('utf8'),
  u"类别":line[5].decode('utf8'),
  u"型号":line[6].decode('utf8'),
  u"国别":line[7].decode('utf8'),
  u"采集人":line[8].decode('utf8'),
  u"所属部门":line[9].decode('utf8'),
  u"关键词":line[10].decode('utf8'),
  u"访问权限":line[11].decode('utf8') 
  }
 }
 i+=1
 actions.append(action)
 if(len(actions)==500):
 helpers.bulk(es, actions)
 del actions[0:len(actions)]
if (len(actions) > 0):
 helpers.bulk(es, actions)

每句话的含义还是很明显的,这里需要说几点,首先是index.txt是以utf8编码的,所以需要decode('utf8')转换成unicode对象,并且“图片名”前需要加u,否则ES会报错

导入的速度还是很快的,2000多条记录每秒。

以上这篇python批量导入数据进Elasticsearch的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python抽象基类用法实例分析
Jun 04 Python
Python编码类型转换方法详解
Jul 01 Python
Python正则表达式实现截取成对括号的方法
Jan 06 Python
python操作redis方法总结
Jun 06 Python
Python中存取文件的4种不同操作
Jul 02 Python
用python写一个定时提醒程序的实现代码
Jul 22 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
Linux下通过python获取本机ip方法示例
Sep 06 Python
Pycharm和Idea支持的vim插件的方法
Feb 21 Python
Python __slots__的使用方法
Nov 15 Python
给numpy.array增加维度的超简单方法
Jun 02 Python
golang特有程序结构入门教程
Jun 02 Python
用python简单实现mysql数据同步到ElasticSearch的教程
May 30 #Python
django1.11.1 models 数据库同步方法
May 30 #Python
Python使用tkinter库实现文本显示用户输入功能示例
May 30 #Python
python自动化报告的输出用例详解
May 30 #Python
Django项目中model的数据处理以及页面交互方法
May 30 #Python
Python实现的生产者、消费者问题完整实例
May 30 #Python
Django 忘记管理员或忘记管理员密码 重设登录密码的方法
May 30 #Python
You might like
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
2011/06/30 PHP
php目录拷贝实现方法
2015/07/10 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
php设计模式之享元模式分析【星际争霸游戏案例】
2020/03/23 PHP
javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码
2009/11/28 Javascript
Js基础学习资料
2010/11/23 Javascript
js 上传图片预览问题
2010/12/06 Javascript
JQuery入门—编写一个简单的JQuery应用案例
2013/01/03 Javascript
jQuery选择器全集详解
2014/11/24 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
2015/03/13 Javascript
AngularJS 基础ng-class-even指令用法
2016/08/01 Javascript
浅谈JS运算符&&和|| 及其优先级
2016/08/10 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
详解Vue 实例中的生命周期钩子
2017/03/21 Javascript
一个简易的js图片轮播效果
2017/07/22 Javascript
webpack 打包压缩js和css的方法示例
2018/03/20 Javascript
微信小程序之下拉列表实现方法解析(附完整源码)
2019/08/23 Javascript
jquery实现掷骰子小游戏
2019/10/24 jQuery
微信公众号中的JSSDK接入及invalid signature等常见错误问题分析(全面解析)
2020/04/11 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python 列表list使用介绍
2014/11/30 Python
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
NumPy 数组使用大全
2019/04/25 Python
化石印度尼西亚在线商店:Fossil Indonesia
2019/03/11 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
防邪知识进家庭活动方案
2014/08/26 职场文书
大学生交通专业求职信
2014/09/01 职场文书
争先创优演讲稿
2014/09/15 职场文书
违章停车检讨书
2014/10/21 职场文书
订货会邀请函
2015/01/31 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
简单了解 MySQL 中相关的锁
2021/05/25 MySQL