<Pyautogui.locateOnScreen> Error

XTHK·2025년 5월 14일

Anaysis

목록 보기
16/23

Pyautogui.locateOnScreen

  • 이미지를 인식하여 화면 내 위치를 인식
  • confidence : 제시된 사진을 얼마나 정확하게 인지할 것인가
    • 얼마나 정확히 참고할 것인가
# 기본 사용코드
a = pyautogui.locateOnScreen("사진 위치", confidence=0.5)

사진을 인식하지 못하는 에러 발생 (ImageNotFoundException)

[해결 시도]

1. confidence 낮추기

  • 인식 정확도를 낮추어 예측의 폭을 넓히고자 하였음

2. PyAutoGUI와 OpenCV 환경 문제를 고려한 점검

!pip install opencv-python --upgrade
!pip install pyscreeze --upgrade

3. 새로운 이미지로 시도


[원인 파악]

  • 버전 0.9.41부터 locate 함수가 제공된 이미지를 찾을 수 없는 경우 None을 반환하는 대신 ImageNotFoundException을 발생

[해결]

  1. locateOnScreen 기능이 가능해지도록 하는 방법은 모루겟삼
  2. try - except 문으로 예외처리 하는 방식
  • 예외처리 후, 다른 방식(ex) requests에서 find_element 또는 selenium에서 find_all(XPATH ... )으로 처리
# 예외처리
while True:
  try:
    img = pyautogui.locateOnScreen('Day17/blog0.png', confidence=0.8, grayscale = True)
    print('Found it!')
    break
  except:
    print('Not Found')
    break
profile
Analyse the world

0개의 댓글