본문 바로가기
ETC/Python

[Python] 네이비즘 티케팅 연습 매크로를 만들어보자 1탄

by Guardy 2020. 12. 7.
728x90

네이비즘 티케팅 연습 사이트 매크로를 만들어보도록 하겠습니다.
티케팅을 연습하기 위한 기능인데 매크로를 만들면, 무슨 의미가 있을지는 모르겠지만 일단 만들어보도록 하겠습니다.

티케팅 연습 사이트는 다음과 같이 생겼습니다. 포도알을 클릭하면 성공하고, 다른 좌석을 클릭하면 라이프가 깎입니다.
간단하게 보라색 칸을 인식해서 그 위치를 클릭하면 됩니다. 저는 작은 크기의 포도알만 필요하기 때문에 그림판을 이용해서 잘라줍니다.

grape.png

이제 우리는 반복문을 이용해서 포도알 그림이 있는지 계속해서 체크하고 있다면 클릭, 없으면 대기를 하면 되겠습니다.
이용되는 것은 python과 pyautogui 모듈입니다. 다음과 같이 코드를 작성합니다.

import pyautogui
import pydirectinput
import time
print("5초뒤 시작합니다.")
time.sleep(5)
while True:
    try:
        left, top, width, height = pyautogui.locateOnScreen('grape.png', confidence=.50) # 이미지가 있는 위치를 가져옵니다. 
        pyautogui.moveTo(x=left,y=top)
        pydirectinput.click()
        time.sleep(0.01)
    except:
        pass

이렇게 파이썬 경로에 png파일을 놓으면 됩니다.

이제 python을 실행시키기만 하면 됩니다. 주의할 점은 time.sleep을 0.01로 걸어놨기 때문에 Ctrl+c로  프로그램이 잘 안꺼집니다. 반복문을 계속 돌아 X버튼을 눌러야지 꺼집니다..

시연 영상입니다. 아쉽게도 창이바뀌는 타이밍에 포도알들이 무지 많아 클릭을 해버려 하트가 깎여 끝나버립니다.
다음 글에서는 안전하게 포도알들을 어떻게 수집할 수 있는지 조금더 보완해서 프로그램을 완성해보도록 하겠습니다.

728x90