Python 自动化桌面小工具:利用 PyAutoGUI 实现简单的桌面自动化

前言:在日常电脑操作中,很多重复点击、输入的工作会消耗不少时间。PyAutoGUI 是一个跨平台的 Python 自动化库,可以模拟鼠标移动、点击、键盘输入,适合用来做轻量桌面自动化脚本。本文仅用于编程技术学习,禁止用于游戏作弊、恶意批量操作等违规场景。

环境说明:Windows 10 / Windows 11,Python 3.8+

一、安装依赖

打开命令提示符(CMD)执行安装命令:

pip install pyautogui

可选配套库(用于截图识别):

pip install opencv-python pillow

二、基础示例:鼠标控制

import pyautogui
import time

# 暂停2秒,方便切换窗口
time.sleep(2)

# 获取屏幕分辨率
screenWidth, screenHeight = pyautogui.size()
print(f"屏幕尺寸:宽{screenWidth},高{screenHeight}")

# 鼠标移动到指定坐标,持续0.5秒
pyautogui.moveTo(500, 400, duration=0.5)

# 鼠标左键单击
pyautogui.click()

# 右键点击
# pyautogui.rightClick()

代码说明

1. time.sleep() 延时是非常重要的,留给我们切换窗口的时间;

2. moveTo(x,y, duration):duration 代表移动耗时,数值越大移动越平缓;

3. 坐标原点在屏幕左上角。

三、键盘输入示例

import pyautogui
import time

time.sleep(2)
# 输入文字
pyautogui.typewrite("Hello,这是PyAutoGUI输入测试", interval=0.08)

# 按下回车键
pyautogui.press("enter")

# 快捷键组合:Ctrl + A 全选
pyautogui.hotkey("ctrl", "a")

interval:每个字符输入间隔,模拟真人打字速度;

hotkey() 用来实现组合快捷键,支持 ctrl、shift、alt。

四、图像识别定位(模板匹配)

这个功能可以让脚本找到屏幕上和参考图片一样的图标位置,适合固定界面的自动化:

import pyautogui
import time

time.sleep(2)
# 查找图片,返回坐标,confidence是匹配精度
pos = pyautogui.locateOnScreen("test.png", confidence=0.8)
if pos:
    center = pyautogui.center(pos)
    pyautogui.click(center)
    print("找到目标并点击")
else:
    print("未匹配到图片")

注意:test.png 需要放在脚本同目录,截图尽量清晰,不要缩放。

五、安全机制(重要)

PyAutoGUI自带防失控保护:

pyautogui.FAILSAFE = True

六、学习总结

1. PyAutoGUI 适合办公自动化、固定流程重复操作,比如批量填表、固定文档录入;

2. 局限性:依赖屏幕分辨率、界面位置变化就会识别失败,不适合复杂动态页面;

⚠️ 重要提醒:
本内容仅用于编程学习、办公效率提升;严禁将脚本用于游戏自动操作、批量刷量、恶意骚扰等违反平台规则的行为;任何自动化工具都需要遵守软件、平台用户协议。

七、拓展学习方向

如果有更复杂的自动化需求,可以继续学习: