同学们好! 今天, 我们来介绍一种简单的轻松的使用python操控 键盘/鼠标 的方法.

学会这些操作, 会让你在当键盘侠的路上更加的游刃有余

说起操控 鼠标/键盘 , 我们平时最常用的是两种形式:

  • 监听 : 就是监测鼠标/键盘 的 各种操作
  • 控制 : 就是操作鼠标/键盘的移动和按键

这里我们使用pynput库完成此操控

一. 安装pynput

pip install pynput

对于每一种输入设备,它包含一个子包来控制和监控该种输入设备:

  • pynput.mouse:包含控制和监控鼠标或者触摸板的类。
  • pynput.keyboard:包含控制和监控键盘的类。

二. 监听鼠标

pynput.mouse库可以用来操作和监听鼠标事件

其中, 鼠标动作监听大致是在监听如下事件

  • 移动
  • 左/中/右 键按下
  • 左/中/右 键抬起
  • 中键滚轮上滚/下滚

1. 监听器

pynput.mouse.Listener类用于监听鼠标动作, 用法是:

with Listener(on_move=on_move,on_click=on_click,on_scroll=on_scroll) as listener:
    listener.join()

是不是很像我们打开文件的操作方法?😎😎😎

其中, 实例化Listener时, 传入了on_move,on_click,on_scroll 三个函数, 当发生对应事件时, 会触发对应函数

下面我们来一个个试一下

2. 监听鼠标移动

on_move回调函数用于监听鼠标移动, 它有两个参数

  • x , y : 鼠标移动到的x,y坐标
from pynput import mouse   #导入pynput.mouse模块

# 定义一个移动监听回调函数
def on_move(x, y):
    print('鼠标移动到了:{}'.format((x, y)))

# 写一个死循环, 循环监听
while True:
    with mouse.Listener(on_move=on_move) as listener:
        listener.join()

3. 监听 左/中/右 键按下/抬起

on_click回调函数用于监听鼠标移动, 它有4个参数

  • x , y : 鼠标按下时的x,y坐标
  • button : 被操作的按键, 可能的值有:
    • 左键 : Button.left
    • 中键 : Button.middle
    • 右键 : Button.right
  • press : 按下还是抬起, 按下为True, 抬起为False
from pynput import mouse  # 导入pynput.mouse模块

# 定义一个点击监听回调函数
def on_click(x, y, button, pressed):
    print('{} {} at {}'.format(
        button, 'Pressed' if pressed else 'Released', (x, y)))

# 写一个死循环, 循环监听
while True:
    with mouse.Listener(on_click=on_click) as listener:
        listener.join()

image-20220314222456436

4. 鼠标中键滚动监听

on_scroll回调函数用于监听鼠标移动, 它有4个参数

  • x , y : 鼠标移动到的x,y坐标
  • dx,dy: 鼠标滚动的方向, 现在的鼠标中键, 只能上下滚动, 所以一般只有dy起作用, 上滚时dy为1,下滚时dy为-1
from pynput import mouse  # 导入pynput.mouse模块

# 定义一个点击监听回调函数
def on_scroll(x, y, dx, dy):
    print(' {0} at {1}'.format('上滚' if dy > 0 else '下滚', (x, y)))

# 写一个死循环, 循环监听
while True:
    with mouse.Listener(on_scroll=on_scroll) as listener:
        listener.join()

image-20220314223219021

©本文首发于 菁英编程爱好者, 转载请注明出处.
菁英编程爱好者 » [键盘侠必备]python操控鼠标键盘

发表评论

提供最优质的资源集合

立即查看 了解详情