pip3 install pyautogui 失败,错误代码为 1 Mac OS

pip3 install pyautogui fails with error code 1 Mac OS

我尝试安装 autogui python 扩展:

pip3 install pyautogui

此安装尝试导致以下错误消息:

Collecting pyautogui
  Using cached PyAutoGUI-0.9.33.zip
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/00/zcr6mkx90hg7kr4x_ks6nhhw0000gn/T/pip-build-edy15oyn/pyautogui/setup.py", line 6, in <module>
        version=__import__('pyautogui').__version__,
      File "/private/var/folders/00/zcr6mkx90hg7kr4x_ks6nhhw0000gn/T/pip-build-edy15oyn/pyautogui/pyautogui/__init__.py", line 110, in <module>
        from . import _pyautogui_osx as platformModule
      File "/private/var/folders/00/zcr6mkx90hg7kr4x_ks6nhhw0000gn/T/pip-build-edy15oyn/pyautogui/pyautogui/_pyautogui_osx.py", line 4, in <module>
        import Quartz
      File "/usr/local/lib/python3.5/site-packages/Quartz/__init__.py", line 5, in <module>
        import objc
      File "/usr/local/lib/python3.5/site-packages/objc/__init__.py", line 18, in <module>
        _update()
      File "/usr/local/lib/python3.5/site-packages/objc/__init__.py", line 15, in _update
        import objc._objc as _objc
    ImportError: dlopen(/usr/local/lib/python3.5/site-packages/objc/_objc.cpython-35m-darwin.so, 2): Symbol not found: _PyObject_REPR
      Referenced from: /usr/local/lib/python3.5/site-packages/objc/_objc.cpython-35m-darwin.so
      Expected in: flat namespace
     in /usr/local/lib/python3.5/site-packages/objc/_objc.cpython-35m-darwin.so

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/00/zcr6mkx90hg7kr4x_ks6nhhw0000gn/T/pip-build-edy15oyn/pyautogui

我的MacOS版本是OSX El Capitan 10.11.3,我的Python3版本是3.5.1,我的pip3版本是pip 8.0。 2.

Whosebug(), but the fix does not apply to my problem; I have already installed "pillow". Also, I have read the documentation (https://pypi.python.org/pypi/PyAutoGUI)上好像有类似的问题,安装了pyobjc-core和pyobjc。设置工具已安装并且是最新的。

有谁知道如何修复此错误(并安装 pyautogui)?我认为错误可能源于,因为 _PyObject_REPR is missing in Python 3.5.1.

我找到了 a workaround。 "Kentzo" 的这段代码为我解决了这个问题:

pip3 install https://github.com/GreatFruitOmsk/pyobjc-core/releases/download/v3.0.5.dev0/pyobjc-core-3.0.5.tar.gz

由于代码不是我写的,请自行承担使用此变通方法的风险。

已解决

运行:

1. sudo pip3 install pil

2. sudo pip3 install Pillow

3. sudo pip3 install pyautogui

宾果!安装没有错误

如果您像我一样安装 pyautogui 时没有成功,以下是我为解决该问题所做的工作:

  1. 从 Mac App Store 安装 Xcode。这是安装 PyObjC 的要求。详情可见here.
  2. sudo pip3 install pyobjc-core
  3. sudo pip3 install pyobjc
  4. sudo pip3 install Pillow
  5. sudo pip3 install pyautogui

步骤 2、3 和 5 详细 here

第 4 步描述 ,另一个 Whosebug post。

我在 macOS High Sierra(10.13.4) 上工作的步骤顺序:

  • 从 AppStore 安装 Xcode

  • 激活虚拟环境(如果需要)

  • pip3 安装 pyobjc-core

  • pip3 安装 pyobjc-framework-Quartz

  • pip3 安装镜像

  • pip3 安装 pyautogui