pyautogui
是一个Python库,可以自动控制键盘和鼠标,非常适合进行自动化任务。它可以用于各种场景,比如自动化测试、数据录入任务,甚至是简单的游戏机器人。下面是一个关于pyautogui
的入门教程,包括它的安装、基本使用方法以及一些高级功能的介绍。
安装pyautogui
首先,需要安装pyautogui
。打开命令行或终端,运行以下命令:
pip install pyautogui
基本操作
控制鼠标
- 移动鼠标:
moveTo(x, y, duration=num_seconds)
函数将鼠标光标移动到屏幕上的指定位置。
import pyautogui
pyautogui.moveTo(100, 100, duration=2) # 将鼠标移动到屏幕的(100,100)位置
- 点击:
click(x, y, button='left')
函数在指定位置进行鼠标点击,默认为左键。
pyautogui.click() # 在当前位置点击
pyautogui.click(200, 220, button='right') # 在(200,220)位置右键点击
- 滚动:
scroll(amount_to_scroll, x, y)
函数在指定位置上滚动鼠标。scroll函数的参数表示滚动的量,单位是"行"。
pyautogui.scroll(200) # 向上滚动
控制键盘
- 按键:
press(keys)
函数模拟按键。
pyautogui.press('enter') # 模拟按下回车键
- 键入文本:
write(text, interval=seconds)
函数模拟键入文本。
pyautogui.write('Hello, world!', interval=0.1) # 模拟键入文本,每个字符间隔0.1秒
- 组合键:
hotkey('ctrl', 'c')
函数模拟键盘组合键操作。
pyautogui.hotkey('ctrl', 'c') # 模拟按下Ctrl+C复制
高级功能
屏幕截图和图像识别
- 截图:
screenshot()
函数可以捕获屏幕截图。
screenshot = pyautogui.screenshot()
screenshot.save('screenshot.png') # 保存截图
- 图像识别:
locateOnScreen('image.png')
函数可以在屏幕上找到与指定图像匹配的位置。可以通过confidence参数增加搜索的容错能力。confidence参数用于指定匹配的精度,范围从0到1。注意,使用confidence参数需要安装opencv-python库。
button_location = pyautogui.locateOnScreen('button.png')
button_x, button_y = pyautogui.center(button_location)
pyautogui.click(button_x, button_y) # 点击找到的按钮
安全特性
pyautogui
提供了几个安全特性来防止脚本失控:
- 故障安全: 默认情况下,将鼠标移动到屏幕的左上角将引发
pyautogui.FailSafeException
异常,从而停止脚本。 - 操作延迟:
pyautogui.PAUSE
设置每个pyautogui
调用之间的延迟,以减慢执行速度。
pyautogui.PAUSE = 1 # 每个操作后暂停1秒
实战示例
示例1:自动打开计算器
让我们通过一个简单的实战示例来巩固学习:自动打开计算器应用程序,进行一次加法操作,并关闭计算器。
import pyautogui
import time
# 每个操作后暂停1秒
pyautogui.PAUSE = 1
# 打开计算器(这里假设是Windows系统)
pyautogui.press('win')
pyautogui.write('calculator', interval=0.25)
pyautogui.press('enter')
time.sleep(2) # 等待计算器打开
# 进行加法操作
pyautogui.write('123+456', interval=0.25)
pyautogui.press('enter')
# 关闭计算器
pyautogui.hotkey('alt', 'f4')
演示
示例2:模拟刷赞的例子
Python模拟刷赞助手