python - 从 python 脚本调用 mongoimport

标签 python django mongodb

我正在尝试使用以下命令导入 json 文件:mongoimport -c collection -d db < file.json 。当我从 shell 调用此命令时,每个文档都会被导入。但是,当我尝试从带有模块子进程的 python 脚本调用它时,如下所示: subprocess.call('mongoimport -c collection -d db < file.json', shell=True) ,我有以下错误:Failed: error processing document #37: unexpected EOF 。有人可以解释一下为什么它可以在 shell 中运行,但在从脚本调用时却不能运行吗?

提前致谢。

最佳答案

我的事情是因为 subprocess.Popen 构造函数接受参数列表,而不是字符串,如下所示:

p = subprocess.Popen(['mongoimport', '--db', 'AutoPrivilege', '-c','cars', 'stockvo.json', '--jsonArray', '--upsert','--drop'])...

关于python - 从 python 脚本调用 mongoimport,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38700051/

相关文章:

python - 从pyspark DataFrame中提取数据

python - Django celery - 在前一个实例完成的设定持续时间后启动周期性任务

python - MNIST 和 SGDClassifier 分类器

Python - 将二维数组写入文件中的特定行(空格分隔,无括号)

python - 路径功能无法识别问号

javascript - MongoDB 使用凭据连接

mongodb - 排序不是 mongodb 中的函数

java - Play Framework 2.5如何添加mongoDB?

python - 为什么我的 Cassandra 数据库读取数据的速度这么慢?我想在 10 秒内读取 100,000 行

python - Django onetoone 与用户的关系不使用查询