Python在游戏中模拟“输入”按键

Ron*_*nan 6 python pyautogui

所以我一直在尝试编写一个脚本来在视频游戏(激战 2)中输入一串文本。主要是我使用 pyautogui 并且在大多数情况下它工作正常。我的问题是我似乎无法让游戏识别“进入”。例如,如果我有代码:

import pyautogui, time
time.sleep(2) #to allow me to have time to switch windows
pyautogui.press('enter')
pyautogui.typewrite("This is a test")
pyautogui.press('enter')
Run Code Online (Sandbox Code Playgroud)

这两个“按回车”功能不会打开和提交文本。但是,如果我手动按 Enter,则第三行可以很好地输入内容。

我也试过用 keyDown 和 keyUp 替换 press('enter') ,但仍然没有结果。

我已经设法通过让 python 按下 F10,然后在按下 F10 时按下一个单独的 Autohotkey 脚本来创建一个解决方法,但这远非理想。有什么建议吗?

注释中的额外说明:脚本本身在记事本等其他程序中运行良好。它似乎专门针对游戏客户端失败。

Ron*_*nan 5

对于任何找到这篇文章的人。答案本质上是,由于大多数游戏解释按键的方式,这不能以这种方式完成。此处显示了一个工作系统:模拟 Python 按键来控制游戏