Python:在窗口内单击坐标

时间:2015-02-23 02:04:56

标签: python-3.x selenium pywin32

我正在尝试编写的程序的目标是一个机器人,即使我没有选择窗口,也可以点击和播放Flash游戏并在窗口网页内按键。我的问题与this非常相似。我想知道的是如何使用win32,selenium和PIL来截取屏幕截图,分析屏幕截图,然后点击并按下相应的按钮。我查看了win32api文档,但没有发现如何在后台窗口中单击。

如果有人可以提供给之前做过此事的人的链接,或者只是在正确的方向上稍微推动一下会很棒!

2 个答案:

答案 0 :(得分:2)

pywinauto更简单,但可能无法识别Flash控件。代码应该看起来更短:

import pywinauto
app = pywinauto.Application().connect(path='process_name.exe')
app.MainDialog.click_input(coords=(953, 656))

检查哪些控件可见:

app.MainDialog.print_control_identifiers()

P.S。如果您使用Python 3.x,this clone与Py3兼容。

答案 1 :(得分:0)

如果您的目标是在屏幕上检测并与图像交互,您可能需要查看Sikuli。这正是它的作用。 Sikuli可以自动化您在屏幕上看到的任何内容。它使用图像识别来识别和控制GUI组件。当无法轻松访问GUI的内部或源代码时,它尤其有用。更多信息here