将JSON文档批量导入MongoDB

时间:2016-01-13 21:05:27

标签: json mongodb pymongo-3.x

我有一个包含18K json文档的目录。我试图批量导入MongoDB。我在Python中编写了这个脚本以加载所有内容。这段代码给了我一个语法错误,因为它看起来并不像Pymongo有' mongoimport'功能。我如何更正此代码,以便我可以从目录批量导入json文件。

import json 
import glob 
from pymongo import MongoClient 

directory = '/home/mongo/data/*.json' 
client = MongoClient("localhost", 27017) 
db = client.nba 
collection = db.test
jsonFiles = glob.glob(directory) 

for file in jsonFiles: 
    mongoimport --db nba --collection sigOptBox --file file

1 个答案:

答案 0 :(得分:0)

mongoimport是一个独立的可执行文件。假设它是您的搜索路径,您可以使用call模块中的subprocess来调用它:

import shlex
from subprocess import call
args = shlex.split("mongoimport --db nba --collection sigOptBox --file file")
call(args)