将ahk转换为python

Jim*_*yap 6 python autohotkey

我正在学习autohotkey和python.我在ahk中编写了这个脚本(并且它有效!)在pokerstars客户端中自动连接表(使用tableninja) -

^q::
Loop
{
Send q
Sleep 500
Send {PgUp}
Sleep 500
Send w
Sleep 60000
}
return
Run Code Online (Sandbox Code Playgroud)

我想把它转换成python - 你能不能给我一个关于我可以使用哪些模块来实现这个目标的想法?

python脚本需要做的是(在循环时)键入一个字母(在已经打开的记事本上),向下两行,键入另一个字母,然后在重新开始之前等待一分钟.

我在想 -

import module to auto-type letters
import module that works as timer

def function
    type letter q
    enter
    enter

def function
    type letter w

def function
    sleep

while True
    function
    function
    function
Run Code Online (Sandbox Code Playgroud)

我在教自己如何编码.我还没有达到关于python模块的部分.谢谢!

gio*_*lio 8

假设您在Windows上工作(不要认为AHK在其他任何地方运行),您应该查看sendkeys.这将使发送击键变得轻而易举.如果你想要更健壮的东西,请看看pywinauto

对于快捷方式部分,请查看pyhook


sch*_*rpf 7

我建议这些模块:

  • SendKeysCtypes用于发送击键和向窗口发送快捷方式.SendKeysCtypes是SendKeys的一个新的更稳定的版本.我过去遇到过SendKeys的问题.

  • PYHK处理全球热键 - 接收热键和触发功能.PYHK基于pyHook,使热键注册变得非常简单.我写它是因为我和你有完全相同的想法 - 我想在python中做AHK功能.

  • 用于窗口处理的win32gui,例如移动大小调整.我个人更喜欢win32gui用于简短的任务.我使用pywinauto来完成更复杂的任务.例如,如果我必须访问程序中的菜单(如File-New).

  • mouse.py来控制鼠标.这是迄今为止我发现的最强大的方法.我使用的版本是我在stackoverflow找到的模块的扩展 - ctypes mouse_events.

我个人用python做了几个扑克程序.我已经发布了我的小程序的源代码.您可以在我的网站schurpf.com/poker-software上找到它们.