AWS Lambda函数中的库加载问题-Python

时间:2018-09-24 20:01:22

标签: python-3.x aws-lambda

我正在为AWS lambda开发python函数。

我的功能可以在本地使用,

 python-lambda-local -f handler app.py event.json -t 30

但是,当我将其部署在 AWS Lambda (带有所有依赖项的zip文件)中时,似乎未加载 objectify lib 。 错误消息:

Unable to import module 'app': cannot import name 'objectify'

这是我的功能的摘录:

# -*- coding: utf-8 -*- 
import sys
import logging
import env_config
import pymysql
import traceback
import json
import requests
#from lxml import objectify
import lxml.objectify
import lxml.etree

1 个答案:

答案 0 :(得分:2)

Lxml使用C语言编译的代码。您需要在Lambda运行的相同环境中预编译该库。阅读以了解更多信息:https://www.azavea.com/blog/2016/06/27/using-python-lxml-amazon-lambda/

这种人已经为您完成了工作。只需下载预编译的库并替换为您的Lambda包即可:https://github.com/JFox/aws-lambda-lxml