提问者:小点点

PyAutoGui和循环


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

从pyclicker导入pyautogui导入数学导入时间导入随机导入OS导入sys从时间导入睡眠hc=HumClicker()pyautogui.FAILSAFE=真

睡眠(4)协和=pyautogui.locate中心屏幕('calc.png',置信度=0.6)

如果coords为None:打印(“未找到图像”)

其他:hc。移动((坐标),2)hc。单击()

coords1=pyautogui.locateOnScreen('calc1.png'),如果coords1为无:打印('屏幕上找不到图像!')

其他:hc。移动((坐标1),2)hc。单击()

coords2=pyautogui。如果coords2为None,则在屏幕上定位('calc2.png'):打印('Image not found on the screen!')

其他:hc.move((coords2),2)hc.click()

coords3=pyautogui.locateOnScreen('calc4.png',置信度=0.6),如果coords3为无:打印('屏幕上找不到图像!')

其他:hc.move((coords3),0.5)hc.click()


共1个答案

匿名用户

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)单击它们。您只需设置图像的数量,图像的数量

笔记:

  1. 置信度为0.6

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