2012-06-22 121 views
2

我正在寻找模拟windows 7中的python 3.2中的按键来发送到GUI.I在我的pc上安装了python win32模块。顺序是alt + t + r + name + enter将这些按键发送到活动窗口的最佳方式是什么?任何示例代码都会有很大的帮助。 感谢你。 (我见过一些叫做sendkeys的模块,但可以和pywin32一起使用吗?我不允许安装任何其他模块)使用pywin32模拟python中的按键

回答

4

我知道这可能不完美。我们有一个使用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脚本宿主的send key commands列表。

更新

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