首页 > 解决方案 > 如何导入第 3 方 python 库以与胶水 python shell 脚本一起使用

问题描述

我正在尝试导入第 3 方库(datadog)以与胶水 shell 脚本一起使用,但遇到了问题。我已将文件打包为 .egg,并按照此处的说明在胶水作业中给出了它的路径。这最终会抛出一个错误,说 zipimport.ZipImportError: not a Zip file: '/tmp/glue-python-libs/datadog.egg'。当我尝试改用 zip 文件时,它会抛出 ModuleNotFoundError: No module named 'datadog'。如何导入库?

标签: pythonamazon-web-servicesaws-gluedatadog

解决方案


如链接中的文档所示,还支持 WHL 文件。它说:

您可能已经将一个或多个 Python 库打包为 .egg 或 .whl 文件。

这里有一个可用于 DataDog python 库的 .whl 文件:https ://pypi.org/project/datadog/#files 。您可以尝试下载该文件,将其上传到您的 S3 存储桶,并将其用作您的 Glue 作业的 Python 库。使用它可能比尝试构建自己的 .egg 文件更成功。


推荐阅读