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 相关文章推荐
python通过文件头判断文件类型
Oct 30 Python
Python脚本处理空格的方法
Aug 08 Python
利用Python自动监控网站并发送邮件告警的方法
Aug 24 Python
Python面向对象特殊成员
Apr 24 Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 Python
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
Aug 08 Python
python+selenium+autoit实现文件上传功能
Aug 23 Python
对python:循环定义多个变量的实例详解
Jan 20 Python
keras获得model中某一层的某一个Tensor的输出维度教程
Jan 24 Python
python函数超时自动退出的实操方法
Dec 28 Python
整理Python中常用的conda命令操作
Jun 15 Python
python析构函数用法及注意事项
Jun 22 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
用PHP制作静态网站的模板框架
2006/10/09 PHP
php自定义函数转换html标签示例
2016/09/29 PHP
JQuery 常用方法基础教程
2009/02/06 Javascript
JavaScript Event学习第十一章 按键的检测
2010/02/10 Javascript
JQuery中的$.getJSON 使用说明
2011/03/10 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
JS实现点击链接取消跳转效果的方法
2014/01/24 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
javascript中几个容易混淆的概念总结
2015/04/14 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
jquery操作ID带有变量的节点实例
2016/12/07 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
vue+element实现表格新增、编辑、删除功能
2019/05/28 Javascript
解决小程序无法触发SESSION问题
2020/02/03 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
vue数据更新UI不刷新显示的解决办法
2020/08/06 Javascript
[56:00]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第二场
2018/04/10 DOTA
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
Python中非常实用的一些功能和函数分享
2015/02/14 Python
Python中用字符串调用函数或方法示例代码
2017/08/04 Python
Python实现自动上京东抢手机
2018/02/06 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
2018/07/18 Python
对Python3使运行暂停的方法详解
2019/02/18 Python
详解python校验SQL脚本命名规则
2019/03/22 Python
python+logging+yaml实现日志分割
2019/07/22 Python
Python操作远程服务器 paramiko模块详细介绍
2019/08/07 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
2019/10/28 Python
如何用Matplotlib 画三维图的示例代码
2020/07/28 Python
Django配置Bootstrap, js实现过程详解
2020/10/13 Python
Python3.9最新版下载与安装图文教程详解(Windows系统为例)
2020/11/28 Python
Python 找出英文单词列表(list)中最长单词链
2020/12/14 Python
基于HTML5 FileSystem API的使用介绍
2013/04/24 HTML / CSS
mysql数据库入门第一步之创建表
2021/05/14 MySQL
windows11怎么查看wifi密码? win11查看wifi密码的技巧
2021/11/21 数码科技
win11无法添加打印机怎么办? 提示windows无法打开添加打印机的解决办法
2022/04/05 数码科技