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中使用序列的方法
Aug 03 Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
Jan 30 Python
pandas object格式转float64格式的方法
Apr 10 Python
用python实现k近邻算法的示例代码
Sep 06 Python
idea创建springMVC框架和配置小文件的教程图解
Sep 18 Python
对python内置map和six.moves.map的区别详解
Dec 19 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
Aug 18 Python
Python+Redis实现布隆过滤器
Dec 08 Python
Python爬虫爬取电影票房数据及图表展示操作示例
Mar 27 Python
基于TensorFlow的CNN实现Mnist手写数字识别
Jun 17 Python
python使用opencv resize图像不进行插值的操作
Jul 05 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
PHP中利用substr_replace将指定两位置之间的字符替换为*号
2011/01/27 PHP
php 保留字列表
2012/10/04 PHP
通过php修改xml文档内容的方法
2015/01/23 PHP
php中array_unshift()修改数组key注意事项分析
2016/05/16 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
javascript表单验证使用示例(javascript验证邮箱)
2014/01/07 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
从零学习node.js之简易的网络爬虫(四)
2017/02/22 Javascript
JavaScript基于replace+正则实现ES6的字符串模版功能
2017/04/25 Javascript
详解AngularJS2 Http服务
2017/06/26 Javascript
将angular.js项目整合到.net mvc中的方法详解
2017/06/29 Javascript
JS库中的Particles.js在vue上的运用案例分析
2017/09/13 Javascript
vue中post请求以a=a&b=b 的格式写遇到的问题
2018/04/27 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
webpack+vue-cli项目中引入外部非模块格式js的方法
2018/09/28 Javascript
微信小程序自定义头部导航栏(组件化)
2019/11/15 Javascript
Vue 监听元素前后变化值实例
2020/07/29 Javascript
在Vue中使用CSS3实现内容无缝滚动的示例代码
2020/11/27 Vue.js
[48:00]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第二场 11.04
2020/11/04 DOTA
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
Python将视频或者动态图gif逐帧保存为图片的方法
2019/09/10 Python
Python 单例设计模式用法实例分析
2019/09/23 Python
详解Python绘图Turtle库
2019/10/12 Python
浅谈基于Canvas的手绘风格图形库Rough.js
2018/03/19 HTML / CSS
HTML5新标签兼容——> 的两种方法
2018/09/12 HTML / CSS
美国办公用品购物网站:Quill.com
2016/09/01 全球购物
伦敦哈德森鞋:Hudson Shoes
2018/02/06 全球购物
小学音乐教学反思
2014/02/05 职场文书
财务担保书范文
2014/04/02 职场文书
讲解员培训方案
2014/05/04 职场文书
扶贫办主任查摆“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
写给媳妇的检讨书
2015/05/06 职场文书
2016大学生社会实践心得体会范文
2016/01/14 职场文书
Js类的构建与继承案例详解
2021/09/15 Javascript
mysql5.5中文乱码问题解决的有用方法
2022/05/30 MySQL