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

yipeiwu_com5年前Python基础

利用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合并同一个文件夹下所有PDF文件的方法

Python合并同一个文件夹下所有PDF文件的方法

一、需求说明 下载了网易云课堂的吴恩达免费的深度学习的pdf文档,但是每一节是一个pdf,我把这些PDF文档放在一个文件夹下,希望合并成一个PDF文件。于是写了一个python程序,很好...

简单掌握Python的Collections模块中counter结构的用法

counter 是一种特殊的字典,主要方便用来计数,key 是要计数的 item,value 保存的是个数。 from collections import Counter >...

python+matplotlib演示电偶极子实例代码

python+matplotlib演示电偶极子实例代码

使用matplotlib.tri.CubicTriInterpolator.演示变化率计算: 完整实例: from matplotlib.tri import ( Triang...

python中cPickle用法例子分享

在python中,一般可以使用pickle类来进行python对象的序列化,而cPickle提供了一个更快速简单的接口,如python文档所说的:“cPickle -- A faster...

Python操作MySQL简单实现方法

本文实例讲述了Python操作MySQL简单实现方法。分享给大家供大家参考。具体分析如下: 一、安装: 安装MySQL 安装MySQL不用多说了,下载下来安装就是,没有特别需要注意的地方...