gpt4 book ai didi

python - 使用python请求登录laravel app

转载 作者:太空宇宙 更新时间:2023-11-03 15:36:31 25 4
gpt4 key购买 nike

我想用python请求登录一个Laravel应用,并获取登录后第一页的内容,我试过:

import requests
import re

URL = 'laravelapp.url'

session = requests.session()

front = session.get(URL)
csrf_token = re.findall(r'<input type="hidden" name="_token" value="(.*)"', front.text)[0]

print(csrf_token)
print(session.cookies['XSRF-TOKEN'])

payload = {
'email': 'email@example.com',
'password': 'testtest',
'_token': csrf_token,
}

r = requests.post(URL + '/login', data=payload)

print(r)

但不幸的是,这只返回 419 错误。那么csrf token好像有什么问题?但我不明白出了什么问题,cookie 应该由 .sessions() 管理,我从登录表单中提取了 csrf token 并将其作为参数放入发布数据。那么,缺少什么?

最佳答案

您应该随请求一起发送 cookie,如下所示:

import requests
import re

URL = 'laravelapp.url'

session = requests.session()

front = session.get(URL)
csrf_token = re.findall(r'<input type="hidden" name="_token" value="(.*)"',
front.text)[0]

cookies = session.cookies

payload = {
'email': 'email@example.com',
'password': 'testtest',
'_token': csrf_token,
}

r = requests.post(URL + '/login', data=payload, cookies=cookies)

print(r.text)

关于python - 使用python请求登录laravel app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54498026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com