Pyauto gui: автокликер с распознаванием изображений. Как заставить выполненную мной функцию запускаться только при распознавании изображения? - PullRequest
0 голосов
/ 13 апреля 2020

Я новичок в python, и я знаю, что мой код действительно грязный. Мне нужна помощь, я хотел, чтобы выполняемая ниже функция запускалась только в том случае, если установленное мной изображение распознается mc_ok_button.png, но это немного сбивает с толку, потому что я хочу, чтобы оно соединилось с уже созданным мной oop. Если бы я поместил код в l oop, разве он не запустил бы остальные функции под ним?

Моя функция распознавания изображений:

import pyautogui as pg
import pydirectinput as pd
import time

ax,ay = pg.locateCenterOnScreen('mc_ok_button.png',confidence=.6)

def function_when_restart():
    print(ax,ay)
    pd.click(ax,ay)
    print('Waiting to return back to the server...')
    time.sleep(8)
    pd.moveTo(892,531)
    print('finding server...')
    pd.click()
    print('connecting to the server...')

function_when_restart()

Тогда я хочу * Функция 1007 * запускается только в том случае, если изображение mc_ok_button.png распознано, и project() и fix_tool() останавливаются во время работы function_when_restart(), затем возвращаются к make project() и fix_tool():

from time import monotonic
from time import monotonic, sleep

start = monotonic()
        while monotonic() - start < (60) : #Run for exactly 1 minute
            # I want the image recognition to always run and if the image pops up I want 
            project()
            sleep(5)
            fix_tool()

1 Ответ

0 голосов
/ 01 мая 2020

ниже может помочь?

while True:
     image = pyautogui.locateOnScreen('image.png')
     if image != None:
         project()
         sleep(5)
         fix_tool()
     else:
        pass
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...