使用python文件在mongo聚合中运行shell命令

时间:2013-11-28 05:14:35

标签: python json mongodb shell

我需要使用python脚本在shell中运行mongo聚合命令。我怎样才能做到这一点?这是我的尝试

import subprocess 
printj = 'aggregation_query'  
cmd ='mongo --quiet mydb --eval',"'",printj,"'",' > output_traffic.json'  
subprocess.call(cmd)

它出错

File "shellcmd.py", line 15, in <module>
    subprocess.call(cmd)
  File "/usr/lib64/python2.7/subprocess.py", line 524, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib64/python2.7/subprocess.py", line 1308, in _execute_child
    raise child_exception

1 个答案:

答案 0 :(得分:0)

不要使用mongo运行subprocess shell,只需导入pymongo并直接连接到MongoDB服务器。 Examples of running aggregation queries from PyMongo are in the documentation