使用Python子进程运行npm命令



我试图使用YUIDOC自动生成文档,但我有一个大量使用python的服务器端框架,所以我试图从python脚本中自动化所有内容。我可以让node命令正常运行,但每当我尝试使用npm安装的东西时,python都不满意。我的项目使用Buildout而不是virtualenv,但理想情况下,我希望能够从一个独立的python文件中运行这些命令。

也许一些代码可以帮助解释我的情况:

import subprocess
subprocess.check_call('node --help')
#SUCCESS
import subprocess
subprocess.check_call('npm --help')
#FAIL
#WindowsError: [Error 2] The system cannot find the file specified
import subprocess
subprocess.check_call('yuidoc --help')
#FAIL
#WindowsError: [Error 2] The system cannot find the file specified

我已经尝试将yuidoc和npm内容所在的文件夹添加到python的sys.path中,但没有成功。

ps,这是一个类似于这个问题的问题。

我需要在check_call中指定shell=True
subprocess.check_call('npm --help', shell=True)
subprocess.check_call('yuidoc --help', shell=True)

相关内容

  • 没有找到相关文章

最新更新