Wie erstelle ich einen Python Auto Clicker?
In diesem Artikel erfahren Sie, wie Sie mit Python einen Auto-Clicker erstellen. Der Code wird von der Tastatur eingegeben, wenn der Benutzer auf die Starttaste klickt, und beendet den automatischen Klick, wenn der Benutzer auf die Exit-Taste klickt. Der automatische Klicker beginnt zu klicken, wo immer der Zeiger auf dem Bildschirm platziert ist. Wir werden hier das Pynput- Modul verwenden.
Was ist Auto Clicker?
Auto-Clicker ist ein Skript, mit dem Sie Maus und Tastatur beliebig oft automatisch steuern können. Die Steuerung erfolgt über benutzerdefinierte Schlüssel. Es funktioniert auf verschiedenen Plattformen wie Windows, Mac und Linux. Der automatische Klick ist im pywin32-Modul vorhanden.
Ansatz:
In diesem Projekt verwenden wir einen plattformübergreifenden Modul- Pynput , um die Maus zu steuern und gleichzeitig die Tastatur zu überwachen, um einen einfachen Auto-Clicker zu erstellen. Um nach Mausereignissen zu suchen, installieren wir das Pynput-Modul (zur Steuerung der Maus) für diese Ausführung. Installieren Sie pynput in cmd.
Hinweis: Wenn Sie nicht wissen, wie Sie das Python-Pip-Paket auf Ihrem System einrichten sollen, klicken Sie hier
Überprüfen Sie, ob das pynput Modul erfolgreich in Ihre Arbeitsumgebung für diese installiert wurde, öffnen IDLE auf dem System, wird cmd oder Python - Shell. Führen Sie den Befehl import pynput aus. Nach dieser Ausführung sollte die Ausgabe null Fehler enthalten, was bedeutet, dass Ihr Modul erfolgreich installiert wurde.
Implementierung:
Fahren wir nun mit dem Code fort, der zum Erstellen eines Auto-Clickers mit Python erforderlich ist . Führen Sie die folgenden Schritte aus, um einen Auto-Clicker zu erstellen:
Schritt 1: Importieren Sie Zeit und Threading und importieren Sie dann Button und Controller aus dem Modul pynput.mouse . Importieren Sie Listener und KeyCode aus pynput.keyboard.
import
time
import
threading
from
pynput.mouse
import
Button, Controller
from
pynput.keyboard
import
Listener, KeyCode
Schritt 2: Erstellen Sie vier Variablen wie unten erwähnt.
- Verzögerung : Verzögerung zwischen jedem Klick (in Sekunden)
- Schaltfläche : Mit der Schaltfläche klicken Sie in die gewünschte Richtung. Button.left | Button.middle | Button.right
- start_stop_key : Der Schlüssel zum Starten und Stoppen des Klicks, während Sie das Programm zum Ausführen des automatischen Klickers ausführen. Es sollte aus einer Schlüsselklasse stammen oder mit KeyCode festgelegt werden .
- exit_key : Der Schlüssel zum Beenden des ausgeführten Auto-Clickers. Dies sollte aus der Schlüsselklasse stammen oder mit KeyCode festgelegt werden .
delay
=
0.001
button
=
Button.right
start_stop_key
=
KeyCode(char
=
'a'
)
stop_key
=
KeyCode(char
=
'b'
)
Schritt 3: Erstellen Sie eine Klasse, die das Threading erweitert. Übergeben Sie Verzögerung und Schaltfläche an die Klasse mit zwei Flags, um zu überprüfen, ob das Programm ausgeführt wird oder nicht.
class
ClickMouse(threading.Thread):
def
__init__(
self
, delay, button):
super
(ClickMouse,
self
).__init__()
self
.delay
=
delay
self
.button
=
button
self
.running
=
False
self
.program_running
=
True
Schritt 4: Fügen Sie Methoden hinzu, um die Threads extern zu steuern.
def
start_clicking(
self
):
self
.running
=
True
def
stop_clicking(
self
):
self
.running
=
False
def
exit(
self
):
self
.stop_clicking()
self
.program_running
=
False
Schritt 5: Beim Starten des Threads wird eine Methode erstellt. Program_running wird in einer Schleife ausgeführt, bis der Wert true ist. Außerdem wird in der vorhandenen Schleife eine weitere Schleife erstellt, in der überprüft wird, ob running auf true gesetzt ist oder nicht. Wenn wir uns in beiden Schleifen befinden, klickt es auf die Set-Schaltfläche und schläft für die eingestellte Verzögerung.
def
run(
self
):
while
self
.program_running:
while
self
.running:
mouse.click(
self
.button)
time.sleep(
self
.delay)
time.sleep(
0.1
)
Schritt 6: Erstellen Sie eine Instanz für den Mauscontroller und erstellen Sie dann einen ClickMouse-Thread . Starten Sie die Instanz, um in die Schleife innerhalb der Ausführungsmethode zu wechseln.
mouse
=
Controller()
click_thread
=
ClickMouse(delay, button)
click_thread.start()
Schritt 7: Erstellen Sie eine Methode on_press, die eine Taste als Argument verwendet und einen Tastatur-Listener einrichtet . Der start_stop_key stimmt bei seiner Ausführung mit einem Startschlüssel (a) überein . Dann muss der Klick beendet werden, wenn das laufende Flag im Thread auf True gesetzt ist. Die Exit-Methode wird in der Methode aufgerufen, wenn die Exit-Taste (b) ausgeführt wird und der Listener gestoppt wird.
def
on_press(key):
if
key
=
=
start_stop_key:
if
click_thread.running:
click_thread.stop_clicking()
else
:
click_thread.start_clicking()
elif
key
=
=
stop_key:
click_thread.exit()
listener.stop()
with Listener(on_press
=
on_press) as listener:
listener.join()
Nachdem der Code ausgeführt wurde, sehen wir in der Ausgabe, wie unten gezeigt, die Anzahl der Klicks, die der Auto-Clicker nach der Implementierung des Codes ausgeführt hat. Es ist kompatibel mit Windows, Mac und Linux. Auto-Clicker ist eine hilfreiche Software für die Systeme, da wir so eine angemessene Zeit sparen können, die für wiederholte Klicks aufgewendet wird.
Unten ist das komplette Programm:
import
time
import
threading
from
pynput.mouse
import
Button, Controller
from
pynput.keyboard
import
Listener, KeyCode
delay
=
0.001
button
=
Button.right
start_stop_key
=
KeyCode(char
=
'a'
)
stop_key
=
KeyCode(char
=
'b'
)
class
ClickMouse(threading.Thread):
def
__init__(
self
, delay, button):
super
(ClickMouse,
self
).__init__()
self
.delay
=
delay
self
.button
=
button
self
.running
=
False
self
.program_running
=
True
def
start_clicking(
self
):
self
.running
=
True
def
stop_clicking(
self
):
self
.running
=
False
def
exit(
self
):
self
.stop_clicking()
self
.program_running
=
False
def
run(
self
):
while
self
.program_running:
while
self
.running:
mouse.click(
self
.button)
time.sleep(
self
.delay)
time.sleep(
0.1
)
mouse
=
Controller()
click_thread
=
ClickMouse(delay, button)
click_thread.start()
def
on_press(key):
if
key
=
=
start_stop_key:
if
click_thread.running:
click_thread.stop_clicking()
else
:
click_thread.start_clicking()
elif
key
=
=
stop_key:
click_thread.exit()
listener.stop()
with Listener(on_press
=
on_press) as listener:
listener.join()
Lassen Sie uns nun das von uns geschriebene Python-Programm ausführen und dann den Start drücken (a) Tasten und Stop (a) , um den Auto-Clicker zu .
Ausgabe: