Я пытаюсь загрузить свой код 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' в папкуЯ использовал команду:
pip install module-name -t /path/to/project-dir
, чтобы установить все мои библиотеки в папку. Затем я выделил все и нажал «Сжать», щелкнув правой кнопкой мыши по выделенным файлам в папке. Это создаст один архивированный файлпод названием «архив»
Я поместил 'archive.zip'
в корзину S3 на AWS и вызвал ее в AWS Lambda. Я продолжаю получать ошибку Unable to import module 'Twilio_Alerts_AWS': Missing required dependencies ['numpy']
, даже если я установил 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 machine.