08-移动鼠标指针
20.4.1 移动鼠标指针
既然理解了屏幕坐标,下面就让我们来移动鼠标指针。 pyautogui.moveTo()
函数将鼠标指针立即移动到屏幕的指定位置。表示x、y坐标的整数值分别构成了函数的第一个和第二个参数。可选的 duration
整数或浮点数关键字参数指定了将鼠标指针移到目的位置所需的秒数;如果不指定,默认值是0,表示立即移动(在 pyautogui
函数中,所有的 duration
关键字参数都是可选的)。在交互式环境中输入以下内容:
>>> import pyautogui
>>> for i in range(10): # Move mouse in a square.
... pyautogui.moveTo(100, 100, duration=0.25)
... pyautogui.moveTo(200, 100, duration=0.25)
... pyautogui.moveTo(200, 200, duration=0.25)
... pyautogui.moveTo(100, 200, duration=0.25)
这个例子根据提供的坐标,以正方形的模式顺时针移动鼠标指针,移动了10次。每次移动耗时0.25秒,因为有关键字参数指定 duration=0.25
。如果没有指定函数调用的第三个参数,鼠标指针就会马上从一个点移到另一个点。
pyautogui.move()
函数“相对于当前的位置”移动鼠标指针。下面的例子同样以正方形的模式移动鼠标指针,只是它从代码开始运行时鼠标指针所在的位置开始,按正方形移动:
>>> import pyautogui
>>> for i in range(10):
... pyautogui.move(100, 0, duration=0.25) # right
... pyautogui.move(0, 100, duration=0.25) # down
... pyautogui.move(-100, 0, duration=0.25) # left
... pyautogui.move(0, -100, duration=0.25) # up
pyautogui.move()
也接收3个参数:向右水平移动多少个像素,向下垂直移动多少个像素,以及(可选的)花多少时间完成移动。为第一个或第二个参数提供负整数,鼠标指针将向左或向上移动。