[键盘侠必备]python操控鼠标键盘
同学们好! 今天, 我们来介绍一种简单的轻松的使用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()
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()