我正在尝试将我的Python代码上传到AWS Lambda。我一直在按照这个指南创建部署包(https://docs.aws.amazon.com/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html)。
我在桌面上创建了一个名为“project-dir”的文件夹,并将Python文件“Twilio_Alerts_AWS.py”移动到该文件夹中。 我使用了以下命令:
为了将所有的库安装到文件夹中,我首先选中了所有内容,并通过右键点击压缩按钮,生成一个名为“archive”的压缩文件。
然后,我将
不确定我做错了什么。
以下是我正在尝试上传的代码:
我在桌面上创建了一个名为“project-dir”的文件夹,并将Python文件“Twilio_Alerts_AWS.py”移动到该文件夹中。 我使用了以下命令:
pip install module-name -t /path/to/project-dir
为了将所有的库安装到文件夹中,我首先选中了所有内容,并通过右键点击压缩按钮,生成一个名为“archive”的压缩文件。
然后,我将
'archive.zip'
文件放入AWS S3存储桶中,并在AWS Lambda中调用。但是,尽管我已经将numpy库安装到该文件夹中,仍然出现错误无法导入模块'Twilio_Alerts_AWS':缺少必需的依赖项['numpy']
。不确定我做错了什么。
以下是我正在尝试上传的代码:
from twilio.rest import Client
import time
import datetime
import requests
import pandas as pd
from pandas.io.json import json_normalize
def lambda_handler(event, context):
# Your Account SID from twilio.com/console
account_sid = "xxx"
# Your Auth Token from twilio.com/console
auth_token = "xxx"
client = Client(account_sid, auth_token)
current_datetime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
headers = {
'Accept': 'application/json',
'Content-Type': 'application/json',
'x-api-key': 'xxx',
'x-organization-id': 'xxx',
'x-facility-id': 'xxx',
'x-user-id': 'xxx',
}
orders_staging_api_call = requests.get('URL', headers=headers, verify=False)
consumers_staging_api_call = requests.get('URL', headers=headers, verify=False)
inventory_staging_api_call = requests.get('URL', headers=headers, verify=False)
lst = ["+1234567890"]
##Consumers API Alert
if consumers_staging_api_call.status_code !=200:
for i in lst:
message = client.messages.create(
to=i,
from_="+1234567890",
body="API connection between A and B has failed for: Consumers.Datetime of check:{}".format(current_datetime))
time.sleep(5)
print(message.sid)
else:
print('done')
编辑:使用OSX电脑。