2016-01-13 2 views
0

У меня есть каталог с 18K json документами. Я пытаюсь сделать массовый импорт в MongoDB. Я написал этот скрипт в Python, чтобы загрузить все. Этот код дает мне синтаксическую ошибку, поскольку не кажется, что у Pymongo есть функция «mongoimport». Как мне исправить этот код, чтобы я мог выполнять массовый импорт json-файлов из каталога.Массовый импорт документов JSON в MongoDB

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 

ответ

0

mongoimport является автономным исполняемым файлом. Предполагая, что это ваш путь поиска, вы можете использовать call от модуля subprocess, чтобы позвонить ему:

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