繁体   English   中英

使用Python子进程运行npm命令

[英]Run npm commands using Python subprocess

我正在尝试使用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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM