Estou tentando um script simples com python, ele clicar em uma coordenada da tela.
Já tentei com Pyautogui, pynput, pydirectinput, pywinauto… Mas em nenhuma delas o click é realmente efetuado, a única coisa que funciona é mover o mouse até a coordenada.
os scripts são simples, mas mesmo assim não funciona, por dedução acho que seja um problema relacionado ao win10.
Alguém sabe como posso resolver isso?
Preciso instalar algo a mais, talvez um driver?
Tá faltando dar algum tipo de permissão?
Estou perdido 🙁
Algumas de minhas tentativas abaixo
OBS: Em todas tentativas o mouse se move, mas não clica.
Pyautogui:
import pyautogui
pyautogui.moveTo(35, 240)
pyautogui.click()
Pydirectinput:
import pyautogui
import pydirectinput
pydirectinput.moveTo(35, 240)
pydirectinput.click()
pywinauto:
import pywinauto
from pywinauto import Desktop, Application, mouse, findwindows
pywinauto.mouse.move(coords=(160, 400))
pywinauto.mouse.double_click(button='left', coords=(160, 400))
Autoclicker usando pynput:
import time
import threading
from pynput.mouse import Button, Controller
from pynput.keyboard import Listener, KeyCode
delay = 0.001
button = Button.left
start_stop_key = KeyCode(char='s')
exit_key = KeyCode(char='e')
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 == exit_key:
click_thread.exit()
listener.stop()
with Listener(on_press=on_press) as listener:
listener.join()