python으로 매크로를 만들어 반응속도 테스트에서 외계인이 되려 합니다.
pyautoGUI
마우스와 키보드 제어하는 라이브러리
pip install pyautogui를 이용하여 설치해야 함
자주쓰는 pyautoGUI 메서드
position = pyautogui.position() # 좌표 객체 얻기
print(pyautogui.size()) # 화면 전체 크기 확인하기
print(position.x) # x, y 좌표
print(position.y)
pyautogui.moveTo(500, 500) # 마우스 이동 (x 좌표, y 좌표)
pyautogui.moveTo(100, 100, 2) # 마우스 이동 (x 좌표, y 좌표 2초간)
pyautogui.click() # 마우스 클릭
pyautogui.click(clicks= 2, interval=2) # 2초 간격으로 2번 클릭
pyautogui.doubleClick() # 더블 클릭
pyautogui.click(button='right') # 오른쪽 클릭
pyautogui.scroll(10) # 스크롤하기
pyautogui.drag(0, 300, 1, button='left') # 드래그하기
write() 함수는 shift나 ctrl 등 특수키를 누룰수 없습니다.
pyautogui.write('hello world!') # 괄호 안의 문자를 타이핑 합니다.
pyautogui.write('hello world!', interval=0.25) # 각 문자를 0.25마다 타이핑합니다.
pyautogui.press('shift') # shift 키를 누릅니다.
pyautogui.keyDown('ctrl') # ctrl 키를 누른 상태를 유지합니다.
pyautogui.keyUp('ctrl') # 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 키를 입력합니다.
Pillow
이미지 분석 및 처리를 도와주는 패키지
pip install pillow를 작성하여 설치해야 함
반응속도 테스트 외계인 되기
import pyautogui
from PIL import ImageGrab
a = 0
while a < 5:
if ImageGrab.grab().getpixel(pyautogui.position()) == (178, 255, 178):
pyautogui.click()
a += 1
pyautogui.position()는 마우스의 좌표를 가져오는 함수이고
getpixel()은 x, y좌표을 매개변수로 받아서 그 위치의 RBG 값을 반환합니다,
마우스가 있는 위치의 RBG값이 초록색 부분 RGB(178, 255, 178)와 비교하여 같으면 클릭하는 작업을 반복합니다.
참고문헌
인프런 강의 - 업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
예제로 배우는 파이썬 프로그래밍 - 파이썬 이미지 처리 (Pillow)
정보의 공유 사회 티스토리 - 파이썬 이미지 처리 pillow(PIL) 설치 및 사용 예제 총정리
'프로그래밍' 카테고리의 다른 글
[서머너즈 워] 룬 생성 계산기 (feat. 파이썬, 귀찮) (0) | 2022.03.09 |
---|---|
python 타자 연습 프로그램 만들기 (0) | 2021.10.23 |