博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python实战===python控制键盘鼠标:pynput
阅读量:7171 次
发布时间:2019-06-29

本文共 2161 字,大约阅读时间需要 7 分钟。

Python控制键盘鼠标:pynput

地址:https://pypi.python.org/pypi/pynput

 

这个库让你可以控制和监控输入设备。

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

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

  • pynput.keyboard:包含控制和监控键盘的类。

基本用法介绍:

from  pynput.mouse import Button, Controllerimport time mouse = Controller()print(mouse.position)time.sleep(3)print('The current pointer position is {0}'.format(mouse.position))#set pointer positonmouse.position = (277, 645)print('now we have moved it to {0}'.format(mouse.position))#鼠标移动(x,y)个距离mouse.move(5, -5)print(mouse.position)mouse.press(Button.left)mouse.release(Button.left)#Double clickmouse.click(Button.left, 1)#scroll two  steps downmouse.scroll(0, 500)

监控鼠标事件 :

from pynput import mousedef on_move(x, y ):    print('Pointer moved to {o}'.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:        return Falsedef on_scroll(x, y ,dx, dy):    print('scrolled {0} at {1}'.format(        'down' if dy < 0 else 'up',        (x, y)))while True:    with mouse.Listener( no_move = on_move,on_click = on_click,on_scroll = on_scroll) as listener:        listener.join()

 

键盘输入用法:

from pynput.keyboard import Key, Controllerkeyboard = Controller()#Press and release spacekeyboard.press(Key.space)keyboard.release(Key.space)#Type a lower case A ;this will work even if no key on the physical keyboard  is labelled 'A'keyboard.press('a')keyboard.release('a')#Type two  upper case Askeyboard.press('A')keyboard.release('A')# or with keyboard .pressed(Key.shift):    keyboard.press('a')    keyboard.release('a')#type 'hello world '  using the shortcut type  methodkeyboard.type('hello world')

 

键盘监听:

from pynput import keyboarddef on_press(key):    try:        print('alphanumeric key  {0} pressed'.format(key.char))    except AttributeError:        print('special key {0} pressed'.format(key))def on_release(key):    print('{0} released'.format(key))    if key == keyboard.Key.esc:        return Falsewhile True:    with keyboard.Listener(        on_press = on_press,        on_release = on_release) as listener:        listener.join()

 

转载于:https://www.cnblogs.com/botoo/p/8302531.html

你可能感兴趣的文章
WPF Summary 系列指导(连载中…^_^)
查看>>
feof()的实现
查看>>
VS中Debug与Release、_WIN32与_WIN64的区别
查看>>
真正通用的SQL分页存储过程
查看>>
coredump的裁剪方法
查看>>
精选30个优秀的CSS技术和实例
查看>>
洛谷P5206 数树
查看>>
20160509-hibernate--继承映射
查看>>
删除字符串最后一个字符的几种方法
查看>>
extjs apply,applyif,override,extend 的区别
查看>>
mycat 自增id笔记
查看>>
.net开源CMS系统使用教程之:如何用We7 CMS建设全新网站
查看>>
查看表扫描次数,并对比索引对表查询的作用
查看>>
Java多线程系列目录(共43篇)
查看>>
解决MySQL登录ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor)问题
查看>>
未排序数组中累加和为给定值的最长子数组长度
查看>>
在linux中安装memcache服务器
查看>>
python之if测试
查看>>
电脑操作的“奇技淫巧”
查看>>
遍历DOM树,each()遍历
查看>>