PyAutoGui 和循环

PyAutoGui and loops

我只想重复我下面的整个代码,我设置的值意味着如果我设置 10,那么我的代码运行 10 次而无需征求我的任何许可或输入。停止的唯一方法是等待或手动停止如果有人知道请解决我的问题..要重复的完整代码不是某些行

从 pyclick 导入 HumanClicker 导入pyautogui 导入数学 导入时间 随机导入 进口 os 导入系统 从时间导入睡眠 hc = HumanClicker() pyautogui.FAILSAFE = 真

睡觉(4) 坐标 = pyautogui.locateCenterOnScreen('calc.png', 置信度=0.6)

如果坐标是 None: 打印(“找不到图像”)

其他: hc.move((坐标), 2) hc.click()

坐标 1 = pyautogui.locateOnScreen('calc1.png') 如果坐标 1 是 None: 打印('Image not found on the screen!')

其他: hc.move((坐标1), 2) hc.click()

坐标2 = pyautogui.locateOnScreen('calc2.png') 如果 coords2 是 None: 打印('Image not found on the screen!')

其他: hc.move((坐标2), 2) hc.click()

coords3 = pyautogui.locateOnScreen('calc4.png', 置信度=0.6) 如果 coords3 是 None: 打印('Image not found on the screen!')

其他: hc.move((坐标3), 0.5) hc.click()


from pyclick import HumanClicker
import pyautogui
import math
import time
import random
import os
import sys
from time import sleep
hc = HumanClicker()
pyautogui.FAILSAFE = True

sleep(4)

coords = []
NUMBER_OF_IMAGES = 4 # change this to your needs
for i in range(NUMBER_OF_IMAGES):
    coords[i] = pyautogui.locateOnScreen(
                                         ("calc" if i == 0 else "calc" + str(i))+".png",
                                         confidence = 0.6
                                        )
    if coords[i] is None:
        print("Image not found on the screen!")
    else:
        hc.move((coords[i]), 2)
        hc.click()

这只是循环遍历所有图像,获取并(如果坐标不是 None)单击它们。您所要做的就是设置图像数量,NUMBER_OF_IMAGES

备注:

  1. confidence0.6
  2. mathtimerandomossystime 模块是不必要的。要使用 time.sleep,请使用 pyautogui.sleep(这样做是为了让您不必 import time
  3. sleep(4) 声明似乎没有帮助。

如果这是需要这些模块和 sleep(4) 的更大项目的一部分,您应该保留它们。否则,请尝试从您的 Python 程序中删除不必要的代码。