logo

Python 자동 클릭커를 만드는 방법

오토클리커란 무엇인가요?

Auto clicker는 일부 코드 스크립트가 작성된 프로그램이며, 코드를 기반으로 일부 사용자가 키를 누르도록 정의하면 마우스가 자동으로 클릭됩니다. Python에서는 pip 명령으로 설치할 수 있는 pynput 모듈을 사용하여 자동 클릭커 프로젝트를 만들 수 있습니다.

자동 클릭기 코드는 다음 단계로 나눌 수 있습니다.

1. 필수 모듈 가져오기

시간 및 스레드 모듈을 가져오고 pynput의 마우스 하위 모듈에서 버튼, 컨트롤러 모듈을 가져옵니다. 같은 방식으로 pynput의 키보드 하위 모듈에서 Listener 및 Keycode 모듈을 가져옵니다.

예:

복합 기본 키
 import time import threading from pynput.mouse import Button, Controller from pynput.keyboard import Listener, KeyCode 

2. 변수 초기화

이번 섹션에서는 프로그램 실행에 매우 유용한 4개의 변수를 초기화하겠습니다.

    버튼방향: 이 변수는 클릭하려는 버튼 쪽(오른쪽, 왼쪽 또는 가운데)을 결정합니다.지연 시간: 이 변수는 두 번의 연속 클릭 사이의 시간을 정의합니다.시작정지버튼: 이 변수는 자동 클릭커 프로젝트를 시작하고 중지하는 데 사용할 키 또는 버튼을 정의합니다.종료버튼: 이 변수는 프로그램을 종료하는 데 사용되는 버튼을 정의합니다.

예:

 buttonDirection= Button.right delayTime= 0.001 startStopButton = KeyCode(char='s') terminateButton= KeyCode(char='x') 

3. 클래스 생성

이번 절에서는 마우스 클릭이 실행되었는지 여부를 확인하기 위해 스레드 클래스를 확장하는 클래스를 생성해 보겠습니다.

예:

 class ClickTheMouse(threading.Thread): def __init__(self, delayTime, buttonDirection): super(ClickTheMouse, self).__init__() self.delayTime = delayTime self.buttonDirection = buttonDirection self.running = False self.program_running = True 

4. 이 섹션에서는 외부적으로 스레드를 사용하여 마우스 클릭을 제어하는 ​​몇 가지 방법을 정의합니다.

문자열 함수 자바

예:

 def startMouseClick(self): self.running = True def stopMouseClick(self): self.running = False def exitScript(self): self.stopMouseClick() self.program_running = False 

5. 이 섹션에서는 두 개의 중첩 루프를 사용하여 전체 코드를 실행하는 메서드를 정의했습니다. 변수가 false로 설정되면 이러한 루프가 종료됩니다. 그렇지 않으면 프로그램을 계속 진행할 것입니다.

예:

 def run(self): while self.program_running: while self.running: mouse.click(self.buttonDirection) time.sleep(self.delayTime) time.sleep(0.1) 

6. 이 섹션에서는 마우스 클릭을 위한 스레드를 생성한 다음 스레드를 시작하겠습니다.

노트북 삽입 키

예:

 mouse = Controller() clickThread = ClickTheMouse(delayTime, buttonDirection) clickThread.start() 

7. 키보드 클릭 기능을 정의하는 마지막 섹션입니다. 아무 키나 누르면 이 함수의 인수로 전달되고 다양한 경우를 확인합니다.

startStop 키이면 프로그램이 시작되거나 중지됩니다. 종료 키이면 프로그램이 종료됩니다.

예:

 def on_press(key): if key == startStopButton: if clickThread.running: clickThread.stopMouseclick() else: clickThread.startMouseclick() elif key == terminateButton: clickThread.exitScript() listener.stop() with Listener(on_press=on_press) as listener: listener.join() 

완전한 예:

 import time import threading from pynput.mouse import Button, Controller from pynput.keyboard import Listener, KeyCode delayTime = 0.001 buttonDirection = Button.right startStopButton = KeyCode(char='s') terminateButton = KeyCode(char='x') class ClickTheMouse(threading.Thread): def __init__(self, delayTime, buttonDirection): super(ClickTheMouse, self).__init__() self.delayTime = delayTime self.buttonDirection = buttonDirection self.running = False self.program_running = True def startMouseclick(self): self.running = True def stopMouseClick(self): self.running = False def exitScript(self): self.stopMouseClick() self.program_running = False def run(self): while self.program_running: while self.running: mouse.click(self.buttonDirection) time.sleep(self.delayTime) time.sleep(0.1) mouse = Controller() clickThread = ClickTheMouse(delayTime, buttonDirection) clickThread.start() def on_press(key): if key == startStopButton: if clickThread.running: clickThread.stopMouseClick() else: clickThread.startMouseclick() elif key == terminateButton: clickThread.exitScript() listener.stop() with Listener(on_press=on_press) as listener: listener.join() 

설명:

위 코드에서는 시작 및 중지 키를 's'로, 종료 키를 'x'로 초기화했습니다. Python 스크립트를 실행하고 's'를 입력하면 자동으로 화면에서 마우스를 움직일 때마다 0.001초 또는 1밀리초의 지연을 두고 마우스 오른쪽 버튼이 클릭됩니다.

자바의 소수 프로그램

섹션 2에서 마우스 클릭 기능을 변경할 수 있습니다. 여기서 Button.left 또는 Button.center 속성을 사용하여 마우스 클릭 방향을 변경할 수 있습니다.

마우스 클릭을 쉽게 보려면 지연 시간을 더 높게 변경하여 실제 클릭을 확인할 수 있습니다. 이 코드에서는 화면에서 마우스 커서를 움직이지 않으면 클릭이 되지 않습니다. 화면에서 커서를 움직일 때만 작동합니다.