python读取json文件并将数据插入到mongodb的方法
本文实例讲述了python读取json文件并将数据插入到mongodb的方法。分享给大家供大家参考。具体实现方法如下:
#coding=utf-8
importsunburnt
importurllib
frompymongoimportConnection
frombson.objectidimportObjectId
importlogging
fromdatetimeimportdatetime
importjson
fromtimeimportmktime
fromfeedparserimport_parse_dateasparse_date
importtime
importsys
importgetopt
importConfigParser
args=sys.argv[1:]
optlist,args=getopt.getopt(args,'c:')
cmd_opt={}
foroptinoptlist:
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"getfilecontentsuccessfully!"
#insertcourse
courseId=courseTable.save(courseData)
courseId=str(courseId)
print"courseId:"+courseId
print"leclength:"+str(len(lecDataArr))
#insertlecture
lecIdArr=[]
forlecDatainlecDataArr:
lecData["course_id"]=courseId
lecId=lecTable.save(lecData)
lecIdArr.append(str(lecId))
#updatecourse
courseTable.update({'_id':ObjectId(courseId)},
{"$set":{"lectures.lecture_id_list":lecIdArr}},
upsert=True,multi=True);
print'insertsuccessfully!'
exceptException,e:
printe
希望本文所述对大家的Python程序设计有所帮助。