You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PyAutoGUI的LocateOnScreen()按1到5顺序点击随机位置图片

PyAutoGUI按顺序识别并点击指定图片实现方案

前置准备

  • 提前截取1~5号目标参考图,分别命名为1.png、2.png...5.png,保存到和脚本同目录,截图要尽量精准,仅保留你要识别的目标内容,减少无关像素干扰
  • 安装依赖库:pip install pyautogui pillow opencv-python,其中opencv-python用于支持识别精度参数,可选但推荐安装

实现代码

import pyautogui
import time

# 严格按1到5的顺序存入图片路径,保证执行顺序
target_img_list = [
    "1.png",
    "2.png",
    "3.png",
    "4.png",
    "5.png"
]

for img_index, img_path in enumerate(target_img_list, start=1):
    # 识别屏幕上的目标图片
    # confidence为匹配精度,取值0~1,0.8表示相似度80%以上即匹配成功
    # grayscale开启灰度识别,可提升识别速度
    img_location = pyautogui.locateOnScreen(img_path, confidence=0.8, grayscale=True)
    
    if img_location:
        # 提取图片中心点坐标
        click_point = pyautogui.center(img_location)
        # 点击目标位置
        pyautogui.click(click_point)
        # 点击后短暂等待,避免操作过快导致后续识别异常
        time.sleep(0.5)
    else:
        print(f"未找到{img_index}号图片,流程终止")
        # 可根据需求替换为重试逻辑,比如循环查询最多等待10秒
        break

注意事项

  • 高分屏设备需要注意系统缩放比例,pyautogui默认按100%缩放识别,如果系统开了125%/150%缩放,要么将缩放调整为100%,要么在对应缩放比例下重新截取参考图
  • 识别精度参数confidence不要设置过低,否则会匹配到错误位置,建议根据实际场景在0.7~0.9区间调整
  • 如果目标图片仅会出现在屏幕固定区域,可以添加region参数指定识别范围,比如region=(0,0,1920,1080),可大幅提升识别速度

内容的提问来源于stack exchange,提问作者Casual Gamer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 07:54:03