【问题标题】:How to use subprocess to obtain terminal error information?如何使用子进程获取终端错误信息?
【发布时间】:2020-06-22 06:30:16
【问题描述】:

我正在使用子进程来执行 selenium-side-runner。想获取终端的错误信息,用代码分析错误原因。

result = subprocess.Popen(
    [
        "selenium-side-runner",
        "--server",
        settings.SELENIUM_ADDRESS,
        file_path,
    ],
    stdout=subprocess.PIPE
)
try:
    outs, errs = result.communicate(timeout=600)
except subprocess.TimeoutExpired:
    result.kill()
    outs, errs = result.communicate()

但是使用这种方法,我无法在终端中得到类似输出的错误信息。

【问题讨论】:

    标签: python subprocess selenium-ide


    【解决方案1】:

    尝试添加stderr:

    result = subprocess.Popen(
        [
            "selenium-side-runner",
            "--server",
            settings.SELENIUM_ADDRESS,
            file_path,
        ],
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE
    )
    

    【讨论】:

    • 谢谢,我用你的方法从终端获取了输出。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2020-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多