python 模拟健盘输入

2024/01/26 Python solution 共 860 字,约 3 分钟

前言

需求的起因是我需要将文本复制进一个远程桌面,但剪切板是不能传递的,要重新敲一遍,很痛苦,我想到了按键精灵,但这个东西不是很好用,很多功能不是我所需要的,学习成本有点高,不符合我的要求。

问题描述

我的需求大致如下:

  1. 可以输入我已经准备好在剪切板的文本
  2. 可以快捷键唤起
  3. 步骤尽量少

我经过搜索整理找到了这个方案。

解决方案

utools 快捷指令插件 启动 python 脚本,python pynput.keyboard 包模拟键盘输入。

\{\{subinput:words to input\}\}是通过 utools 提供的输入框输入内容对应的占位符,需要在唤起之后进行粘贴。

如下为快捷指令插件中的 python 脚本,在插件中新建个脚本即可。

需要注意自行解决 python 运行环境及依赖相关的问题,只要你能在 cmd 中可以运行这段脚本,在快捷指令中也可以运行。

等待时间间隔和键入时间间隔可以在脚本中自行调整。

import time
from pynput.keyboard import Controller

def type_text(text):
    keyboard = Controller()
    time.sleep(3)
    for char in text:
        keyboard.type(char)
        time.sleep(0.01)

def main():
    content = '\{\{subinput:words to input\}\}'
    type_text(content)

if __name__ == '__main__':
    main()

总结

python 简单的就解决了我的问题,我很是震撼啊,一般思路都是找 win 本身的操作系统接口什么的,搞得很麻烦而且还会带来更多问题,python 直接给封装好了,给的接口也简洁方便。现在的这个解决方案又回到外行人那种思路去了,很神秘。我又翻了翻这个包,查了查其他类似的东西,有好多伪装键盘和鼠标的操作,感觉或许什么时候用得到。

Python自动操作GUI神器PyAutoGUI silaoA的博客

Installation — PyAutoGUI documentation

文档信息

Search

    Table of Contents