python键盘监听模块大全_python监听、操作键盘鼠标库pynput详细教程

§ 0.0.0 前言

监听、操作鼠标、键盘是实现自动化的捷径,比如我实现自动化签到用到了模拟键盘操作。

pynput是监听、操控鼠标和键盘的跨平台第三方python库。

你可以通过pip insnall pynput来安装。安装时会自动下载依赖库。

接下来我会按“鼠标按键”“监听鼠标”“控制鼠标”,

“键盘按键”“监听键盘”“控制键盘”的顺序介绍它的用法。

以下为正文。

§1.0.0 鼠标按键

鼠标的按键在pynput.mouse.Button中,

有lift、right、middle还有unknown四种。

每一个按键都有两个有意义的属性:name和value。

name是该按键的名称,比如 Button.left.name == 'left';

value是记录上一次点击位置的元组。

§1.1.0 监听鼠标

有两种方法,一种是函数式、非阻塞型,另一种是语句式、非阻塞型。

先说第一种,这种是常见的教程所说的方法。

§1.1.1 pynput.mouse.Listener

以下是官网的说明示例:

import pynput, time

def on_move(x, y):

print('Pointer moved to {0}'.format((x, y)))

def on_click(x, y, button, pressed):

print('{0} at {1}'.format(

'Pressed' if pressed else 'Released',

(x, y)))

if not pressed:

# Stop listener

return False

def on_scroll(x, y, dx, dy):

print('Scrolled {0} at {1}'.format(

'down' if dy < 0 else 'up',

(x, y)))

# Collect events until released

with pynput.mouse.Listener(

on_move=on_move,

on_click=on_click,

on_scroll=on_scroll) as listener:

listener.join()

运行这段代码时,移动鼠标会显示其坐标,

按下鼠标按键并松开后,程序结束。

当三个函数任意一个返回False((还有就是释放Exception或继承自Exception的异常)时,就会结束进程。

可以用listener.start()和listener.stop()代替with语句。

§1.1.2 pynput.mouse.Events

个人认为,这个方法比上一个更直观。

import pynput

with pynput.mouse.Events() as event:

for i in event:

#迭代用法。

if isinstance(i, pynput.mouse.Events.Move):

#鼠标移动事件。

print(i.x, i.y)

#不要直接打印`i`,模块这里有问题,会报错。

elif isinstance(i, pynput.mouse.Events.Click):

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值