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

Pyautogui识别图片后持续点击问题:如何实现仅单次点击?

修改方案

原代码的问题在于循环会持续执行,只要没按q就会不断尝试点击(哪怕没找到图片也会触发点击,还会重复点击已找到的图片)。要实现找到图片后仅点击一次,可按以下方式修改:

修改后的代码

import pyautogui
import time
import keyboard

time.sleep(2)

# 标记是否已完成点击
clicked = False

while keyboard.is_pressed('q') == False and not clicked:
    eventicon = pyautogui.locateOnScreen("SummerEventBot\eventicon.png")
    # 只有成功定位到图片时才执行点击
    if eventicon:
        pyautogui.click(eventicon)
        clicked = True  # 标记为已点击,退出循环
    time.sleep(0.5)  # 降低循环频率,减少资源占用

关键改动说明

  • 新增clicked变量:用来记录是否已经完成点击,避免重复执行操作
  • 循环条件新增not clicked:只要完成点击,循环就会自动终止
  • 增加if eventicon:判断:确保只有找到图片时才调用点击,避免找不到图片时触发错误
  • 加入time.sleep(0.5):减少循环执行的频率,降低CPU资源消耗
  • 移除了原代码中未使用的库(queue、numpy、random、win32api等),精简代码结构

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 07:09:12