Импортировать модуль Python в AWS Lambda

1

Я выполнил все шаги в документации: https://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html

  1. создайте каталог.

  2. Сохраните все исходные файлы Python (файлы.py) на корневом уровне этого каталога.

  3. Установите любые библиотеки, используя pip на корневом уровне каталога.

  4. Заблокировать содержимое каталога project-dir)

Но после того, как я загрузил zip файл в лямбда- функцию, я получил сообщение об ошибке при проверке скрипта

мой код:

    import psycopg2
    #my code...

Ошибка:

    Unable to import module 'myfilemane': No module named 'psycopg2._psycopg'

Я не знаю, где суффикс '_psycopg' из...

Любая помощь по этому поводу?

  • 0
    Какую операционную систему вы использовали для создания библиотеки psycopg2? Просто любопытно - вы должны использовать Linux, чтобы это работало
  • 0
    @ KiteCoder Вы напомнили мне ... Я использовал систему Windows ... Я попробую с Linux ... спасибо
Теги:
amazon-web-services
aws-lambda

2 ответа

0
Лучший ответ

Я считаю, что это вызвано тем, что psycopg2 необходимо собрать скомпилированные со статически связанными библиотеками для Linux. Для получения дополнительной информации об этой проблеме обратитесь к разделу Использование psycopg2 с Lambda для обновления Redshift (Python). Другая [ссылка] [1] о проблемах компиляции psycopg2 на OSX.

Есть несколько решений, но в основном это сводится к установке библиотеки на машине Linux и использованию ее в качестве библиотеки Psycopg2 в вашем загрузочном пакете.

0

Вы используете собственные библиотеки с лямбдой. У нас была подобная проблема, и вот как мы ее решили.

Вращайте машину с AMS с поддержкой AWS, которая запускает вашу настоящую лямбду.

https://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html

Поскольку это письмо,

Название AMI: amzn-ami-hvm-2017.03.1.20170812-x86_64-gp2

Полная документация по установке собственных модулей на ваш python lambda.

https://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html

Установите необходимые модули, необходимые для вашей лямбды,

pip install module-name -t/path/to/project-dir

и подготовьте свой пакет для загрузки вместе с собственными модулями в среде lambda ami.

Надеюсь это поможет.

  • 0
    Я попробую, спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню