使用pynput模拟键盘、鼠标操作

一、安装pynput模块

python -m pip install pynput -i https://pypi.tuna.tsinghua.edu.cn/simple

 

二、应用场景

chrome浏览器,光标放置在窗体里,点击当前窗体,按下空格键。——>页面面会向下滚动。 

 

三、实现

3.1 导包

#导包
from pynput import mouse
from pynput import keyboard
from pynput.keyboard import Key

3.2 模拟鼠标

光标的坐标

#获取鼠标的操控对象
mouse_c = mouse.Controller()
#获取当前鼠标的位置
print(mouse_c.position)
#改变光标的位置
mouse_c.position = (1000, 500)

#鼠标滚轮向上滚动
mouse_c.scroll(0, -100)
#鼠标滚轮向下滚动
mouse_c.scroll(0, 100)

鼠标的按键

#单击鼠标左键
mouse_c.click(mouse.Button.left, 1)
#按下鼠标左键
mouse_c.press(mouse.Button.left)
#释放鼠标左键
mouse_c.release(mouse.Button.left)

3.3 模拟键盘

获取按键

    • 获取特殊按键,可以通过 keyboard.Key找到
      • shift = keyboard.Key.shift
      •  ctrl = keyboard.Key.ctrl
      •   alt = keyboard.Key.alt
    • 获取普通按键
      可以通过keyboard.KeyCode.from_char 获取,特殊按键使用时会报ArgumentError
    • 两者都可以使用keyboard.KeyCode.from_vk 通过键盘的映射码来获取
    • 键位码表

模拟按键操作

keyboard_c = keyboard.Controller()

#Type a lower case A;
keyboard_c.press(a)
keyboard_c.release(a)

#Type a upper case A;
keyboard_c.press(A)
keyboard_c.release(A)
# or 
with keyboard_c.pressed(Key.shift):
    kc.press(a)
    kc.release(a)

#输出字符串’hello world’
keyboard_c.type(hello world)

 

使用pynput模拟键盘、鼠标操作

上一篇:时空CLR解密登陆密码源码


下一篇:二分求区间长度限制的区间平均值最大值