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实现文件名批量替换和内容替换
Mar 20 Python
python实现指定字符串补全空格的方法
Apr 30 Python
基于Python实现文件大小输出
Jan 11 Python
Python生成随机密码的方法
Jun 16 Python
浅谈Python中带_的变量或函数命名
Dec 04 Python
python回调函数中使用多线程的方法
Dec 25 Python
详解Python爬取并下载《电影天堂》3千多部电影
Apr 26 Python
利用rest framework搭建Django API过程解析
Aug 31 Python
python3 字符串知识点学习笔记
Feb 08 Python
Python3变量与基本数据类型用法实例分析
Feb 14 Python
详解torch.Tensor的4种乘法
Sep 03 Python
使用python创建股票的时间序列可视化分析
Mar 03 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中一些可能会被忽略的问题
2013/06/21 PHP
mantis安装、配置和使用中的问题小结
2014/07/14 PHP
php生成验证码函数
2015/10/20 PHP
PHP生成推广海报的方法分享
2018/04/22 PHP
php微信公众号开发之音乐信息
2018/10/20 PHP
php微信扫码支付 php公众号支付
2019/03/24 PHP
javascript之锁定表格栏位
2007/06/29 Javascript
JQuery 学习笔记 选择器之四
2009/07/23 Javascript
Javascript Cookie读写删除操作的函数
2010/03/02 Javascript
基于jquery的让页面控件不可用的实现代码
2010/04/27 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
2012/03/01 Javascript
JS实现跟随鼠标立体翻转图片的方法
2015/05/04 Javascript
JavaScript中字面量与函数的基本使用知识
2015/10/20 Javascript
详解Javascript数据类型的转换规则
2016/12/12 Javascript
JS判断非空至少输入两个字符的简单实现方法
2017/06/23 Javascript
利用原生js实现html5小游戏之打砖块(附源码)
2018/01/03 Javascript
快速解决处理后台返回json数据格式的问题
2018/08/07 Javascript
Vue刷新修改页面中数据的方法
2018/09/16 Javascript
如何解决js函数防抖、节流出现的问题
2019/06/17 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
重命名批处理python脚本
2013/04/05 Python
pycharm 使用心得(三)Hello world!
2014/06/05 Python
centos 下面安装python2.7 +pip +mysqld
2014/11/18 Python
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
详解Python中dict与set的使用
2015/08/10 Python
python文件与目录操作实例详解
2016/02/22 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
2017/12/14 Python
Django自定义过滤器定义与用法示例
2018/03/22 Python
Python并发之多进程的方法实例代码
2018/08/15 Python
python opencv捕获摄像头并显示内容的实现
2019/07/11 Python
python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例
2020/03/04 Python
python 实现朴素贝叶斯算法的示例
2020/09/30 Python
Prometheus开发中间件Exporter过程详解
2020/11/30 Python
新西兰领先的内衣店:Bendon Lingerie新西兰
2018/07/11 全球购物
【魔兽争霸3重制版】原版画面与淬火MOD画面对比
2021/03/26 魔兽争霸
家长会标语
2014/06/24 职场文书