Python控制键盘鼠标pynput的详细用法
更新时间:2019年01月28日 15:15:16 作者:botoo
这篇文章主要介绍了Python控制键盘鼠标pynput的详细用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
pynput这个库让你可以控制和监控输入设备。
对于每一种输入设备,它包含一个子包来控制和监控该种输入设备:
- pynput.mouse:包含控制和监控鼠标或者触摸板的类。
- pynput.keyboard:包含控制和监控键盘的类。
地址:https://pypi.python.org/pypi/pynput
基本用法介绍:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | from pynput.mouse import Button, Controller import time mouse = Controller() print (mouse.position) time.sleep( 3 ) print ( 'The current pointer position is {0}' . format (mouse.position)) #set pointer positon mouse.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 click mouse.click(Button.left, 1 ) #scroll two steps down mouse.scroll( 0 , 500 ) |
监控鼠标事件 :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | from pynput import mouse def 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 False def 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() |
键盘输入用法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | from pynput.keyboard import Key, Controller keyboard = Controller() # 按下空格和释放空格 #Press and release space keyboard.press(Key.space) keyboard.release(Key.space) # 按下a键和释放a键 #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 As keyboard.press( 'A' ) keyboard.release( 'A' ) # or with keyboard .pressed(Key.shift): keyboard.press( 'a' ) keyboard.release( 'a' ) #type 'hello world ' using the shortcut type method keyboard. type ( 'hello world' ) |
键盘监听:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | from pynput import keyboard def 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 False while True : with keyboard.Listener( on_press = on_press, on_release = on_release) as listener: listener.join() |
对于鼠标来说,api就上面几个。但是对于键盘来说还要别的,详细的查看:http://pythonhosted.org/pynput/index.html
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章: