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清除字符串里非字母字符的方法
Jul 02 Python
django轻松使用富文本编辑器CKEditor的方法
Mar 30 Python
Python requests库用法实例详解
Aug 14 Python
python抓取京东小米8手机配置信息
Nov 13 Python
在scrapy中使用phantomJS实现异步爬取的方法
Dec 17 Python
python爬取基于m3u8协议的ts文件并合并
Apr 26 Python
Django 过滤器汇总及自定义过滤器使用详解
Jul 19 Python
python中使用you-get库批量在线下载bilibili视频的教程
Mar 10 Python
彻底搞懂python 迭代器和生成器
Sep 07 Python
详解基于python的图像Gabor变换及特征提取
Oct 26 Python
python re模块常见用法例举
Mar 01 Python
解决Python import .pyd 可能遇到路径的问题
Mar 04 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面向对象——访问修饰符介绍
2012/11/08 PHP
PHP之密码加密的几种方式
2015/07/29 PHP
PHP中串行化用法示例
2016/11/16 PHP
详解PHP版本兼容之openssl调用参数
2018/07/25 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
Asp.net下使用Jquery Ajax传送和接收DataTable的代码
2010/09/12 Javascript
jquery 插件学习(三)
2012/08/06 Javascript
JS 如何获取radio选中后的值及不选择取radio的值
2013/10/28 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
js实现文字向上轮播功能
2017/01/13 Javascript
简单实现js选项卡切换效果
2017/02/09 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
javascript中floor使用方法总结
2019/02/02 Javascript
微信小程序云函数使用mysql数据库过程详解
2019/08/07 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
讲解Python中if语句的嵌套用法
2015/05/14 Python
python中异常捕获方法详解
2017/03/03 Python
Windows下的Jupyter Notebook 安装与自定义启动(图文详解)
2018/02/21 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
Django框架模板介绍
2019/01/15 Python
Python生成rsa密钥对操作示例
2019/04/26 Python
Python爬取视频(其实是一篇福利)过程解析
2019/08/01 Python
python命令 -u参数用法解析
2019/10/24 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
Python logging日志库空间不足问题解决
2020/09/14 Python
HTML5的标签的代码的简单介绍 HTML5标签的简介
2012/05/28 HTML / CSS
世界上最大的折扣香水店:FragranceNet.com
2016/10/26 全球购物
女士时装鞋:Chinese Laundry
2018/08/29 全球购物
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
N:Philanthropy官网:美国洛杉矶基础款服装
2020/06/09 全球购物
12月红领巾广播稿
2014/02/13 职场文书
2014国庆节演讲稿:祖国在我心中(400字)
2014/09/25 职场文书
清洁工个人工作总结
2015/03/05 职场文书
警示教育观后感
2015/06/17 职场文书
JS中一些高效的魔法运算符总结
2021/05/06 Javascript