在Python中的提示下以编程方式输入密码?

2024-10-03 21:32:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在Python脚本中使用与Unix expect类似的功能,因为外部可执行文件会提示输入密码。我目前正在执行以下操作:

p = subprocess.Popen("execA",stdout=subprocess.PIPE,stderr=subprocess.STDOUT)

其中execA提示输入密码。我想用“expect”来包装它,以提供所述密码。在

似乎有几种选择:

Pexpect - Noah Spurrier

Python Expect

最好的办法是什么?如果有更有效的方法来解决这个问题,我很想知道。在


Tags: 功能脚本可执行文件密码stderrstdoutunixexpect
2条回答

这类程序通常直接访问tty并将其置于“raw”模式。所以stdio管坏了。您需要在pty中生成子流程。一个简单的读/写可能会有用。这些“类预期”模块通常用于更复杂的场景。在

当然,我更喜欢this one,但我不确定它是否能在OSX上工作。在

我以前就是这样做的。在

不过,根据程序的不同,写stdin就足够了?在

相关问题 更多 >