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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。