![](/img/trans.png)
[英]AWS Glue python shell job can call AWS glue spark job
[英]How can I import external python libraries in python shell AWS Glue job
我一直在尝试在 aws glue python shell 作业中导入外部 python 库。
处理中 ./glue-python-libs-cq4p0rs8/pyodbc-4.0.32-cp310-cp310-win_amd64.whl 安装采集包:pyodbc 安装成功 pyodbc-4.0.32
警告:目录“/.cache/pip”或其父目录不属于当前用户或不可写。 缓存已被禁用。 检查该目录的权限和所有者。 如果使用 sudo 执行 pip,您可能需要 sudo 的 -H 标志。
ModuleNotFoundError 中的文件“/tmp/glue-python-scripts-g_mt5xzp/Glue-ETL-Dev.py”,第 2 行:没有名为“pyodbc”的模块
我正在从这里下载轮文件: https ://pypi.org/project/pyodbc/#files
无论我在胶水作业中引用了多少个版本的 whl 文件,它总是会引发相同的错误。
谁能告诉我哪里出了问题?
我曾尝试遵循 AWS 官方文档中的这些指南 [1]、[2],但在导入某些库(例如 psycopg2)时遇到了一些问题。 最后,我按照 AWS 博客 [3] 中本教程的步骤成功导入了所需的库。 该博客是西班牙语的,但也许您可以设法翻译它。
基本上他们所做的是创建一个 setup.py 脚本,在该脚本上定义所需的库。 之后,他们使用这些库生成一个 .whl 文件,并将该文件上传到 s3 存储桶,Glue Python Shell 脚本从中获取所需的库。
[2] https://docs.aws.amazon.com/glue/latest/dg/add-job-python.html#create-python-extra-library
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.