Python如何模拟cmd用户输入

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

我使用的是 Windows 10。

我有一个文件(

1.py
),其中包含
getpass.getpass()
,我想使用python自动输入密码。

我尝试过

subprocess.Popen(['py', '1.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
,但无法写入。

在写入

stdin
时,我添加了换行符并清除了缓冲区。

我该怎么办?

python python-3.x windows subprocess
1个回答
0
投票

我的工作示例在这里:

1.py:

import getpass

print(getpass.getpass())

你好.py:

import subprocess
import sys

subprocess.run(
    [
        sys.executable,
        "1.py",
    ]
)

如果想直接使用 Popen 类,请使用

Popen.communicate
方法与进程交互并等待进程退出。

如果你想以编程方式将密码写入

1.py
,使用内置模块似乎是不可能的。

© www.soinside.com 2019 - 2024. All rights reserved.