2013-01-23 119 views
2

我想在Linux系统(Ubuntu)中模拟Python中的鼠标点击(如果有可能,还有键盘输入),所以我可以为外部程序创建一个宏。Linux - 用Python模拟鼠标点击

我已经研究了一下,发现了诸如this这些使用win32api或ctypes来完成这个工作的问题。但是由于我在Ubuntu工作,这些不适合我。

我还发现Xaut(以前的Xautomation),据说它模拟Linux系统上的鼠标和键盘交互。但是很难为我安装,而且它无论如何都缺少文档和示例。

我真的很喜欢win32api解决方案,它非常简单。 Linux没有类似的解决方案吗?

回答

4

与Windows,Linux是由设计,使注入/截获用户事件的安全系统并不简单:-)

但有些工具可以做同样的在Linux上(至少当他们有XAUTH证书,因此不会在同一台计算机上窥探/破解其他用户)。尝试xdotool,它提供了多种命令来查找和选择窗口,然后向它们发送事件。

xdotool可用于大多数Linux发行版(debian和rpm based)。

注意:出于安全原因,X11中的合成事件有一个标志设置,某些软件会忽略带有该标志的所有事件。

+0

如果我要离开Python脚本的想法并拥抱这样的工具,用GUI创建一个宏创建器会不会更好? xdotool看起来太简单 –

+1

使用Python为脚本构建包装器。这样,您可以创建自己的宏生成器和执行器。 –