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标准库之随机数 (math包、random包)介绍
Nov 25 Python
python模拟Django框架实例
May 17 Python
Python正则表达式教程之一:基础篇
Mar 02 Python
利用python将图片转换成excel文档格式
Dec 30 Python
Python的SimpleHTTPServer模块用处及使用方法简介
Jan 22 Python
python web.py开发httpserver解决跨域问题实例解析
Feb 12 Python
Python 数据处理库 pandas 入门教程基本操作
Apr 19 Python
python实现飞机大战
Sep 11 Python
Python3之手动创建迭代器的实例代码
May 22 Python
Python Web框架之Django框架Form组件用法详解
Aug 16 Python
python_mask_array的用法
Feb 18 Python
Python多线程实用方法以及共享变量资源竞争问题
Apr 12 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 身份证号验证函数
2009/05/07 PHP
可以保证单词完整性的PHP英文字符串截取代码分享
2014/07/15 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
JS 实现图片直接下载示例代码
2013/07/22 Javascript
js实现俄罗斯方块小游戏分享
2014/01/31 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
2014/10/31 Javascript
node.js中的querystring.parse方法使用说明
2014/12/10 Javascript
跟我学习javascript的函数调用和构造函数调用
2015/11/16 Javascript
Bootstrap3制作自己的导航栏
2016/05/12 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
JavaScript实现快速排序的方法分析
2018/01/10 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
微信运维交互机器人的示例代码
2018/11/12 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
js实现自定义右键菜单
2020/05/18 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
vue 二维码长按保存和复制内容操作
2020/09/22 Javascript
[01:36:57]【09DOTA2第一视角】小骷髅
2014/04/16 DOTA
python使用arp欺骗伪造网关的方法
2015/04/24 Python
Django与遗留的数据库整合的方法指南
2015/07/24 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
mac下pycharm设置python版本的图文教程
2018/06/13 Python
Python爬虫常用库的安装及其环境配置
2018/09/19 Python
python地震数据可视化详解
2019/06/18 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
2019/08/06 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
实习生个人的自我评价
2013/12/08 职场文书
新郎父亲婚宴答谢词
2014/01/11 职场文书
运动会800米加油稿
2014/02/22 职场文书
幼儿园教学随笔感言
2014/02/23 职场文书
运动会广播稿150字(9篇)
2014/09/20 职场文书
暑期实践个人总结
2015/03/06 职场文书
幼儿园中秋节活动总结
2015/03/23 职场文书
关于远足的感想
2015/08/10 职场文书