Erstellen Sie einen Auto-Clicker in Python

Manav Narula 21 Juni 2023
  1. Verwenden Sie das pyautogui-Modul, um einen Auto-Clicker in Python zu erstellen
  2. Verwenden Sie win32api, um einen Auto-Clicker in Python zu erstellen
  3. Verwenden Sie das pynput-Modul, um einen Auto-Clicker in Python zu erstellen
  4. Abschluss
Erstellen Sie einen Auto-Clicker in Python

Wie der Name schon sagt, ist ein Auto-Clicker in Python eine einfache Python-Anwendung, die je nach Benutzeranforderung wiederholt mit der Maus klickt. Verschiedene Parameter wie Geschwindigkeit, Frequenz und Position können je nach Benutzer geändert werden.

Python verfügt über verschiedene Module zur Steuerung von Geräten wie Tastatur, Maus usw. Daher können wir mit diesen Modulen auf einfache Weise einen Auto-Clicker in Python erstellen.

Dieses Tutorial zeigt verschiedene Möglichkeiten zum Erstellen eines Auto-Clickers in Python.

Verwenden Sie das pyautogui-Modul, um einen Auto-Clicker in Python zu erstellen

Das Modul pyautogui kann Skripte erstellen, die die Maus und die Tastatur des Geräts steuern.

Wir können die Funktion pyautogui.click() verwenden, um mit der Maus zu klicken. Wir können die Maus vorher mit der Funktion pyautogui.moveTo() an die gewünschte Position bewegen und die Koordinaten für den Cursor angeben.

Um einen Auto-Clicker mit diesen Funktionen zu erstellen, bewegen wir die Maus und führen eine for-Schleife aus, um die pyautogui.click()-Funktion jeder Iteration auszuführen. Wir werden auch vor jedem Klick etwas verzögern, um dies sichtbar zu machen.

Für die Verzögerung verwenden wir die Funktion sleep() aus dem Modul time.

Wir implementieren die Logik für Auto Clicker im folgenden Code.

import pyautogui
import time

pyautogui.moveTo(600, 800)
for i in range(20):
    time.sleep(0.1)
    pyautogui.click()

Im obigen Beispiel bewegen wir den Cursor auf die Koordinaten (600,800) und klicken 20 Mal mit der Maus mit der Funktion click().

Verwenden Sie win32api, um einen Auto-Clicker in Python zu erstellen

Die win32api dient zur Steuerung und Automatisierung von Windows-COM-Objekten. Wir können diese Objekte aus dem win32con-Modul verwenden und einen Mausklick nachahmen.

Dazu verwenden wir die Funktion win32api.mouse_event zweimal, einmal für win32con.MOUSEEVENTF_LEFTDOWN und das andere Mal für win32con.MOUSEEVENTF_LEFTDOWN, um einen Mausklick nachzuahmen.

Die Position des Cursors setzen wir mit der Funktion win23api.SetCursorPos() auf die gewünschten Koordinaten. Dann verwenden wir einen ähnlichen Ansatz wie in der vorherigen Methode, um einen Auto-Clicker in Python zu erstellen.

Siehe Code unten.

import win32api
import win32con
import time

win32api.SetCursorPos((600, 800))
for i in range(20):
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 600, 800, 0, 0)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 600, 800, 0, 0)
    time.sleep(0.1)

Verwenden Sie das pynput-Modul, um einen Auto-Clicker in Python zu erstellen

Wir haben auch das pynput zum Automatisieren von Maus- und Tastaturaktionen in Python-Skripten. Diese Methode unterscheidet sich von den beiden vorherigen, da wir eine Klasse mit den erforderlichen Funktionen zum Erstellen eines automatischen Klickers erstellen werden.

Wir werden eine Klasse erstellen, die als automatischer Klicker fungiert, wenn eine bestimmte Taste gedrückt wird. Eine andere Taste wird zugewiesen, um das Klicken zu stoppen.

Wir müssen die Module pynput.mouse und pynput.keyboard importieren.

Die erstellte Klasse wird auf die Klasse threading.Thread erweitert, damit wir die Threads mit verschiedenen Funktionalitäten steuern können.

In der __init__-Methode der Klasse werden wir wie zuvor eine leichte Verzögerung zwischen jedem Klick angeben und erwähnen, dass wir mit der linken Maustaste mit dem Button.Left-Objekt klicken werden.

Die Threads laufen weiter, bis die Taste zum Stoppen des Klickens gedrückt wird. Wir verwenden die Methode start() der Klasse threading.Thread, um mit dem Klicken zu beginnen.

In der Methode running() verwenden wir auch das Klassenobjekt Controller.

Um die Threads zu starten und zu stoppen, erstellen wir eine Funktion. Die Funktion Listener() führt die definierte Funktion aus, während die Taste mit dem Argument on_press gedrückt wird.

Diese Logik ist im folgenden Code implementiert.

import time
import threading
from pynput.mouse import Button, Controller
from pynput.keyboard import Listener, KeyCode

start_end = KeyCode(char="a")
exit_key = KeyCode(char="z")


class auto_clicker_class(threading.Thread):
    def __init__(self):
        super(auto_clicker_class, self).__init__()
        self.delay = 0.1
        self.button = Button.left
        self.running = False
        self.program_run = True

    def begin_clicking(self):
        self.running = True

    def clicking_stop(self):
        self.running = False

    def exit(self):
        self.clicking_stop()
        self.program_run = False

    def run(self):
        while self.program_run:
            while self.running:
                mouse_ob.click(self.button)
                time.sleep(self.delay)
            time.sleep(0.1)


mouse_ob = Controller()
t = auto_clicker_class()
t.start()


def fun(k):
    if k == start_end:
        if t.running:
            t.clicking_stop()
        else:
            t.begin_clicking()
    elif k == exit_key:
        t.exit()
        listener.stop()


with Listener(on_press=fun) as listener:
    listener.join()

Abschluss

Wir haben in diesem Tutorial Auto-Clicker besprochen. Die ersten beiden Methoden sind relativ einfach, da wir eine mehrmals wiederholte Funktion mit der for-Schleife ausführen, um einen Mausklick nachzuahmen.

Die letzte Methode erstellt ein geeignetes Auto-Clicker-Skript in Python, das das Klicken basierend auf der auf der Tastatur gedrückten Taste starten und stoppen kann.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn