Python控制键盘鼠标pynput的详细用法
pynput这个库让你可以控制和监控输入设备。
对于每一种输入设备,它包含一个子包来控制和监控该种输入设备:
- pynput.mouse:包含控制和监控鼠标或者触摸板的类。
- pynput.keyboard:包含控制和监控键盘的类。
地址:https://pypi.python.org/pypi/pynput
基本用法介绍:
frompynput.mouseimportButton,Controller importtime mouse=Controller() print(mouse.position) time.sleep(3) print('Thecurrentpointerpositionis{0}'.format(mouse.position)) #setpointerpositon mouse.position=(277,645) print('nowwehavemoveditto{0}'.format(mouse.position)) #鼠标移动(x,y)个距离 mouse.move(5,-5) print(mouse.position) mouse.press(Button.left) mouse.release(Button.left) #Doubleclick mouse.click(Button.left,1) #scrolltwostepsdown mouse.scroll(0,500)
监控鼠标事件:
frompynputimportmouse defon_move(x,y): print('Pointermovedto{o}'.format( (x,y))) defon_click(x,y,button,pressed): print('{0}at{1}'.format('Pressed'ifpressedelse'Released',(x,y))) ifnotpressed: returnFalse defon_scroll(x,y,dx,dy): print('scrolled{0}at{1}'.format( 'down'ifdy<0else'up', (x,y))) whileTrue: withmouse.Listener(no_move=on_move,on_click=on_click,on_scroll=on_scroll)aslistener: listener.join()
键盘输入用法:
frompynput.keyboardimportKey,Controller keyboard=Controller() #按下空格和释放空格 #Pressandreleasespace keyboard.press(Key.space) keyboard.release(Key.space) #按下a键和释放a键 #TypealowercaseA;thiswillworkevenifnokeyonthephysicalkeyboardislabelled'A' keyboard.press('a') keyboard.release('a') #TypetwouppercaseAs keyboard.press('A') keyboard.release('A') #or withkeyboard.pressed(Key.shift): keyboard.press('a') keyboard.release('a') #type'helloworld'usingtheshortcuttypemethod keyboard.type('helloworld')
键盘监听:
frompynputimportkeyboard defon_press(key): try: print('alphanumerickey{0}pressed'.format(key.char)) exceptAttributeError: print('specialkey{0}pressed'.format(key)) defon_release(key): print('{0}released'.format(key)) ifkey==keyboard.Key.esc: returnFalse whileTrue: withkeyboard.Listener( on_press=on_press, on_release=on_release)aslistener: listener.join()
对于鼠标来说,api就上面几个。但是对于键盘来说还要别的,详细的查看:http://pythonhosted.org/pynput/index.html
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。