python读取json文件并将数据插入到mongodb的方法


Posted in Python onMarch 23, 2015

本文实例讲述了python读取json文件并将数据插入到mongodb的方法。分享给大家供大家参考。具体实现方法如下:

#coding=utf-8
import sunburnt
import urllib
from pymongo import Connection
from bson.objectid import ObjectId
import logging
from datetime import datetime
import json
from time import mktime
from feedparser import _parse_date as parse_date
import time
import sys
import getopt
import ConfigParser
args = sys.argv[1:]
optlist, args = getopt.getopt(args, 'c:')
cmd_opt = {}
for opt in optlist:
  cmd_opt[opt[0]] = opt[1]
conf_file = cmd_opt['-c']
config = ConfigParser.ConfigParser()
config.read(conf_file)
hostname = config.get("mongodb", "hostname")
port_num = int(config.get("mongodb", "port_num"))
db_name = config.get("mongodb", "db")
connection = Connection(hostname, port_num)
db = connection[db_name]
courseTable = db.course
lecTable = db.lecture
try:
  f = file("json1-14/14.json")
  s = json.load(f)
  courseData = s["results"]["course"]
  lecDataArr = s["results"]["lecture"]
  f.close
  print "get file content successfully!"
  #insert course
  courseId = courseTable.save(courseData)
  courseId = str(courseId)
  print "courseId: "+courseId
  print "lec length: "+str(len(lecDataArr))
  #insert lecture
  lecIdArr = []
  for lecData in lecDataArr:
    lecData["course_id"] = courseId
    lecId = lecTable.save(lecData)
    lecIdArr.append(str(lecId))
  # update course
  courseTable.update({'_id':ObjectId(courseId)},
            {"$set":{"lectures.lecture_id_list":lecIdArr}},
            upsert=True, multi=True);
  print 'insert successfully!'
except Exception, e:
  print e

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python通过ElementTree操作XML获取结点读取属性美化XML
Dec 02 Python
python获取目录下所有文件的方法
Jun 01 Python
Python列出一个文件夹及其子目录的所有文件
Jun 30 Python
python中 chr unichr ord函数的实例详解
Aug 06 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
详解python OpenCV学习笔记之直方图均衡化
Feb 08 Python
使用python对文件中的数值进行累加的实例
Nov 28 Python
Django Rest framework权限的详细用法
Jul 25 Python
Apache部署Django项目图文详解
Jul 30 Python
使用Pyinstaller转换.py文件为.exe可执行程序过程详解
Aug 06 Python
python利用opencv实现SIFT特征提取与匹配
Mar 05 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
Dec 16 Python
python调用机器喇叭发出蜂鸣声(Beep)的方法
Mar 23 #Python
python批量生成本地ip地址的方法
Mar 23 #Python
python通过字典dict判断指定键值是否存在的方法
Mar 21 #Python
python执行外部程序的常用方法小结
Mar 21 #Python
python使用Flask框架获取用户IP地址的方法
Mar 21 #Python
Python使用Flask框架获取当前查询参数的方法
Mar 21 #Python
Python使用Flask框架同时上传多个文件的方法
Mar 21 #Python
You might like
php数组函数序列之array_intersect() 返回两个或多个数组的交集数组
2011/11/10 PHP
CI框架集成Smarty的方法分析
2016/05/17 PHP
浅谈php中变量的数据类型判断函数
2017/03/04 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
php创建类并调用的实例方法
2019/09/25 PHP
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
2008/12/25 Javascript
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
jquery实现点击文字可编辑并修改保存至数据库
2014/04/15 Javascript
JS面向对象编程详解
2016/03/06 Javascript
如何在Linux上安装Node.js
2016/04/01 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
老生常谈JS中的继承及实现代码
2018/07/06 Javascript
JS实现全屏预览F11功能的示例代码
2018/07/23 Javascript
django使用channels2.x实现实时通讯
2018/11/28 Javascript
使用express来代理服务的方法
2019/06/21 Javascript
Javascript柯里化实现原理及作用解析
2020/10/22 Javascript
[52:09]2014 DOTA2华西杯精英邀请赛 5 25 NewBee VS DK第二场
2014/05/26 DOTA
PyQt5实现下载进度条效果
2018/04/19 Python
Django项目中用JS实现加载子页面并传值的方法
2018/05/28 Python
PyTorch搭建多项式回归模型(三)
2019/05/22 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
解决django-xadmin列表页filter关联对象搜索问题
2019/11/15 Python
Python读取pdf表格写入excel的方法
2021/01/22 Python
英国、欧洲和全球租车服务:Avis英国
2016/08/29 全球购物
业务经理岗位职责
2013/11/11 职场文书
应届毕业生应聘自荐信
2013/12/07 职场文书
国贸专业的职业规划范文
2014/01/23 职场文书
中学生自我鉴定
2014/02/04 职场文书
医药营销个人求职信
2014/04/12 职场文书
差生评语大全
2014/05/04 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
2014年保卫部工作总结
2014/11/21 职场文书
抢劫罪辩护词
2015/05/21 职场文书
利用html+css实现菜单栏缓慢下拉效果的示例代码
2021/03/30 HTML / CSS
python获取带有返回值的多线程
2022/05/02 Python