티스토리 뷰

개요

pyautogui는 파이썬에서 키보드와 마우스를 컨트롤 할 수 있는 기능을 묶어놓은 라이브러리 입니다.

 

파이썬에서 명령을 내려서 그림판에 아래와 같은 그림을 그려보는 예제를 해보았습니다.

import pyautogui as pg

print(pg.position())
pg.click()

위 코드는 현재 마우스커서의 위치를 출력하고 click을 하는 코드 입니다.

 

import pyautogui, time

pyautogui.getWindowsWithTitle("그림판")[0].activate()
distance = 200
while distance > 0:
    pyautogui.drag(distance, 0, duration=0.5)   # move right
    distance -= 5
    pyautogui.drag(0, distance, duration=0.5)   # move down
    pyautogui.drag(-distance, 0, duration=0.5)  # move left
    distance -= 5
    pyautogui.drag(0, -distance, duration=0.5)  # move up

'그림판' 제목으로 active window 찾아서 활성화 시킨 후 위 그림 그리기

 

 

이미지 위치와 크기, 중간의 좌표 알아내고 클릭하기

import pyautogui, time

i = pyautogui.locateOnScreen('./pga/chrome.png')
print(i)
print(i.left)
print(i.top)
c = pyautogui.center(i)
print(c)
pyautogui.click(c)

결과

Box(left=6, top=303, width=65, height=83)
6
303

Point(x=38, y=344)

 

결과 해설

위 chrome.png는 크롬의 아이콘을 캡춰한 이미지 입니다. window + shift + s 로 영역을 선택해서 스크린샷을 찍은 후 저장 하시면 만들 수 있습니다.

 

해당 이미지를 불러와서 위 코드를 실행하면 좌표가 나옵니다. 크롬 바로가기는 왼쪽에서는 6픽셀만큼, 위에서는 303픽셀만큼 떨어져 있고 가로 길이는 65 세로 길이는 83인 것을 알 수 있습니다.

 

마지막줄의 Point()는 chrome.png가 있는 영역의 가운데 좌표를 알려줍니다.

 

그리고 .click() 함수가 실행되면 저 위치에 가서 클릭을 합니다.

 

 

스크린샷 찍기

import pyautogui as pg

pg.screenshot('chrome2.png', region=(6, 303, 65, 83))

위 코드는 6, 303 좌표에 65*83 크기로 스크린샷을 찍는 코드입니다.

 

 

마우스가 위치한 곳의 스크린샷 찍기

import pyautogui as pg
position = pg.position()
pg.screenshot('chrome3.png', region=(position.x, position.y, 30,30))

위 코드를 응용해 마우스가 위치한 곳의 30*30의 스크린샷을 찍는 코드 입니다.

 

 

 

이 라이브러리를 이용해 tensor등 딥러닝과 연계할 수 있을 것으로 보입니다.

 

 

pyautogui.readthedocs.io/en/latest/

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함