You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Beautiful Soup登录返回200状态码但未实际登录的问题

登录失败排查与修复方案
  • 确认请求数据格式:多数现代API要求JSON格式提交数据,你当前用data=payload是表单编码提交,尝试改用JSON格式发送请求:
response = s.post(URL, json=payload, headers=headers)
  • 补充关键请求头:仅User-Agent可能不够,需模拟浏览器实际发送的请求头,比如添加Content-Type(JSON提交时必填)、Origin、Referer等:
headers = {
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36',
    'Content-Type': 'application/json',
    'Origin': 'https://www.liveauctioneers.com',
    'Referer': 'https://www.liveauctioneers.com/'
}
  • 检查响应实际内容:不要只依赖200状态码,打印response.json()或response.text查看返回信息,可能包含密码错误、缺少参数、需要验证码等提示。

  • 处理CSRF验证:该网站大概率需要CSRF令牌才能登录,先访问登录相关页面获取令牌,再加入请求payload:

# 先获取登录页面的CSRF令牌
login_page = s.get('https://www.liveauctioneers.com/login')
# 从cookie或页面HTML中提取令牌,示例从cookie获取
csrf_token = s.cookies.get('csrf-token')
payload['csrf-token'] = csrf_token
  • 验证会话有效性:登录后用同一个session访问目标搜索页面,打印页面内容,确认是否包含登录后可见的成交价格信息,以此判断登录是否真正成功。

内容的提问来源于stack exchange,提问作者flowover9

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 08:52:40