4

我希望在 Windows 7 中模拟 python 3.2 中的击键以发送到 GUI。我的电脑上安装了 python win32 模块。顺序是 alt+t+r+name+enter。什么是最好的发送方式这些对活动窗口的击键?任何示例代码都会有很大帮助。感谢您。(我见过一些名为 sendkeys 的模块,但它可以与 pywin32 一起使用吗?我不允许安装任何其他模块)

4

1 回答 1

8

我知道这可能并不完美。我们有一个使用 python 2.7 的测试应用程序。我们利用 Windows 脚本主机来发送密钥。我还没有时间将任何东西移植到 python 3,但这可能会让你朝着正确的方向前进。它应该非常相似。

import win32api
import win32com.client

shell = win32com.client.Dispatch("WScript.Shell")
shell.Run("app")
win32api.Sleep(100)
shell.AppActivate("myApp")
win32api.Sleep(100)
shell.SendKeys("%")
win32api.Sleep(500)
shell.SendKeys("t")
win32api.Sleep(500)
shell.SendKeys("r")
win32api.Sleep(500)
shell.SendKeys("name")
win32api.Sleep(500)
shell.SendKeys("{ENTER}")
win32api.Sleep(2500)

以下是Windows Scripting Host的发送键命令列表。

更新

这使用 pywin32。它默认安装在 Python 的ActiveState版本中(这是我正在使用的版本)。我不确定,但我不相信它默认安装在普通版本的 python 中。

于 2012-06-22T12:29:51.923 回答