如何在lambda python中使用api
我尝试使用python中的post请求登录到一个网站,通过使用下面的代码传递用户名和密码,成功了如何在lambda python中使用api,python,amazon-web-services,post,aws-lambda,Python,Amazon Web Services,Post,Aws Lambda,我尝试使用python中的post请求登录到一个网站,通过使用下面的代码传递用户名和密码,成功了 import requests with requests.Session() as c: url='http://testing-ground.scraping.pro/login?mode=login' usr='admin' pwd='12345' c.get(url) print(c.cookies) login_data=dict(usr=u
import requests
with requests.Session() as c:
url='http://testing-ground.scraping.pro/login?mode=login'
usr='admin'
pwd='12345'
c.get(url)
print(c.cookies)
login_data=dict(usr=usr,pwd=pwd)
res=c.post(url,data=login_data)
print(res)
page=c.get('http://testing-ground.scraping.pro/login?mode=welcome')
print(page.content)
现在,我想在python的lambda aws中尝试同样的方法(使用post请求登录到同一个网站)。我是lambda aws的初学者,不知道如何在lambda中运行。您必须修改代码才能在lambda环境中运行 为此,您需要一个lambda处理程序函数,如下所述:
请求
。因此,将请求添加到lambda函数的最简单方法是通过lambda层,如使用AWS lambda层的章节所述:
lambda的原始代码版本为(假设设置了请求
层):
我应该在修改代码时使用json.loads()吗?我刚刚读了一些文章,他们使用了json.loads和urllib3。这就是为什么我有点困惑的原因。@lakshmi我添加了一个示例代码。如果您不想使用请求
层,那么可以使用python的内置工具实现http功能。
import requests
def handler(event, context):
with requests.Session() as c:
url='http://testing-ground.scraping.pro/login?mode=login'
usr='admin'
pwd='12345'
c.get(url)
print(c.cookies)
login_data=dict(usr=usr,pwd=pwd)
res=c.post(url,data=login_data)
print(res)
page=c.get('http://testing-ground.scraping.pro/login?mode=welcome')
print(page.content)