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

如何让pyautogui.click()持续重试直到目标图片出现后再运行后续代码

解决方案

你可以通过pyautogui.locateOnScreen()搭配超时循环的方式实现动态等待,直到目标图片出现后再执行点击操作,无需固定等待20秒,优化方案如下:

首先导入所需依赖:

import pyautogui
import time

优化后的代码示例:

# 点击第一张图触发后续页面加载
pyautogui.click('AutorizarOnline.png')

# 配置最大等待时长,设置25秒比你最长需要的20秒多留余量,可按需调整
max_wait = 25
start_time = time.time()
confirm_btn = None

# 循环检测目标图片是否出现
while time.time() - start_time < max_wait:
    # confidence为识别置信度,允许小范围的色差、尺寸偏差,避免系统渲染差异导致识别失败
    confirm_btn = pyautogui.locateOnScreen('Confirmar.png', confidence=0.8)
    if confirm_btn is not None:
        # 找到目标图片后点击,跳出循环执行后续代码
        pyautogui.click(confirm_btn)
        break
    # 每次检测间隔0.5秒,降低CPU占用,可按需调整间隔时长
    time.sleep(0.5)
else:
    # 超过最大等待时间未找到目标时的异常提示,可按需修改逻辑
    raise Exception("等待超时,未找到Confirmar.png对应的确认按钮")

补充说明

如果使用confidence参数时报错,需要先安装opencv依赖:直接在Visual Studio Code的终端执行pip install opencv-python即可。

内容的提问来源于stack exchange,提问作者Carlos Samuel

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 14:06:07