如何使用Python模拟键盘击键来控制游戏?

时间:2018-07-12 18:29:47

标签: python ctypes pywin32 pyautogui

我正在尝试创建一个Python脚本来自动化游戏。

我已经尝试过这些库:

我的代码是这样的:

from directkeys import PressKey, ReleaseKey, W
import time

print("Script is gonna start in 5 seconds")
time.sleep(5)

PressKey(W)
time.sleep(10)
ReleaseKey(W)
print("Script finished")

我在notepad测试了此脚本,它运行良好,但根本无法在游戏中运行。

我认为是因为需要直接输入,但是我认为ctypes已经以direct input的形式发送输入。

如何使用python自动化游戏?

1 个答案:

答案 0 :(得分:0)

我要把我的评论提高到一个答案,因为我相信这就是您想要的。

对于PressKey和ReleaseKey功能,W不是正确的输入。他们正在寻找十六进制代码输入。您可以在此处找到合适的十六进制代码:https://docs.microsoft.com/en-us/windows/desktop/inputdev/virtual-key-codes

W十六进制代码特别是0x57。因此,将“ W”替换为“ 0x57”:

from directkeys import PressKey, ReleaseKey, W
import time

print("Script is gonna start in 5 seconds")
time.sleep(5)

PressKey(0x57)
time.sleep(10)
ReleaseKey(0x57)
print("Script finished")