[Lambda] Activer les demandes d'importation [python]

Choses à faire

↓ Si vous faites cela image.png

↓ je veux que tu sois comme ça image.png

↓ Cependant, ce sera comme ça image.png

{
  "errorMessage": "Unable to import module 'lambda_function': No module named 'requests'",
  "errorType": "Runtime.ImportModuleError"
}

Aperçu de la procédure

Créer un fichier de calque

Travaillez sur le client. Faites simplement fonctionner pip, zippez celui avec le module externe et insérez-le depuis la console de gestion aws

Par exemple, si vous travaillez avec amazon linux2 ...

mkdir python/ 
cd python
yum -y install gcc gcc-c++ kernel-devel python-devel libxslt-devel libffi-devel openssl-devel
yum -y install python-pip
pip install -t ./ requests
cd python
cd ..
zip -r Layer.zip python/

Enregistrer le zip avec Lambda

Travaillez dans AWS Management Console. スクリーンショット 2019-09-29 21.43.44.png Dans "Créer une couche", insérez le fichier Layer.zip que vous avez créé précédemment et vous avez terminé.

Préparation des fonctions

Sélectionnez les calques スクリーンショット 2019-09-29 21.48.17.png Cliquez sur "Ajouter un calque" et le calque que vous avez créé précédemment apparaîtra, alors sélectionnez-le. スクリーンショット 2019-09-29 21.48.30.png

Créer une fonction

lambda_function.py


import requests

def lambda_handler(event, context):
    #Essayez de lancer un GET sur le site de test
    response = requests.get('https://httpbin.org/get', params={'foo': 'bar'})
    return response.json()

Résultat d'exécution


{
  "args": {
    "foo": "bar"
  },
  "headers": {
    "Accept": "*/*",
    "Accept-Encoding": "gzip, deflate",
    "Host": "httpbin.org",
    "User-Agent": "python-requests/2.24.0",
    "X-Amzn-Trace-Id": "Root=1-5f43a5ad-a04c8100f8c999999e8e2e"
  },
  "origin": "913.931.998.950",
  "url": "https://httpbin.org/get?foo=bar"
}

Recommended Posts

[Lambda] Activer les demandes d'importation [python]
Rendre Opencv disponible en Python
[Python] Faire de la fonction une fonction lambda
[Python] Rendre pip disponible sur macOS
python> lien> from __future__ import print_function> Autoriser Python 3.X print () à être utilisé dans Python 2.X
2. Facilitez l'importation
Synthétiser l'importation Python
Rendre OpenCV3 disponible à partir de python3 installé avec pyenv
Rendre DHT11 disponible avec Raspeye + python (Remarque)
Créer des couches Lambda avec Lambda
expression lambda de python ...
Python depuis ou import
importation du module d'origine python
Réessayer avec des requêtes python
Importer tsv avec Python
Créez des tweets ordinaires comme une flotte avec AWS Lambda et Python
Code d'état des requêtes Python
python> Microsecond sleep> import time / usleep = lambda x: time.sleep (x / 1000000.0) / usleep (100)
Comment importer la bibliothèque Python configurée dans EFS dans Lambda
Python> lambda> petites fonctions / fonctions de rappel
Enregistrer des images à l'aide de requêtes python3
Fonctionnement de l'importation de modules Python
Exploitez TwitterBot avec Lambda, Python
Importer dynamiquement des scripts en Python
Importer vtk avec brew python
Rendre iPython disponible sur OSGeo4W
Viser les requêtes du maître de bibliothèque python (18)
Interroger Athena depuis Lambda Python
Rendre Cython disponible sur Windows.
Créer un bookmarklet en Python
Faites une loterie avec Python
PyTorch avec AWS Lambda [importation Lambda]
[Python] Une autre façon d'importer
requêtes python beautifulsoup glob find_all
Problème d'importation de libray Python # Snap7
Comment utiliser Python lambda
Activer le moteur d'analyse morphologique MeCab en Python3 (version mars 2016)