我如何在Python子进程中模拟按键?

问题描述 投票:1回答:1

该场景是,我有一个Python脚本,其中一部分是使用下面的代码执行外部程序:

subprocess.run(["someExternalProgram", "some options"], shell=True)

并且当外部程序完成时,它要求用户“按任意键退出”。

由于这只是我脚本中的一个步骤,所以代表用户退出对我来说是个好习惯。

是否有可能实现这一目标,如果可以,如何实现?

python shell subprocess
1个回答
1
投票
from subprocess import Popen, PIPE

p = Popen(["someExternalProgram", "some options"], stdin=PIPE, shell=True)
p.communicate(input=b'\n')

如果要捕获输出和错误日志

from subprocess import Popen, PIPE

p = Popen(["someExternalProgram", "some options"], stdin=PIPE, stdout=PIPE, stderr=PIPE shell=True)
output, error = p.communicate(input=b'\n')
© www.soinside.com 2019 - 2024. All rights reserved.