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复制文件操作实例详解
Nov 10 Python
详解Python进程间通信之命名管道
Aug 28 Python
Python实现一个简单的验证码程序
Nov 03 Python
利用python将json数据转换为csv格式的方法
Mar 22 Python
实践Vim配置python开发环境
Jul 02 Python
pyside+pyqt实现鼠标右键菜单功能
Dec 08 Python
详解Python中正则匹配TAB及空格的小技巧
Jul 26 Python
Django错误:TypeError at / 'bool' object is not callable解决
Aug 16 Python
tensorflow 实现从checkpoint中获取graph信息
Feb 10 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
Python中SQLite如何使用
May 27 Python
django 将自带的数据库sqlite3改成mysql实例
Jul 09 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字符串长度计算 - strlen()函数使用介绍
2013/10/15 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
2014/09/09 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
laravel中的一些简单实用功能
2018/11/03 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
多种JQuery循环滚动文字图片效果代码
2020/06/23 Javascript
Vue.js每天必学之内部响应式原理探究
2016/09/07 Javascript
js防阻塞加载的实现方法
2016/09/09 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
2016/11/09 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
javascript匿名函数中的'return function()'作用
2018/10/15 Javascript
es6基础学习之解构赋值
2018/12/10 Javascript
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 jQuery
Python中的FTP通信模块ftplib的用法整理
2016/07/08 Python
python3实现全角和半角字符转换的方法示例
2017/09/21 Python
Python编程之黑板上排列组合,你舍得解开吗
2017/10/30 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
python使用PIL给图片添加文字生成海报示例
2018/08/17 Python
Python实现获取汉字偏旁部首的方法示例【测试可用】
2018/12/18 Python
Django框架模板介绍
2019/01/15 Python
python动态进度条的实现代码
2019/07/03 Python
pytorch 批次遍历数据集打印数据的例子
2019/12/30 Python
Python类的动态绑定实现原理
2020/03/21 Python
Python 实现平台类游戏添加跳跃功能
2020/03/27 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
百联网上商城:i百联
2017/01/28 全球购物
可持续木材、生态和铝制太阳镜:Proof Eyewear
2019/07/24 全球购物
Linux文件系统类型
2012/09/16 面试题
教师个人的自我评价分享
2014/01/02 职场文书
采购主管岗位职责
2014/02/01 职场文书
安全生产责任书范本
2014/04/15 职场文书
2015年项目经理工作总结
2015/04/30 职场文书
离婚财产分割协议书
2015/08/11 职场文书
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android