Č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.
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.