【问题标题】:PyAutoGui and loopsPyAutoGui 和循环
【发布时间】:2020-11-18 15:45:55
【问题描述】:

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

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

睡眠(4) coords = pyautogui.locateCenterOnScreen('calc.png', confidence=0.6)

如果坐标为无: print("图片未找到")

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

coords1 = pyautogui.locateOnScreen('calc1.png') 如果 coords1 为无: print('屏幕上没有找到图片!')

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

coords2 = pyautogui.locateOnScreen('calc2.png') 如果 coords2 为无: print('屏幕上没有找到图片!')

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

coords3 = pyautogui.locateOnScreen('calc4.png', confidence=0.6) 如果 coords3 为无: print('屏幕上没有找到图片!')

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

【问题讨论】:

  • 你在想什么类型的循环?有没有想退出循环的情况?
  • 请添加更多细节你想要实现什么,“循环或我的整体保持我的代码自动运行的东西”没有太多的信息价值
  • 你想重复哪些部分?您希望循环何时停止?您在尝试实现循环时遇到了哪些问题?你认为增加睡眠会有帮助吗?

标签: python pyautogui


【解决方案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)单击它们。您所要做的就是设置图像的数量,NUMBER_OF_IMAGES

注意事项:

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

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

【讨论】:

  • 是的,这是一个很好的代码,但它只会检查这四个图像我设置了 10 它将启动并运行 10 次。停止的唯一方法是手动停止或等到它运行完 10 次希望你能理解我的问题。
  • @MazharJr。 : 对不起,我不明白。您是否希望能够在运行时选择图像数量,或者在每次搜索calc*.png 之间暂停,或者能够在用户想要停止搜索calc*.png 时停止搜索?你能澄清一下你的观点吗?
猜你喜欢
  • 2020-12-09
  • 1970-01-01
  • 2019-05-05
  • 1970-01-01
  • 2020-10-22
  • 2022-01-08
  • 2021-04-08
  • 2021-08-19
  • 1970-01-01
相关资源
最近更新 更多