1. 程式人生 > >python實戰===python控制鍵盤鼠標:pynput

python實戰===python控制鍵盤鼠標:pynput

imp lee turn error from lease att using 用法

Python控制鍵盤鼠標:pynput

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

這個庫讓你可以控制和監控輸入設備。

對於每一種輸入設備,它包含一個子包來控制和監控該種輸入設備:

  • pynput.mouse:包含控制和監控鼠標或者觸摸板的類。

  • pynput.keyboard:包含控制和監控鍵盤的類。

基本用法介紹:

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)

監控鼠標事件 :

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()

鍵盤輸入用法:

from pynput.keyboard import Key, Controller

keyboard = Controller()

#Press and release space
keyboard.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 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)

鍵盤監聽:

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()

python實戰===python控制鍵盤鼠標:pynput