Clickear en 3 coordenadas con python
Estoy recién comenzando a navegar en estas aguas de python, vengo de excel y vba así que estoy bastante mareado.
Estuve queriendo hacer un programa que al ejecutarlo puedo manejar con 3 teclas el mouse, haciendo que se mantenga presionado en 3 coordenadas diferentes segun la tecla que presiono, sería algo así:
Presiono "a" y el mouse se queda presionado en un punto a la izquierda, vuelvo a presionar "a" y suelta el click.
Presiono "s" y el mouse se queda presionado en un punto al medio, vuelvo a presionar "s" y suelta el click.
Presiono "d" y el mouse se queda presionado en un punto a la derecha, vuelvo a presionar "d" y suelta el click.
Intente modificarlo partiendo de una base de un autoclick, pero no me esta funcionando.
Aquí el codigo modificado:
Import threading From pynput. Mouse import Button, Controller From pynput. Keyboard import Listener, KeyCode button = Button.left start_stop_left = KeyCode(char='a') start_stop_mid = KeyCode(char='s') start_stop_right = KeyCode(char='d') exit_key = KeyCode(char='e') class ClickMouse(threading.Thread): def __init__(self, button): super(ClickMouse, self).__init__() 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.press(button) mouse = Controller() click_thread = mouse.press(button) def on_press(key): if key == start_stop_left: if click_thread.running: click_thread.stop_clicking() else: click_thread.start_clicking() mouse.position = (785, 515) elif key == start_stop_mid: if click_thread.running: click_thread.stop_clicking() else: click_thread.start_clicking() mouse.position = (960, 545) elif key == start_stop_right: if click_thread.running: click_thread.stop_clicking() else: click_thread.start_clicking() mouse.position = (1135, 530) elif key == exit_key: click_thread.exit() listener.stop() with Listener(on_press=on_press) as listener: listener.join()