Skip to main content

Keyboard:键盘自动化控制

Keyboard 模块提供了对系统键盘的完全控制,包括中英文混合输入、组合键热键触发以及单键的长按控制。


1. 导入模块

在使用键盘功能前,请先导入相关的核心函数:

# 导入键盘控制核心函数
from ascript.windows.hardware import Keyboard

2. 实例方法(键盘控制)

⌨️ 智能输入 input()

自动识别字符串中的中英文。英文通过模拟击键输入,中文则自动通过剪贴板粘贴。

代码块:

# 模拟文本输入
keyboard.input(msg, interval=0.0)

参数详解:

  • msg (str): 要输入的字符串内容(支持中英文混合)。
  • interval (float): 仅针对英文输入时,每个字符之间的击键间隔时间(秒)。

🔨 按键触发 key()

模拟按下并立即释放指定的按键。

代码块:

# 按下指定的一个或多个按键
keyboard.key(keys, presses=1, interval=0.0)

参数详解:

  • keys (str | list): 要按下的按键名称(如 'enter', 'esc')或按键名列表。
  • presses (int): 连续按下的次数。
  • interval (float): 连续按下之间的间隔时间(秒)。

🔥 组合热键 key_hot()

模拟多个按键同时按下的组合操作。

代码块:

# 触发组合快捷键(如 Ctrl+C)
keyboard.key_hot(*args)

参数详解:

  • args (str): 不定数量的按键名称字符串。例如:'ctrl', 'alt', 'delete'

⚓ 状态维持 key_down() / key_up()

精确控制按键的按下与松开,常用于模拟长按某个键。

代码块:

# 按下按键不松开
keyboard.key_down(key_str)

# 松开已按下的按键
keyboard.key_up(key_str)

参数详解:

  • key_str (str): 需要操作的按键名称(如 'shift', 'a')。

💡 案例演示

from ascript.windows import keyboard

# 1. 自动输入混合内容
keyboard.input("欢迎使用 AScript 自动化,当前时间是 17:00")

# 2. 模拟全选并复制
keyboard.key_hot('ctrl', 'a')
keyboard.key_hot('ctrl', 'c')

# 3. 按下回车确认
keyboard.key('enter')

# 4. 模拟长按 Shift 键
keyboard.key_down('shift')
keyboard.key('a') # 此时会输入大写的 A
keyboard.key_up('shift')