[英]Use AWS lambda function to convert S3 file from zip to gzip using boto3 python
[英]How to Write an AWS Python3 Lambda Function using a zip file on Windows OS
我已經查看了有關使用Windows操作系統上的Lambda管理控制台從zip文件創建python3 lambda函數的教程或幫助。 不幸的是,我有點不走運。 這是我在的地方......
按照AWS網站上的說明操作: https : //docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html
我的Python代碼:
import twilio
def lambda_handler(event, context):
account_sid = '##########################'
auth_token = '###########################'
client = Client(account_sid, auth_token)
message = client.messages.create(
to = '###########',
from_ = '###########',
body = "Test")
return("success")
twilio
庫,因此我根據上面鏈接中的說明將其安裝在我的'APP'文件夾的根目錄中。 具體說明是“使用pip安裝任何庫。再次,在目錄的根級別安裝這些庫。”: pip install twilio -t \\path\\to\\directory
然后我根據引用的指令“壓縮”APP的內容,“壓縮project-dir目錄的內容,這是你的部署包。壓縮目錄內容,而不是目錄。” 這將創建一個名為“twilio_test”的zip文件。
然后我轉到AWS lambda管理控制台,上傳zip文件'twilio_test'。
這是我感到困惑的地方。 處理程序應該是什么?
到目前為止,我是否正確完成了所有工作? 如果沒有,安裝twilio,壓縮文件然后在AWS lambda中使用它的最佳方法是什么?
雖然說AWS lambdas本身難以使用是不合適的,但我可以說我天生就很困惑。
最初我認為用anaconda進行pip安裝是個問題,所以我使用了powershell。 這有效,但只是因為我指定了完整的文件路徑,正如@ sid8491在這里指出的那樣。
我原來用過:
<C:\ProgramData\Anaconda3> C:\Users\userName> pip install twilio -t \Desktop\APP
這沒用
但使用:
<C:\ProgramData\Anaconda3> C:\Users\userName> pip install twilio -t C:\Users\userName\Desktop\APP
做了
這將適用於powershell或anaconda
您應該將處理程序設置為python_file_name.function_name
。 所以在你的情況下它應該是twilio_test.lambda_handler
。
從文檔 :
...您在Python代碼中指定函數名稱,以在創建Lambda函數時用作處理程序。 有關使用控制台創建Lambda函數的說明,請參閱創建簡單Lambda函數 。 在此示例中, 處理程序是hello_python.my_handler(file-name.function-name) ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.