◆ 준비사항
pyautogui 설치 : pip install pyautogui
참고사항
코드를 작성하고 실행을 했을 때 아래와 같은 에러가 출력될 수도 있습니다.
locateonscreen 함수를 사용할 때 발생하는 것 같습니다.
the pillow package is required to use this function.
이 경우 아래와 같이 pillow 패키지를 설치해주시면 됩니다.
pip install pillow
◆ 이미지 찾기
먼저 찾을 이미지를 만들어서 파이썬 파일과 같은 폴더에 저장을 해줍니다.
계산기를 샘플로 하겠습니다.
위 그림에서 테두리는 이미지 크기를 보여드리기 위해 일부러 두른 것입니다.
실재 이미지에는 테두리가 없습니다.
위 이미지를 [ 9.png ]로 저장합니다.
이제 코드를 작성합니다.
import pyautogui
btn_find = pyautogui.locateOnScreen("9.png")
print(btn_find)
위 코드의 결과는 다음과 같이 나타납니다.
Box(left=1871, top=631, width=24, height=23)
물론 계산기 프로그램의 위치에 따라 위 값은 바꿀 수 있습니다.
주의할 점은 계산기 프로그램이 화면에 보여야 한다는 것입니다.
다른 프로그램의 뒤에 있어 안보이거나 하면 [ None ]이 출력됩니다.
간혹 잘 찾아지지 않고 계산기가 화면에 띄워져 있는 경우에도
[ None ]이 출력되는 경우가 있습니다.
이럴 경우 아래와 같이 openve-python을 설치해 보세요
pip install opencv-python
◆ 찾은 이미지 클릭하기
btn_find 에는 이미지의 영역이 들어가 있습니다.
클릭하기 위해서는 특정 좌표를 얻어야 합니다.
클릭하기 위한 좌표로 해당 이미지의 가운데 좌표를 얻어보겠습니다.
center = pyautogui.center(btn_find)
위와 같이 작성하고 print(center)를 해보면 이미지의 가운데 좌표값이 보여집니다.
다음은 해당 이미지를 클릭해보겠습니다.
pyautogui.click(center)
이제 계산기의 [ 9 ]를 누르는 코드가 모두 작성되었습니다.
다음은 전체 코드입니다.
import pyautogui
btn_find = pyautogui.locateOnScreen("9.png")
center = pyautogui.center(btn_find)
pyautogui.click(center)
실행하면 다음과 같이 자동으로 클릭한 것을 보실 수 있습니다.
◆ 참고사항
pyautogui.locateOnScreen() 함수는 주 모니터에서만 작동을 합니다.
듀얼모니터를 사용하실 경우
다른 방법을 사용해야합니다.
여기를 방문하시면 더 많은 파이썬 관련 자료를 확인할 수 있습니다.
'파이썬(Python)' 카테고리의 다른 글
[ 크롤링-Selenium ] 웹 크롤링 파이썬 셀레니움 webdriver 자동 설치(Python selenium webdriver auto-install) (0) | 2022.10.11 |
---|---|
[ pyautogui ] 파이썬 마우스 이동하기, 클릭하기(pyautogui mouse move, click) (1) | 2022.10.04 |
[ Tkinter ] 파이썬에서 파일 선택창 열기(Python filedialog) (0) | 2022.09.28 |
[ Basic ] 파이썬 리스트 데이터타입, 파이썬 리스트 복사하기 (0) | 2022.09.20 |
[ Basic ] 파이썬 리스트(Python List) (0) | 2022.09.16 |