인프런 커뮤니티 질문&답변
메모장 file 변수 오류
작성
·
752
0
이미지 처리-대기 수강중 오류가 있어서 질문드립니다.
메모장에서 파일메뉴 이미지 찾아서 하는 건데 if에서도 while에서도 해당이미지를 찾지 못할때 발견 실패가 아닌 아래처럼 에러가 납니다. 인터넷에서 from pyscreeze import ImageNotFoundException
을 추가해서 실행해보라고 해서 했는데도 실행이 안됩니다.ㅠㅠ
무엇이 문제일까요..?
file_menu_notepad = pyautogui.locateOnScreen("file_menu_notepad.png")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Python312\Lib\site-packages\pyautogui\__init__.py", line 174, in wrapper
raise ImageNotFoundException # Raise PyAutoGUI's ImageNotFoundException.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pyautogui.ImageNotFoundException
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
지혜님, 질문 주셔서 감사합니다.
해당 문제는 pyautogui.locateOnScreen 함수가 "file_menu_notepad.png" 이미지를 화면에서 찾지 못할 때 발생합니다. from pyscreeze import ImageNotFoundException 을 추가하셨지만, 여전히 실행이 안 되는 이유는 pyautogui가 내부적으로 pyscreeze의 ImageNotFoundException을 사용하여 이미지를 찾지 못했을 때 오류를 발생시키기 때문입니다.
문제 해결을 위해 몇 가지를 시도해볼 수 있습니다:
이미지 파일 경로가 정확한지 확인해보세요. 현재 작업 디렉토리와 이미지 파일이 같은 위치에 있는지, 또는 이미지 파일 경로를 절대 경로로 제공해 보세요.
pyautogui.locateOnScreen함수에confidence인자 값을 추가하여 이미지 매칭 정확도를 조정해보세요. 예를 들어,file_menu_notepad = pyautogui.locateOnScreen("file_menu_notepad.png", confidence=0.8)과 같이 설정할 수 있습니다. 단, 이 기능을 사용하기 위해서는opencv-python라이브러리가 설치되어 있어야 합니다.화면 해상도나 여러 모니터 사용 시 이미지 인식에 문제가 발생할 수 있으니, 대상 이미지의 화면 해상도에 맞는 이미지 파일을 사용하고 있는지 확인해보세요.
try와except블록을 사용하여ImageNotFoundException을 처리하면, 이 오류가 발생해도 프로그램이 중단되지 않고 적절한 예외 처리를 할 수 있습니다. 예를 들어:
try:
file_menu_notepad = pyautogui.locateOnScreen("file_menu_notepad.png")
except ImageNotFoundException:
print("파일 메뉴 이미지를 찾을 수 없습니다.")
위의 방법들로 문제가 해결되지 않는다면, 사용하고 있는 환경(운영체제, Python 및 라이브러리 버전 등)에 대한 추가 정보와 함께 다시 질문해주세요.




