You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Lambda中导入PIL模块报错:cannot import name '_imaging' from 'PIL' 问题求助

AWS Lambda中导入PIL模块报错:cannot import name '_imaging' from 'PIL' 问题求助

真的要被逼疯了——我知道社区里有类似场景的问题,但试了好几种解决方案都不管用,所以只能自己来求助,把完整背景都列出来。

我在AWS上搭了个超简单的流程:把图片传到S3桶,Lambda触发后处理图片,再传到另一个桶。

所有配置(Terraform、Python代码)都弄好了,但每次Lambda触发都会报这个错:

[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': cannot import name '_imaging' from 'PIL' (/var/task/PIL/__init__.py)

需要重点说明的情况:

  • 我是在Windows上开发的(再也不会这么干了!!!)
  • 试过多个Python运行时版本:3.13、3.12、3.10、3.9
  • Lambda架构是x86_64

我的Python代码开头就一行,就是这行搞出大问题:

from PIL import Image

我已经尝试过的方法:

  • 切换Python运行时版本(当然试过了)
  • 创建包文件夹,在里面安装Pillow,然后和Lambda代码一起打包压缩
  • 使用Lambda层(看起来是最流行、简单快捷的方案),用了对应的ARN:arn:aws:lambda:eu-west-2:770693421928:layer:Klayers-p39-pillow:1
  • 用Docker运行Amazon Linux容器(命令是docker run -it --rm -v ${PWD}:/app --workdir /app amazonlinux:2 bash),在里面创建包文件夹、安装Pillow依赖,再和代码一起打包压缩

不管试哪种方法,都会报上面那个错。

补充一句:这本来只是个小项目,预计花一两晚搞定,所以最好不要太复杂的解决方案(除非真的没别的办法了)。

如果有人能复现我的场景,然后找到解决办法,我会非常感激。哪怕只是有人复现后也遇到同样的问题,我也谢天谢地——至少说明我不是在瞎折腾。

谢谢大家!


备注:内容来源于stack exchange,提问作者user8981199

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 08:25:29