如何实现按下u键终止Python用keyboard、pynput库编写的自动点击循环
Python自动点击程序终止功能修改方案
你可以在内层自动点击循环中加入非阻塞的u键检测逻辑即可实现需求,修改后的完整代码如下:
import keyboard from pynput.mouse import Button, Controller import time mouse = Controller() while True: if keyboard.read_key() == "p": # 加入短延迟做按键消抖,避免单次按下被识别为多次触发 time.sleep(0.2) while 1: # 检测到u键按下就跳出自动点击循环 if keyboard.is_pressed("u"): break time.sleep(1) mouse.click(Button.left, 1) # 退出循环后加消抖,避免u键按下事件被外层检测误触发 time.sleep(0.2)
修改说明
- 内层循环新增
keyboard.is_pressed("u")判断,该方法为非阻塞调用,不会打断1秒一次的点击节奏 - 额外加入的0.2秒消抖逻辑是为了避免物理按键按下的抖动导致单次操作被程序识别为多次触发
- 运行脚本时需要授予管理员/root权限,否则系统可能会拦截全局按键监听和鼠标模拟操作
内容的提问来源于stack exchange,提问作者PawełeK
相关产品推荐
相关产品推荐

