为什么 pyautogui 说“ImageNotFoundException”而不是“那里什么都没有”?

问题描述 投票:0回答:1

尝试制作图像识别程序。代码:

from pyautogui import *
import pyautogui
import time
import keyboard
import random
import win32api, win32con

while 1:
    if pyautogui.locateOnScreen('Dassault Falcon 7X.png', confidence=0.8,minSearchTime=5) != None:
        print ("I can see it!")
        time.sleep(0.5)
    else:
        print ("Nope nothing there")

出于某种原因,它总是给我红色的 imagenotfoundException,而不是当它找不到任何东西时我想要它说的内容,“那里什么也没有。”

python pyautogui
1个回答
0
投票

来自 pyautogui 文档:

注意:从版本 0.9.41 开始,如果定位函数找不到提供的图像,它们将引发 ImageNotFoundException 而不是返回 None。

您的程序假定 0.9.41 之前的行为。要将其更新为最新版本,请将 if-else 块替换为 try- except:

from pyautogui import *
import pyautogui
import time
import keyboard
import random
import win32api, win32con

while 1:
    try:
        pyautogui.locateOnScreen('Dassault Falcon 7X.png')
        print ("I can see it!")
        time.sleep(0.5)
    except ImageNotFoundException:
        print ("Nope nothing there")
© www.soinside.com 2019 - 2024. All rights reserved.