изображение исключения не найдено - PullRequest
0 голосов
/ 10 мая 2019

Я создаю сценарий, чтобы идентифицировать изображение и выполнять некоторые действия, в основном, когда я нахожу изображение как действие, когда я не могу найти другое.но когда изображение не найдено, сам pyautogui уже возвращает ошибку и закрывает функцию.возвращая следующую ошибку: ImageNotFoundExeption ('Не удалось найти изображение ....') Мне нужно, чтобы оно работало, если еще

print('Press Ctrl-C to quit.')
try:
    while True:

        def locate_img(img):
            locate = pyautogui.locateOnScreen(img)

            if locate:
                X,Y = pyautogui.center(locate)                              
                pyautogui.moveTo(X,Y, 0.2)

            else:
                X,Y = pyautogui.center(locate)                              
                pyautogui.moveTo(X,Y, 0.2)  


        locate_img(find)

except KeyboardInterrupt:
    print('\nDone.')

, когда изображение не найдено, уже возвращает прямую ошибку в locate,ни даже не идет к остальному

Ответы [ 2 ]

0 голосов
/ 10 мая 2019

Может быть, вы хотели бы иметь фактическую часть, которая выдает ошибку при попытке, кроме блока, а не целую вещь.

while True:

    def locate_img(img):

        try:
             locate = pyautogui.locateOnScreen(img)
        except KeyboardInterrupt:
             locate = None

        if locate:
            X,Y = pyautogui.center(locate)                              
            pyautogui.moveTo(X,Y, 0.2)

        else:
            X,Y = pyautogui.center(locate)                              
            pyautogui.moveTo(X,Y, 0.2)  


    locate_img(find)
0 голосов
/ 10 мая 2019

Вы можете использовать многие, кроме случаев, когда это требуется для egx:

except KeyboardInterrupt:
    print('Done)
except Exception as e:
    print(e)

Исключение действует как подстановочный знак

...