Error using PIL in a virtualenv in IBM Cloud Functions: ModuleNotFoundError: No module named 'PIL'

Error using PIL in a virtualenv in IBM Cloud Functions: ModuleNotFoundError: No module named 'PIL'

我正在尝试使用 PIL 在 Python 中定义 IBM Cloud Function。

from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont

img = Image.new('RGB', (width, height))
d = ImageDraw.Draw(img)
...

我使用 Pycharm 进行开发。在 Pycharm 中,在我 Python 运行 的 site-packages 下,我看到了 PILPillow-4.3.0:dist-info。当我 运行 我的代码从 Pycharm 本地运行时,它工作正常。

我用相同的 Python 运行 时间和我的代码构建了一个 virtualenv 以包含不属于 Cloud Functions 的依赖项 Python 运行时间。检查 virtualenv,我可以看到相同的库:

\virtualenv
  \bin
  \include
  \lib
    \python3.6 
      \site-packages
        ...
        \PIL
        \Pillow-4.3.0:dist-info
        ...

但是,当我用这个 virtualenv 运行 时间将我的代码作为 Cloud Function 执行时,我看到一个错误:ModuleNotFoundError: No module named 'PIL'.

我认为错误出在我构建 virtualenv 的方式上,但我不知所措,因为看起来那里有相同的库。

好的,我解决了眼前的问题。这是我的部署脚本中的一个简单错误。虽然我的 virtualenv 内容在本地看起来不错,但我遇到了一个部署错误,导致了一些与我打算部署的内容不同的内容。现在,下一个错误:ImportError: cannot import name '_imaging'