问题描述
我正在尝试在网站上搜索“Adrian”一词。我已经明白,首先我必须向网站发送一个请求,在响应中我将有一个 XSRF 令牌,我需要用于第二个请求。据我所知,如果我使用 session.get() 它也会自动为第二个请求保留 cookie。我运行第一个请求,得到 200 个响应,我打印出 cookie,令牌就在那里。我运行第二个请求,我得到一个 400 错误,但如果我打印出第二个请求的标头,令牌就在那里。我不知道哪里出错了。为什么我第二次得到 400?
import requests
session = requests.Session()
response = session.get('https://www.racebets.com/en/horse-racing/formguide')
print(response)
cookies = session.cookies.get_dict()
print(cookies)
XSrftoken = cookies['XSRF-TOKEN']
print(XSrftoken)
response = session.get('https://www.racebets.com/ajax/formguide/search?s=Adrian')
print(response)
print(response.request.headers)
我也尝试跳过会话并在第二个请求中使用 requests.get() 并自己将令牌添加到标头中,但结果是相同的:
import requests
session = requests.Session()
response = session.get('https://www.racebets.com/en/horse-racing/formguide')
print(response)
cookies = session.cookies.get_dict()
print(cookies)
XSrftoken = cookies['XSRF-TOKEN']
print(XSrftoken)
headers = {'XSRF-TOKEN': XSrftoken}
response = session.get('https://www.racebets.com/ajax/formguide/search?s=Adrian',headers=headers)
print(response)
print(response.request.headers)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)