PyAutoGUI 中文帮助文档-鼠标控制功能介绍

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

PyAutoGui是一个跨平台GUI自动化库。

PyAutoGUI是一个Python模块,用于以编程方式控制鼠标和键盘。

PyPutoGUI可以从pip工具安装或从PyPI下载:

https://pypi.python.org/pypi/PyAutoGUI

源代码可在以下网址获得:https://github.com/asweigart/pyautogui

-------------------------------------------------------------------------

本文主要介绍鼠标相关的控制

The Screen and Mouse Position

屏幕和鼠标位置

屏幕上的位置由X和Y笛卡尔坐标。 X坐标从左侧的0开始向右增加。 与数学不同,Y坐标从顶部的0开始,向下然后逐渐增加。

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

左上角的像素位于坐标0,0处。如果屏幕的分辨率为1920 x 1080,则右下角的像素为1919,1079(因为坐标从0开始,而不是1)。

size()函数将屏幕分辨率大小作为两个整数的元组返回。 position()函数返回鼠标光标的当前X和Y坐标。

例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

这是一个简短的Python 3程序,它将不断打印出鼠标光标的位置:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

这是Python 2版本:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

要检查屏幕上是否有XY坐标,请将它们(作为两个整数参数或带有两个整数的单个元组/列表参数)传递给onScreen()函数,如果它们在屏幕边界内,则返回True,如果是在屏幕边界外,则返回False。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

Mouse Movement

鼠标移动

moveTo()函数将鼠标光标移动到X和Y整数坐标位置。 可以为坐标参数为None值,以表示“当前鼠标光标位置”不变。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

通常鼠标光标会立即移动到新坐标。 如果希望鼠标逐渐移动到新位置,请传递第三个参数,持续时间(以秒为单位)。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

(如果持续时间小于pyautogui.MINIMUM_DURATION,则移动将是即时的。默认情况下,

pyautogui.MINIMUM_DURATION是0.1。)

如果要将鼠标光标相对于其当前位置移动几个像素,请使用moveRel()函数。 此函数具有与moveTo()类似的参数。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

Mouse Drags

鼠标拖拉

PyAutoGUI的dragTo()和dragRel()函数具有与moveTo()和moveRel()函数类似的参数。 此外,它们还有一个按钮关键字,可以设置为“左”,“中间”和“右”,拖动时按住鼠标按钮。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

Tween / Easing Functions

补间/缓动功能

补间是一个额外的功能,使鼠标移动花哨。 如果您不关心这一点,您可以跳过本节。

补间或缓动函数指示鼠标移动到目标时的进度。 通常,当鼠标移动一段时间时,鼠标以恒定速度直线移动到目的地。 这称为线性补间或线性缓动函数

PyAutoGUI在pyautogui模块中提供了其他补间函数。 pyautogui.easeInQuad函数可以传递给第四个参数moveTo(),moveRel(),dragTo()和dragRel()函数,让鼠标光标开始缓慢移动,然后加速向目的地方向移动。 总持续时间仍然与传递给函数的参数相同。 pyautogui.easeOutQuad是相反的:鼠标光标开始快速移动但在接近目标时减慢速度。 pyautogui.easeOutElastic将来回超过目的地和“橡皮筋”,直到它到达目的地。

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

这些补间函数是从Al Sweigart的PyTweening模块中复制的:https://pypi.python.org/pypi/ PyTweening https://github.com/asweigart/pytweening不必安装此模块即可使用补间功能。

如果要创建自己的补间函数,请定义一个函数,该函数在0.0(表示鼠标移动的开始)和1.0(表示鼠标移动的结束)之间采用单个浮点参数,并返回介于0.0和1.0之间的浮点值。

补间/缓动功能主要模拟人类操作鼠标的随机行为

Mouse Clicks

鼠标点击

click()函数模拟鼠标当前位置的单个鼠标左键单击。 “点击”是指定义为按下按钮然后将其释放的整个过程。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

要在单击之前调用moveTo(),请传递x和y关键字参数的整数:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

要指定单击的其他鼠标按钮,请为“”按钮传递“left”,“middle”或“right”.

关键字参数:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

要进行多次单击,请将整数传递给clicks参数。 (可选)您可以将float或integer传递给interval关键字参数,以指定点击之间的暂停时间(以秒为单位)。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

作为一个方便的方式,doubleClick()函数将执行双击鼠标左键。 它还具有可选的x,y,interval和button关键字参数。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

tripleClick()函数也有一个具有类似可选关键字参数

rightClick() 有可选的x 和y关键字参数

The mouseDown() and mouseUp() Functions

mouseDown()和mouseUp()函数

鼠标点击和拖动包括按下鼠标按钮并将其释放回来。 如果要单独执行这些操作,请调用mouseDown()和mouseUp()函数。 它们具有相同的x,y和按钮。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

Mouse Scrolling

鼠标滚动

可以通过调用scroll()函数并传递整数个“单击”来滚动来模拟鼠标滚轮。 “点击”中的滚动量因平台而异。 (可选)可以为x和y关键字参数传递整数,以便在执行滚动之前移动鼠标光标。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

在OS X和Linux平台上,PyAutoGUI还可以通过调用hscroll()函数来执行水平滚动。 例如:

PyAutoGUI 中文帮助文档-鼠标控制功能介绍

scroll()函数包装了vscroll(),默认执行垂直滚动

----------------------------------------------------------------------------

相关阅读:

PyAutoGUI 中文帮助文档-简介

PyAutoGUI 中文帮助文档-安装

PyAutoGUI 中文帮助文档- 快速入门参考



分享到:


相關文章: