python 无法从“PIL”导入名称“_imaging”

v440hwme  于 2023-01-08  发布在  Python
关注(0)|答案(3)|浏览(274)

我正在运行这个代码:

import pyautogui
import time
from PIL import _imaging
from PIL import Image
import pytesseract

time.sleep(5)
captura = pyautogui.screenshot()
codigo = captura.crop((872, 292, 983, 337))
codigo.save(r'C:\autobot_wwe_supercard\imagenes\codigo.png')
time.sleep(2)
pytesseract.pytesseract.tesseract_cmd = r'C:\Program     
Files\Tesseract-OCR\tesseract'
print(pytesseract.image_to_string(r'D:\codigo.png'))

弹出以下错误:导入错误:无法从"PIL"导入名称"* imaging"(C:\用户\常用\应用数据\漫游\Python\Python38\站点包\PIL_* init**. py)
我在控制台中安装了pillow,pip安装了pillow
我用pip install pytesseract在控制台中安装了pytesseract

r3i60tvu

r3i60tvu1#

看起来好像很多PIL ImportErrors可以简单地通过卸载并根据此source重新安装Pillow来修复,您的具体问题可以在here中找到。
尝试以下三个命令:

pip uninstall PIL
pip uninstall Pillow
pip install Pillow
7vux5j2d

7vux5j2d2#

我需要 PyCharm 中的 Pillow 和Python3.9。Pillow安装在Python3.8中。可能是作为用户。PyCharm可以在Py3.8中找到它,但在Py3.9中找不到
这解决了我的问题:

sudo python3.9 -m pip install Pillow --upgrade

用脚本应该运行的那个python版本升级为sudo。如果你只想在虚拟环境中运行它或者作为实际用户运行它,也许不需要 sudo

emeijp43

emeijp433#

PIL有一些二进制依赖项,这些依赖项与构建它们所针对的Python版本绑定在一起。
在我的例子中,解决方案是编辑Amazon Lambda函数的运行时设置,并将其更改为与我的开发环境相匹配的旧版本Python。
如果为不兼容的CPU架构安装了pillow,则会出现相同的错误。

相关问题