python如何实现excel数据添加到mongodb


Posted in Python onJuly 30, 2015

利用pymongo包进行数据库的连接,使用xlrd包读取excel数据,由于二者数据结构的不同,要将excel格式数据转换为json格式数据。由于编码问题会出现“TypeError: 'str' object does not support item assignment”,要利用json.loads方法对数据进行解码

分享代码如下

#coding=utf-8
 
import xlrd
import sys
import json
import pymongo
from pymongo import MongoClient
 
#连接数据库
client=MongoClient('localhost',27017)
db=client.scrapy
account=db.weibo
 
data=xlrd.open_workbook('test.xlsx')
table=data.sheets()[0]
#读取excel第一行数据作为存入mongodb的字段名
rowstag=table.row_values(0)
nrows=table.nrows
#ncols=table.ncols
#print rows
returnData={}
for i in range(1,nrows):
  #将字段名和excel数据存储为字典形式,并转换为json格式
  returnData[i]=json.dumps(dict(zip(rowstag,table.row_values(i))))
  #通过编解码还原数据
  returnData[i]=json.loads(returnData[i])
  #print returnData[i]
  account.insert(returnData[i])

以上就是本文的全部内容,希望对大家的学习有所帮助。

Python 相关文章推荐
pyqt4教程之widget使用示例分享
Mar 07 Python
python中执行shell命令的几个方法小结
Sep 18 Python
Python正则表达式完全指南
May 25 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 Python
Python爬取当当、京东、亚马逊图书信息代码实例
Dec 09 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
Python使用sort和class实现的多级排序功能示例
Aug 15 Python
python实现的config文件读写功能示例
Sep 24 Python
Python3 读取Word文件方式
Feb 13 Python
python数据预处理 :数据共线性处理详解
Feb 24 Python
python实现canny边缘检测
Sep 14 Python
python3中for循环踩过的坑记录
Dec 14 Python
python学习之第三方包安装方法(两种方法)
Jul 30 #Python
Python实现的Excel文件读写类
Jul 30 #Python
Djang中静态文件配置方法
Jul 30 #Python
Python实现根据IP地址和子网掩码算出网段的方法
Jul 30 #Python
Python实现配置文件备份的方法
Jul 30 #Python
Python统计文件中去重后uuid个数的方法
Jul 30 #Python
Python利用正则表达式匹配并截取指定子串及去重的方法
Jul 30 #Python
You might like
绿山咖啡和蓝山咖啡
2021/03/04 新手入门
Codeigniter框架的更新事务(transaction)BUG及解决方法
2014/07/25 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
浅谈PHP正则中的捕获组与非捕获组
2016/07/18 PHP
jQuery chili图片远处放大插件
2009/11/30 Javascript
IE event.srcElement和FF event.target 功能比较
2010/03/01 Javascript
JS如何判断移动端访问设备并解析对应CSS
2013/11/27 Javascript
JS实现向表格中动态添加行的方法
2015/03/30 Javascript
js实现缓冲运动效果的方法
2015/04/10 Javascript
学习使用grunt来打包JavaScript和CSS程序的教程
2016/01/04 Javascript
关于JS中setTimeout()无法调用带参函数问题的解决方法
2016/06/21 Javascript
js实现自定义进度条效果
2017/03/15 Javascript
Smartour 让网页导览变得更简单(推荐)
2019/07/19 Javascript
详解基于Wepy开发小程序插件(推荐)
2019/08/01 Javascript
js遍历详解(forEach, map, for, for...in, for...of)
2019/08/28 Javascript
LayUI动态设置checkbox不显示的解决方法
2019/09/02 Javascript
Vue实现滑动拼图验证码功能
2019/09/15 Javascript
js实现简单掷骰子小游戏
2019/10/24 Javascript
JS实现小星星特效
2019/12/24 Javascript
深入理解Antd-Select组件的用法
2020/02/25 Javascript
解决vue一个页面中复用同一个echarts组件的问题
2020/07/19 Javascript
解决vue prop传值default属性如何使用,为何不生效的问题
2020/09/21 Javascript
[02:46]2014DOTA2国际邀请赛 选手为你解读比赛MVP充满梦想
2014/07/09 DOTA
简单的通用表达式求10乘阶示例
2014/03/03 Python
python的变量与赋值详细分析
2017/11/08 Python
python读取一个目录下所有txt里面的内容方法
2018/06/23 Python
详解Python Qt的窗体开发的基本操作
2019/07/14 Python
通过代码实例解析Pytest运行流程
2020/08/20 Python
python super()函数的基本使用
2020/09/10 Python
德国奢侈品网上商城:Mytheresa
2016/08/24 全球购物
意大利奢侈品牌在线精品店:Jole.it
2020/11/23 全球购物
ktv好的活动方案
2014/08/17 职场文书
汽车服务工程专业自荐信
2014/09/02 职场文书
员工评语范文
2014/12/31 职场文书
国家助学金感谢信
2015/01/21 职场文书
升学宴祝酒词
2015/08/11 职场文书