【问题标题】:Failing to import SQLAlchemy and Pymysql into AWS Glue Python Shell script无法将 SQLAlchemy 和 Pymysql 导入 AWS Glue Python Shell 脚本
【发布时间】:2020-05-22 08:46:54
【问题描述】:

我有一个导入 3 个库的 Python 脚本:

import pymysql
import pandas as pd
from sqlalchemy import create_engine

我计划在 AWS Glue 上运行 Python Shell。在thisthis 文档页面之后,我创建了一个setup.py

from setuptools import setup

setup(name="pylibmodule",
      version="0.1",
      packages=[],
      install_requires=['sqlalchemy==1.3.9','pandas==0.25.3','pymysql==0.9.3']
  )

我运行 python setup.py bdist_wheel,将生成的 pylibmodule-0.1-py3-none-any.whl 文件放入 S3 存储桶,然后在 Glue Job 设置中指定存储桶位置。当我运行作业脚本时,它产生了一个错误。

经过调查,发现我已经成功导入pandas模块,但是导入sqlalchemy和pymysql失败。

ModuleNotFoundError: No module named 'sqlalchemy'
ModuleNotFoundError: No module named 'pymysql'

我做错了什么?

【问题讨论】:

  • 根据文档,我认为导入应该来自命名模块?即,您可以尝试“从 pylibmodule 导入 sqlalchemy”而不是“导入 sqlalchemy”。我还希望你的 python 脚本与 whl 文件在同一个文件夹中? (根据第 4 点)

标签: sqlalchemy aws-glue pymysql python-wheel


【解决方案1】:

我今天早上再次运行了这项工作,没有更改设置和脚本中的任何内容。它突然起作用了。我认为我昨晚收到的错误是由于 Glue 端的一些缓存残留物造成的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-07
    • 2019-02-21
    • 1970-01-01
    • 1970-01-01
    • 2022-01-09
    • 2020-12-01
    • 2021-05-31
    • 1970-01-01
    相关资源
    最近更新 更多