如何修复 PyAutoGUI AttributeError

How to fix PyAutoGUI AttributeError

我一直在尝试使用非常简单的代码让 PyAutoGUI 单击屏幕底部的应用程序之一。但是,每当我尝试 运行 这段代码时,我都会收到一个错误,我认为它来自我正在使用的 PyAutoGUI 模块。代码是:

    import pyautogui as pag
    pag.click(500, 1100)

错误是:

File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.7/site-packages/pyautogui/__init__.py", line 588, in wrapper
    returnVal = wrappedFunction(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/pyautogui/__init__.py", line 978, in click
    platformModule._multiClick(x, y, button, clicks)
  File "/usr/local/lib/python3.7/site-packages/pyautogui/_pyautogui_osx.py", line 516, in _multiClick
    core_graphics.CGEventPost(kCGEvent.Tap.value, mouseEvent)
  File "/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/enum.py", line 349, in __getattr__
    raise AttributeError(name) from None
AttributeError: Tap

有什么解决办法吗?

好的,我明白了。 pyautogui 模块中还有另一个命令,名为 pyautogui.mouseDown() 和 pyautogui.mouseUp()。如果您按顺序使用这些命令而不是 pyautogui.click() 它应该可以工作。
工作代码:

import pyautogui as pag
pag.mouseDown(500, 1100, button='left')
pag.mouseUp(500, 1100, button='left')

我是 PyAutoGUI 的创建者。当我们更改 macOS 的依赖项时,这个错误发生在几个版本上。这已在 PyAutoGUI 的更高版本中修复,因此只需 运行 pip3 install -U pyautogui

试试这个

import pyautogui

pyautogui.moveTo(500, 1100, duration=1)
pyautogui.click()