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流程控制语句
Dec 04 Python
PyQt5 pyqt多线程操作入门
May 05 Python
在Python中通过getattr获取对象引用的方法
Jan 21 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
Python实现图像去噪方式(中值去噪和均值去噪)
Dec 18 Python
python 输出列表元素实例(以空格/逗号为分隔符)
Dec 25 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
python通过安装itchat包实现微信自动回复收到的春节祝福
Jan 19 Python
python实现逆滤波与维纳滤波示例
Feb 26 Python
Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例
Mar 18 Python
Python3自定义json逐层解析器代码
May 11 Python
python判断变量是否为列表的方法
Sep 17 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模拟socket一次连接,多次发送数据的实现代码
2011/07/26 PHP
获取PHP警告错误信息的解决方法
2013/06/03 PHP
php实现base64图片上传方式实例代码
2017/02/22 PHP
Laravel中的Blade模板引擎示例详解
2017/10/10 PHP
jQuery Ajax之load()方法
2009/10/12 Javascript
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
jQuery实现多按钮单击变色
2014/11/27 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
详解webpack+angular2开发环境搭建
2017/06/28 Javascript
jQuery实现点击关注和取消功能
2017/07/03 jQuery
JavaScript数据结构之单链表和循环链表
2017/11/28 Javascript
详解Vue组件之间通信的七种方式
2019/04/14 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
浅谈Vue.set实际上是什么
2019/10/17 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
2020/01/04 Javascript
Vuejs通过拖动改变元素宽度实现自适应
2020/09/02 Javascript
python为tornado添加recaptcha验证码功能
2014/02/26 Python
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
python互斥锁、加锁、同步机制、异步通信知识总结
2018/02/11 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
python安装scipy的方法步骤
2019/06/26 Python
Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
2020/03/09 Python
python爬虫实现获取下一页代码
2020/03/13 Python
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
Peter Millar官网:美国高档生活服饰品牌
2018/07/02 全球购物
斐乐美国官方网站:FILA美国
2019/03/01 全球购物
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
EJB包括(SessionBean,EntityBean)说出他们的生命周期,及如何管理事务的?
2013/02/17 面试题
土木工程专业个人求职信
2013/12/30 职场文书
六一节目主持词
2014/04/01 职场文书
小组口号大全
2014/06/09 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
个人总结与自我评价2015
2015/03/11 职场文书
2015年小学数学教师工作总结
2015/05/20 职场文书
Python编写可视化界面的全过程(Python+PyCharm+PyQt)
2021/05/17 Python