You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Keyboard模块检测鼠标左右键点击以替换自动点击器快捷键触发逻辑

实现方案

要实现鼠标按键状态检测,你可以使用pynput库,它支持全局鼠标事件监听,可与现有pyautogui功能兼容。

第一步:安装依赖

执行以下命令安装pynput:

pip install pynput

第二步:代码实现

提供两种常用逻辑的实现,你可以根据需求选择:

方案1:按住鼠标按键自动连点(和你原有逻辑效果一致)
import pyautogui
from pynput import mouse
import threading

pyautogui.PAUSE = 0.1

# 按键按压状态标志
left_pressing = False
right_pressing = False

# 连点执行线程
def click_task():
    while True:
        if left_pressing:
            pyautogui.click()
        if right_pressing:
            pyautogui.rightClick()

# 鼠标按下回调
def on_press(key):
    global left_pressing, right_pressing
    if key == mouse.Button.left:
        left_pressing = True
    elif key == mouse.Button.right:
        right_pressing = True

# 鼠标松开回调
def on_release(key):
    global left_pressing, right_pressing
    if key == mouse.Button.left:
        left_pressing = False
    elif key == mouse.Button.right:
        right_pressing = False
    # 可选:取消下方注释,点击鼠标侧键X1即可退出程序
    # if key == mouse.Button.x1:
    #     return False

if __name__ == "__main__":
    # 启动连点线程
    threading.Thread(target=click_task, daemon=True).start()
    # 启动鼠标事件监听器
    with mouse.Listener(on_press=on_press, on_release=on_release) as listener:
        listener.join()

功能说明:

  • 按住鼠标左键自动连续触发左键点击,松开即停止,对应原g键功能
  • 按住鼠标右键自动连续触发右键点击,松开即停止,对应原h键功能
  • 调整pyautogui.PAUSE的数值即可修改连点间隔时间
  • 若运行时检测不到鼠标事件,尝试用管理员权限启动脚本即可
方案2:按一次鼠标按键触发一次点击

如果你不需要连点效果,仅需要点击一次触发一次对应操作,可以使用简化版本:

import pyautogui
from pynput import mouse

pyautogui.PAUSE = 0.1

def on_press(key):
    if key == mouse.Button.left:
        pyautogui.click()
    elif key == mouse.Button.right:
        pyautogui.rightClick()
    # 可选:取消下方注释,点击鼠标侧键X2即可退出程序
    # if key == mouse.Button.x2:
    #     return False

if __name__ == "__main__":
    with mouse.Listener(on_press=on_press) as listener:
        listener.join()

内容的提问来源于stack exchange,提问作者DA Skull

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 08:18:02