파이썬 - pyautogui 모듈 힐끗보기

Image reference: Copyright Greg Hughes on Flickr

마우스, 키보드 오토메이션

import pyautogui
# 모니터 해상도 가져오기
width, height = pyautogui.size()
print('width={0}, height={1}'.format(width, height))
# 마우스 위치 가져오기
x, y = pyautogui.position()
print('x={0}, y={1}'.format(x, y))
# 안전모드 설정하기, 잘못되었을 경우 탈출구
pyautogui.PAUSE = 1
pyautogui.FAILSAFE = True
# 마우스 이동하기
width, height = pyautogui.size()
pyautogui.moveTo(width/2, height/2)
# 상대좌표로 마우스 이동하기
pyautogui.moveRel(None, 20)
# 마우스 클릭하기
pyautogui.click()

# 마우스로 특정좌표 클릭하기
pyautogui.click(x=28, y=1100)

# 마우스 오른쪽 클릭하기
pyautogui.click(button='right')

# 또는
pyautogui.rightClick()
# 마우스로 더블 클릭하기
pyautogui.click(clicks=2)

# 또는
pyautogui.doubleClick()

# 시간 간격(인터벌)을 가지고 클릭하기
pyautogui.click(clicks=2, interval=1.5)
# 마우스 버튼다운
pyautogui.mouseDown()

# 마우스 다운 업
pyautogui.mouseUp()
# 마우스 드래그 - 방법 1

# 마우스 버튼다운
pyautogui.mouseDown(x=0, y=0)

# 마우스 다운 업
pyautogui.mouseUp(x=100, y=100)
# 마우스 드래그 - 방법 2

# 마우스 현재 위치에서 x=100, y=100로 드래그
pyautogui.dragTo(x=100, y=100)

# 중간 지연 시간을 가지고 마우스 현재 위치에서 x=100, y=100로 드래그
pyautogui.dragTo(x=100, y=100, duration=2)
# 상대 좌표를 가지고 마우스 드래그
pyautogui.dragRel(-100, -100, duration=2)
# 마우스 스크롤 하기

# 위로
pyautogui.scroll(-100)

# 아래로
pyautogui.scroll(100)

# 특정 위치로 이동한 후에 스크롤 하기
pyautogui.scroll(100, x=100, y=100)
# 특정 문자열 입력하기
pyautogui.typewrite('Hello!')

# 특정 문자열 안정적으로 입력하기
time.sleep(5)
pyautogui.typewrite('Hello!', interval=0.25)

# 한글 입력은 안 된다고 함
# 클립보드에 내용을 저장하고 복붙하는 기능을 생각해 볼 수 있겠음
pyautogui.typewrite('한글은 안 된다네!')
# 문자열 입력하고 엔터 입력하기
pyautogui.typewirte('Hello!')
pyautogui.press('enter')
# 여러 키 연속으로 입력하기
pyautogui.press(['backspace', 'enter'])
# 조합 키 입력하기 (쉬프트 누르고 왼쪽으로 한 칸 선택한 후, 쉬프트 떼기)
pyautogui.typewrite('Hello')
pyautogui.keyDown('shift')
pyautogui.press('left')
pyautogui.keyUp('shift')
# 복사 붙이기

# Ctrl + C
pyautogui.hotkey('ctrl', 'c')

# Ctrl + V
pyautogui.hotkey('ctrl', 'v')