如何捕获通过subprocess.popen运行的程序失败的事实

时间:2018-06-12 22:47:54

标签: python subprocess

我有一个python脚本,我用它来启动zaproxy,它需要保持运行,而其余的python脚本运行。 我正在使用:

try:
    subprocess.popen({"zap.sh"...})
except:
    sys.exit(-1)

我无法使用subprocess.check_call()因为它在继续之前等待子进程完成,但是zaproxy需要继续在后台运行,因此它可以捕获我的Python脚本的其余部分所做的http请求

然而,当我运行subprocess命令并传入我希望zaproxy使用的特定端口时,我得到一个java异常,因为该端口已经在使用,但是try除了构造之外没有捕获java的事实过程失败。

有没有更好的方法来做到这一点,我可以捕捉zaproxy无法启动的事实?

0 个答案:

没有答案