I create a simple script to find image on the desktop ,and type 'I found it ' ,and if I hide the image the script type 'I am unable to found it'.
the problem when I add another action ,which is I want the mouse move to the position of the image. the script works good ,but when I hide the image the mouse still move to the position ,and still type I found it. But normally the code should show me I am unable to found it. the script still working on if instead to move to else.
my code is:
import pyautogui
import time
location = pyautogui.locateOnScreen('image.png', confidence = 0.6)
while 1:
if location:
print("I found it ")
time.sleep(2)
print(pyautogui.moveTo(location))
else:
print("I am unable to found it")
you store pyautogui.locateOnScreen('image.png', confidence = 0.6)
in the variable location
. Then you check the condition (if
/else
). But then you never recheck for pyautogui.locateOnScreen('image.png', confidence = 0.6)
. I am still not sure what you are trying to achieve here, but at least the check needs to go into the while
:
while 1:
location = pyautogui.locateOnScreen('image.png', confidence = 0.6)
if location:
print("I found it ")
time.sleep(2)
print(pyautogui.moveTo(location))
else:
print("I am unable to find it")