Skip to content

Instantly share code, notes, and snippets.

@shmor3
Last active February 23, 2024 20:51
Show Gist options
  • Save shmor3/6b35f2adf093976835d1a0b06cf6e2a8 to your computer and use it in GitHub Desktop.
Save shmor3/6b35f2adf093976835d1a0b06cf6e2a8 to your computer and use it in GitHub Desktop.
Simple Python Auto Clicker
import time
import threading
from pynput.mouse import Button, Controller
from pynput.keyboard import Listener, KeyCode
delay = 0.7
button = Button.left
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()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment