logo

Ako vytvoriť automatický kliker v Pythone

Čo je automatický kliker?

Auto clicker je program, v ktorom je napísaný nejaký kódový skript a na základe kódu, ak niektorý používateľ zadefinuje kláves, stlačí sa, potom sa automaticky klikne myšou. V Pythone môžeme vytvoriť projekt automatického kliknutia pomocou modulu pynput, ktorý možno nainštalovať príkazom pip.

Auto clicker kód môžeme rozdeliť do nasledujúcich krokov:

1. Import požadovaných modulov

Naimportujeme modul času a vlákna a naimportujeme modul Button, Controller zo submodulu myši pynput. Rovnakým spôsobom importujeme moduly Listener a Keycode zo submodulu klávesnice pynput.

Príklad:

c# vzorový kód
 import time import threading from pynput.mouse import Button, Controller from pynput.keyboard import Listener, KeyCode 

2. Inicializácia premenných

V tejto časti budeme inicializovať štyri premenné, ktoré sú veľmi užitočné pre vykonávanie programu.

    tlačidloSmer: Táto premenná rozhodne, na ktorú stranu tlačidla chceme kliknúť (pravú, ľavú alebo strednú).delayTime: Táto premenná definuje čas medzi dvoma po sebe nasledujúcimi kliknutiami.tlačidlo štartStop: Táto premenná definuje, ktorý kláves alebo tlačidlo sa použije na spustenie a zastavenie projektu automatického kliknutia.ukončiťTlačidlo: Táto premenná definuje tlačidlo, ktoré sa použije na ukončenie programu.

Príklad:

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

3. Vytvorenie triedy

V tejto časti vytvoríme triedu, ktorá rozšíri triedu vlákna, aby skontrolovala, či bolo kliknutie myšou vykonané alebo nie.

Príklad:

ako nájsť skryté aplikácie v systéme Android
 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. V tejto časti definujeme niektoré metódy na ovládanie kliknutí myšou pomocou vlákien externe.

Príklad:

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

5. V tejto časti sme definovali metódu, ktorá vykoná úplný kód pomocou dvoch vnorených slučiek. Tieto cykly budú ukončené, keď sú premenné nastavené na hodnotu false. V opačnom prípade budú pokračovať v programe.

Príklad:

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

6. V tejto časti vytvoríme vlákno na kliknutie myšou a potom vlákno začneme.

Príklad:

koľko miest je v Spojených štátoch amerických
 mouse = Controller() clickThread = ClickTheMouse(delayTime, buttonDirection) clickThread.start() 

7. Je to posledná sekcia, kde definujeme funkciu pre klikanie na klávesnici. Ak stlačíte ľubovoľnú klávesu, prejde ako argument v tejto funkcii a kontroluje sa s rôznymi prípadmi.

Ak je to tlačidlo startStop, program sa spustí alebo zastaví. Ak je to ukončovací kľúč, program sa ukončí.

ipconfig pre ubuntu

Príklad:

 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() 

Úplný príklad:

 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() 

Vysvetlenie:

Vo vyššie uvedenom kóde sme inicializovali klávesy štart a stop ako „s“ a kláves ukončenia ako „x“. Keď spustíme python skript a ak zadáme 's', tak automaticky, kedykoľvek pohneme myšou po obrazovke, klikne sa naň pravým tlačidlom myši s oneskorením 0,001 sekundy alebo jednej milisekunda.

Funkčnosť kliknutia myšou môžeme zmeniť v časti 2, kde môžeme použiť atribút Button.left alebo Button.center na zmenu smeru kliknutia myšou.

Ak chceme ľahko vidieť kliknutie myšou, môžeme zmeniť delayTime na vyšší, aby sme videli skutočné kliknutie. V tomto kóde, keď nepohneme kurzorom myši po obrazovke, potom neklikne. Fungovať bude iba vtedy, keď pohneme kurzorom po obrazovke.