让你的程序使用GUI
我想写一个程序,可以“使用”其他程序,方法是控制鼠标和键盘,并且能够“看到”屏幕上的内容。
我之前用过AutoIt做过类似的事情,但有时候我不得不作弊,因为这个语言的功能有限,或者可能是我技术不够好,没办法做到更多 :P
所以,我需要:
- 截屏,然后对比这些截图,让程序“理解”内容,但它需要能够“看到”。
- 使用鼠标:移动、点击和释放,这很简单,对吧?
- 使用键盘:按一些键,或者组合键,包括像Alt、Ctrl这样的特殊键。
我该如何在Python中实现这些功能呢?
这个方法在Linux和Windows上都能用吗?(这会非常酷,但不是必须的)
5 个回答
1
你可以在Windows系统上使用WATSUP这个工具。
2
AutoIt完全可以做到你提到的所有事情。当我想要进行一些自动化操作,同时又想使用Python的功能时,我发现使用AutoItX是最简单的选择,它是一个DLL/COM控件。
摘自我在这个回答:
import win32com.client
oAutoItX = win32com.client.Dispatch( "AutoItX3.Control" )
oAutoItX.Opt("WinTitleMatchMode", 2) #Match text anywhere in a window title
width = oAutoItX.WinGetClientSizeWidth("Firefox")
height = oAutoItX.WinGetClientSizeHeight("Firefox")
print width, height