공부/Python

pyautogui 마우스 및 키보드 조작

래울 2021. 11. 2. 16:23

pip install pyautogui

키보드나 마우스입력에 자동화가 필요할 때 사용한다.

* 한글 지원이 안된다고한다.

#한글지원이 안되므로, pyperclip으로 클립보드에 복사하고 붙여넣는 방식으로 한글사용가능하다.
import pyperclip
pyperclip.copy("안녕하세요") # 클립보드에 텍스트를 복사합니다.
pyautogui.hotkey('ctrl','v')

 

import pyautogui

# 마우스의 현재 좌표 얻기
position = pyautogui.position()

# 화면 전체 크기 확인하기, ex) 1600*900
print(pyautogui.size())

# x, y 좌표
print(position.x, position.y)

# 마우스 이동, 절대 값, 시간은 생략가능 (x 좌표, y 좌표, 2초간)
pyautogui.moveTo(500, 300, 2)  

# 현재 위치에서 마우스 이동
pyautogui.moveRel(200, 300, 2)

# 마우스 클릭
pyautogui.click()

# 2초 간격으로 2번 클릭
pyautogui.click(clicks= 2, interval=2)

# 더블 클릭
pyautogui.doubleClick()

# 오른쪽 클릭
pyautogui.click(button='right')

# 스크롤하기 
pyautogui.scroll(10)

# 드래그하기
pyautogui.drag(0, 300, 1, button='left')

 

pyautogui.write('abc', interval=0.1) # 각 문자를 해당초마다 쓰기

#ctrl이나 shift, enter와 같이 비문자 키는 press를 이용해 쓸수있다.
pyautogui.press('shift') # shift 키를 누릅니다.

pyautogui.keyDown('ctrl') #해당 키를 누른상태를 유지함
pyautogui.keyUp('ctrl') #해당 키를 뗌

# 여러키를 차례로 입력가능
pyautogui.press(['left', 'left', 'left'])
pyautogui.press('left', presses=3) # 왼쪽 방향키를 세번 입력합니다. 
pyautogui.press('enter', presses=3, interval=3) # enter 키를 3초에 한번씩 세번 입력합니다. 

pyautogui.hotkey('ctrl', 'c') # ctrl + c (여러키 동시 입력)