Pyautogui不会移动实际的鼠标指针

时间:2018-11-09 19:13:22

标签: python-3.x user-interface ubuntu mouse pyautogui

我遇到pyautogui的问题。每当我使用这些功能时,它都可以工作,但是它使用“不可见”的鼠标指针。基本上,该模块不使用鼠标来单击内容,但是它们仍然可以单击并拖动。这是一个视觉示例:

读取屏幕上的两个鼠标位置可以正常工作: Position 1 Position 2

但是,当我尝试将鼠标从第二个链接移回第一个链接时,鼠标本身不会移动,但计算机认为确实可以移动。如您所见,可视鼠标位于链接2,而“不可见”鼠标位于链接1。您可以看到此内容,因为链接1带下划线,并且在终端pyautogui.position()中返回了链接的坐标1: enter image description here 然后使用pyautogui.click()打开第一个链接: enter image description here

我尝试寻找此问题的答案,但似乎找不到任何答案。看来大多数人都有相反的问题。他们希望能够在正常使用鼠标(即两个鼠标指针)的同时使鼠标自动化。

为什么这是个问题?这些人想要的当然不是不是。通常,发生的情况是几秒钟后,“隐形”鼠标跳回到可视鼠标所在的位置。同样,在运行单击功能时,如果碰巧移动了鼠标,则“不可见”鼠标将返回到可视鼠标的位置。此外,由于可视鼠标不会移动,因此计算机会进入睡眠状态,这破坏了自动化的希望。此外,由于存在此错误,鼠标的任何相对移动都是不可能的,因为它只能相对于可视鼠标(静止的)相对移动。

我试图运行的pyautogui脚本是一个游戏机器人。以前它运行良好,然后我从计算机上删除了Xubuntu并安装了Ubuntu。因此,这是全新安装的Ubuntu中的一个错误,仅做了一些小的更改。

我对Ubuntu安装的更改:

  • 我安装了GNOME桌面环境以代替默认环境(我认为是Unity?)。两者目前都已安装,但我仅从登录屏幕中选择了GNOME
  • 我安装了gnome-tweaks工具,并将触摸板更改为区域模式,并更改了窗口和鼠标指针的外观以形成深色主题。
  • 对于python脚本,我正在运行python3,并且正在使用pip版本18.1。我安装了virtualenvwrapper,并安装了以下软件包:

$ pip freeze
numpy==1.15.4
opencv-python==3.4.3.18
Pillow==5.3.0
PyAutoGUI==0.9.38
PyMsgBox==1.0.6
PyScreeze==0.1.18
PyTweening==1.0.3
six==1.11.0
xlib==0.21

所有其他都是默认的Ubuntu 18.04.1 LTS。有人对我该如何解决有任何想法吗?我将不胜感激。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题。对我来说是韦兰。切换到X后,它起作用了。由于您使用的是 Ubuntu 18.04(默认情况下启用了 Wayland),我认为这是同样的问题。