亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法導入模塊“lambda_function”:沒有名為 * 的模塊

無法導入模塊“lambda_function”:沒有名為 * 的模塊

白板的微信 2023-10-31 14:39:03
我正在嘗試運行一個使用附加包的 python lambda 函數。然而,每當我將 .zip 文件上傳到 lambda 控制臺時,我都會收到錯誤:{  "errorMessage": "Unable to import module 'lambda_function': No module named '*'",  "errorType": "Runtime.ImportModuleError"}我按照以下說明進行操作:https://docs.aws.amazon.com/lambda/latest/dg/python-package.html#python-package-dependency它告訴我確保我的包位于我的 lambda 本地目錄中功能:~/my-function$ pip install --target ./package Pillow我沒有使用枕頭。這是他們網站上的示例代碼。我也沒有使用您可以在 Lambda 上訪問的包。這是我從 github 獲得的,需要附加到我的應用程序中。起初這不起作用,所以我創建了一個setup.cfg文件并添加了:[install]prefix= 現在,當我使用pip命令安裝到目標時,它可以工作(并且還添加了除我的包之外的其他文件夾的負載,但我認為需要它們,所以我將它們留在那里。當我進入目錄時,包就在那里。然后我找到了這個答案:https://stackoverflow.com/a/12493244/5675125,這表明可能沒有包含一些隱藏文件,這就是我應該壓縮它們的方式。又出現同樣的錯誤。我如何讓 lambda 識別出我的包裹在那里。
查看完整描述

1 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

我剛剛創建了自定義圖層instabot,可以確認它是否有效。

使用的技術包括最近的AWS 博客中描述的docker 工具

  • 如何使用 Docker 模擬 Lambda 環境創建 Lambda 層?

于是針對這個問題,我驗證?如下:

  1. 創建空文件夾,例如mylayer.

  2. 轉到該文件夾并創建requirements.txt包含以下內容的文件

instabot
  1. 運行以下 Docker 命令:

docker?run?-v?"$PWD":/var/task?"lambci/lambda:build-python3.8"?/bin/sh?-c?"pip?install?-r?requirements.txt?-t?python/lib/python3.8/site-packages/;?exit"
  1. 刪除numpy

要求非常大instabotnumpy因此,我們在創建圖層之前手動將其刪除。我們將使用numpyAWS 提供的層。

sudo?rm?-rvf?./python/lib/python3.8/site-packages/numpy*

如果我們不刪除 numpy,該層將>50MB。

  1. 創建圖層為 zip:

zip?-9?-r?mylayer.zip?python
  1. mylayer.zip在AWS控制臺中創建基于的lambda層。不要忘記指定Compatible runtimespython3.8.

  2. 向您的函數添加兩層:

第一個是AWSLambda-Python38-SciPy1xAWS 隨 numpy 提供的,第二個是我們上面創建的。所以你的函數將使用兩層。

  1. 使用以下 lambda 函數測試 lambda 中的層:

import json


from instabot import Bot


def lambda_handler(event, context):

? ? # TODO implement

? ??

? ? bot = Bot(base_path='/tmp')

? ??

? ? return {

? ? ? ? 'statusCode': 200,

? ? ? ? 'body': json.dumps('Hello from Lambda!')

? ? }


查看完整回答
反對 回復 2023-10-31
  • 1 回答
  • 0 關注
  • 197 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號