【问题标题】:Pyautogui screenshot - NameError: name 'Image' is not definedPyautogui 截图 - NameError: name 'Image' is not defined
【发布时间】:2018-10-28 03:29:40
【问题描述】:

我正在尝试在 OSX 10.11 上将pyautogui 的屏幕截图功能与 Python 3.6.5 一起使用。

>>> import pyautogui
>>> image = pyautogui.screenshot()

我明白了:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyscreeze/__init__.py", line 331, in _screenshot_osx
    im = Image.open(tmpFilename)
NameError: name 'Image' is not defined

我的理解是 pyscreeze 由于某种原因未能从 Pillow 获得名称 Image。我尝试更新pyautogui(它是最新的),然后重新安装pyautogui,它带有它的所有依赖项,包括pyscreezePillow

我发现 this question 有同样的问题,但在那里工作的修复(重新安装)对我不起作用。

【问题讨论】:

  • 已解决:我通过将 Pillow 从 5.1.0 降级到 5.0.0 并将 pyscreez 从 0.1.14 降级到 0.1.13 来解决这个问题。猜猜其中一个引入了一些东西,弄乱了 pyautogui 功能。

标签: python python-3.x python-imaging-library osx-elcapitan pyautogui


【解决方案1】:

pip install Pillow==0.1.13

因为 Image 是 PIL 的模块

【讨论】:

    【解决方案2】:

    pip3 uninstall pyautoguy

    pip3 uninstall Pillow

    然后重新安装模块并重新启动编辑器。

    【讨论】:

      猜你喜欢
      • 2017-07-03
      • 2022-12-02
      • 2013-04-09
      • 1970-01-01
      • 2020-11-07
      • 2017-01-09
      • 2017-06-14
      • 2023-03-11
      相关资源
      最近更新 更多