PyAutoGui是一个跨平台GUI自动化库。
PyAutoGUI是一个Python模块,用于以编程方式控制鼠标和键盘。
PyPutoGUI可以从pip工具安装或从PyPI下载:
https://pypi.python.org/pypi/PyAutoGUI
源代码可在以下网址获得:https://github.com/asweigart/pyautogui
1.简介
目的
PyAutoGUI的目的是为GUI自动化提供跨平台的Python模块。 API的设计尽可能简单,具有合理的默认值。
例如,以下是在Windows,OS X和Linux上将鼠标移动到屏幕中间的完整代码:
PyAutoGUI可以模拟移动鼠标,单击鼠标,用鼠标拖动,按键,按住键,然后按键盘热键组合。
例子
此示例在MS Paint(或任何图形绘制程序)中将鼠标拖动为方形螺旋形状:
依赖
在Windows上,PyAutoGUI没有依赖项(除了Pillow和其他一些模块,它们是由pip和PyAutoGUI一起安装的)。 它不需要安装pywin32模块,因为它使用Python自己的ctypes模块。
在OS X上,PyAutoGUI需要为AppKit和Quartz模块安装PyObjC。PyPI上的模块名称是pyobjc-core和pyobjc(按此顺序)。
在Linux上,PyAutoGUI需要安装python-xlib(用于Python 2)或python3-Xlib(用于Python 3)模块。
失效保护
就像魔法师的学徒中的的魔法扫帚一样,用水充满浴缸(然后过度填充)。 你的程序遵循你的指示可能会失控,需要停止。 如果鼠标自行移动,这可能很难做到,从而阻止您单击程序窗口将其关闭。
作为安全功能,默认情况下启用失效保护功能。 当pyautogui.FAILSAFE = True如果鼠标光标位于屏幕的左上角,PyAutoGUI函数将引发pyautogui.FailSafeException。 如果失去控制并需要停止当前的PyAutoGUI功能,请继续向上和向左移动鼠标光标。 要禁用此功能,请将FAILSAFE设置为False。
您可以通过将pyautogui.PAUSE变量设置为要暂停浮点数或整数值(单位是秒),在每个PyAutoGUI函数调用都增加延迟。 默认情况下,暂停设置为0.1秒。 这在与其他应用程序交互时非常有用,因此PyAutoGUI不会对它们移动太快。
例如:
所有PyAutoGUI函数都是阻塞调用。 (在未来规划路中添加一个可选的非阻塞方式来调用这些函数。)
建议使用FAILSAFE并设置PAUSE。
领取专属 10元无门槛券
私享最新 技术干货