如何用Python控制键盘和鼠标?

Mar*_*aux 11 python linux awtrobot

如何在Python中控制鼠标和键盘?

我们的想法与Java中的Robot()类相同.能够说:将鼠标从这里移动到这里,点击那里,写出屏幕上的任何内容.

对于Windows,有win32api,但我主要使用的是Linux.

对于Linux有Xlib,但它也适用于键盘吗?(仅发现鼠标的参考)

有跨平台的解决方案吗?(Linux,Windows甚至OS X都会很棒.)

Anu*_*yal 6

我使用dogtail(https://fedorahosted.org/dogtail/)来做这些事情,使用这个我已经为我的linux(ubuntu)应用程序创建了一个自动测试fromework.该框架将按钮和类型单击到文本字段中.

请参阅gedit示例,https://fedorahosted.org/dogtail/browser/examples/gedit-test-utf8-procedural-api.py

所以只需使用dogtail例如

dogtail.rawinput.click(100, 100)
Run Code Online (Sandbox Code Playgroud)


Mar*_*aux 1

对于鼠标,我发现pymouse似乎可以工作(我还没有完全尝试过,点击需要一个小技巧,参见问题)

对于键盘,我不确定 Xlib 是否可以完成这项工作。我仍在寻找如何编写一些内容,但您可以使用 Xlib 捕获关键事件,如此或 C 中所述(但我不知道 C)。

是一个仅适用于 gnome 的示例(还不够好)

在 pymouse 中,他们有一个很好的方法让它在 3 个不同的平台上工作,但需要编写 3 个代码......