zoukankan      html  css  js  c++  java
  • 使用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')
    部分内容来自于学习编程期间收集于网络的免费分享资源和工作后购买的付费内容。
  • 相关阅读:
    Android开发学习--RecycleView入门
    Android开发学习--MVP模式入门
    Android开发学习--ViewPager使用入门
    LocalDB
    Asp.Net Mvc5新特性
    Asp.net MVC4 捆绑和压缩
    实施双工通信框架:SignalR
    Razor 语法
    Action Result
    操作Action
  • 原文地址:https://www.cnblogs.com/MarlonKang/p/15169432.html
Copyright © 2011-2022 走看看