티스토리 뷰

반응형

아래는 지금부터 만들어 볼 매크로의 내용을 정리해본 사항이다

  • pyautogui 설치
  • 마우스 커서가 움직임이 있는지 감지
  • 마우스 커서를 랜덤으로 이동
  • 마우스 클릭 이벤트

pyautogui 설치

파이썬으로 마우스 이벤트 프로그램을 만드려면 pyautogui가 필요하다

혹시라도 파이썬을 설치 안 했거나 pip 또는 pip3가 설치 안 되어 있다면 아래를 참고하자

 

[Python] MacOs에서 Python 3.x 설치, 환경설정, 버전 변경, pip 설치

 

[Python] MacOs에서 Python 3.x 설치, 환경설정, 버전 변경, pip 설치

macOS에서는 기본적으로 python2 버전이 설치되어 있지만, 실제 개발에선 3버전이 거의 쓰이기 때문에 3버전을 설치하는 것이 필수이다 지금부터 mac에서 Python 3.x 버전을 설치할 것이다 Python3.x 설치

jerryjerryjerry.tistory.com

 

python이 버전 확인후 pyautogui를 설치하자

pip3 install pyautogui

 

 

설치후 pyautogui가 잘 설치되었는지 확인하는 방법이 있다

우선 python을 입력한 뒤 파이썬 명령어 창을 띄어보자

python

>>> import pyautogui

에러가 없이 위 사진처럼 뜬다면 잘 설치된 것이다

 

 

 

잘 안 된다면 삭제하고 다시 설치하자

pip3 uninstall pyautogui

autoMouse 실행

마우스 매크로를 만들때 확인할 사항으로는 아래 코드를 참고할 수 있다

기본값 확인

# 현재 화면 해상도 확인
pyautogui.size()
# 마우스 현재 위치 (x,y)값으로 리턴받음
pyautogui.position()
# 스크린 화면에서 x,y 좌표가 존재하는지 확인, 있으면 true/없으면 false 리턴
pyautogui.onScreen(x,y)

 

마우스 이동

# 마우스 커서를 x, y 좌표로 이동, 이동만 하고 클릭은 하지 않음
pyautogui.moveTo(x, y)

# 500, 500 위치로 0.5초에 걸쳐서(커서이동속도) 마우스 커서 이동
pyautogui.dragTo(500, 500, duration=0.5)

# 마우스 클릭. x 200으로 이동, y 200으로 이동 , 클릭수 10, 이동속도 2, 클릭할 버튼('left' 또는 'right' 지정)
pyautogui.click(x=200, y=200, clicks=10, duration=2, interval=secs_between_clicks, button='left')

pyautogui.rightClick(x=200,  y=200)  #우클릭
pyautogui.middleClick(x=200, y=200)  #스크롤클릭
pyautogui.doubleClick(x=200, y=200)  #더블클릭
pyautogui.tripleClick(x=200, y=200)  #트리플클릭 (3번클릭)

pyautogui.mouseDown(x=200, y=200, button='left')
pyautogui.mouseUp(x=200, y=200, button='left')

 

 

 

파이썬 파일을 생성후 이름을 autoMouse.py 로 저장한 뒤 아래 내용을 입력한다

autoMouse.py

import pyautogui
import time
import random
from datetime import datetime

currentTime = datetime.now()
print('시작 시간 : ', currentTime, ', 현재 위치 : ', pyautogui.position())
while 1:
    recent = pyautogui.position()
    time.sleep(10)
    if(recent == pyautogui.position())  :
        height1 = random.randint(200,900)
        height2 = random.randint(200,900)
        print('현재 위치 : ', (recent))
        pyautogui.click(height1, height2, duration=2)
        print('변경 이동 위치 : ', pyautogui.position())
        time.sleep(5)

 

로직 설명

  1. 루프문 생성후 현재 위치를 기록
  2. 10초간 대기
  3. 10초뒤의 마우스 위치가 10초전의 위치랑 같다면(위치 이동이 없다면)
  4. 랜덤 x, y 좌표 값 생성
  5. 마우스 커서를 2만큼의 속도로 랜덤 x, y 좌표로 이동후 한번 클릭
  6. 5초간 대기 후 1~5 무한 반복

 

autoMouse.py 실행 및 에러

cmd를 켜서 autoMouse.py 파일이 있는 경로로 이동한 뒤 파일을 실행한다

python3 autoMouse.py

 

혹시라도 실행이 안 되면 현재 사용하고 있는 파이썬의 버전을 모두 입력한뒤 실행해보자

python --version
Python 3.10.2

python3.10 autoMouse.py

 

혹시라도 안 된다면 관리자 권한으로 실행해보자

sudo python3 autoMouse.py

 

혹~~시라도 실행이 안 된다면 맥에서 python의 권한을 열어줬는지 확인해보자

[시스템 환경설정] > [보안 및 개인 정보 보호] > 자물쇠 클릭 > Python 권한 체크박스 선택

본인 이 부분을 설정을 안 해줘서.. 파이썬이 실행이 안 되더라..

파이썬 버전 바꿨다 지웠다.. 몇시간을 뻘짓을 했다..

 

 

  • Reference

https://pythondocs.net/pyautogui/pyautogui-%EB%A7%A4%ED%81%AC%EB%A1%9C-%EC%82%AC%EC%9A%A9%EB%B2%95-%EA%B8%B0%EC%B4%88/

반응형
댓글
공지사항