You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyAutoGUI模拟非小键盘数字失效问题及替代方案咨询

解决游戏中非小键盘数字键模拟问题

用pynput库模拟主键盘数字键

pynput的按键模拟更贴近硬件级扫描逻辑,更容易被游戏识别。试试以下代码:

from pynput.keyboard import Controller, KeyCode

keyboard = Controller()
# 模拟按下并释放主键盘的数字2
keyboard.press(KeyCode.from_char('2'))
keyboard.release(KeyCode.from_char('2'))

如果字符映射仍有问题,可以直接使用按键的扫描码(主键盘数字2的扫描码为0x03):

keyboard.press(KeyCode.from_scan_code(0x03))
keyboard.release(KeyCode.from_scan_code(0x03))

用pywin32调用Windows API模拟

若pynput仍无效,可直接调用Windows原生API模拟按键,指定主键盘数字键的VK码(主键盘数字2的VK码是0x32,小键盘2为0x62,注意区分):

import win32api
import win32con

def simulate_key_press(vk_code):
    # 模拟按键按下
    win32api.keybd_event(vk_code, 0, 0, 0)
    # 模拟按键释放
    win32api.keybd_event(vk_code, 0, win32con.KEYEVENTF_KEYUP, 0)

# 触发主键盘数字2的按键动作
simulate_key_press(0x32)

PyAutoGUI无效的原因

输入框能正常响应是因为它接收的是字符输入消息,但多数游戏会绕过普通Windows消息机制,直接读取硬件输入或使用DirectInput,PyAutoGUI的默认模拟方式无法触发这类检测,因此在游戏内失效。

内容的提问来源于stack exchange,提问作者Vento Diaz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 22:35:15