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

使用Python requests登录站点返回419页面过期状态码如何解决

错误原因

419状态码是Laravel框架的CSRF校验失败/页面过期错误,你的代码里硬编码了抓包得到的固定_token值和Cookie,这两个值都是临时失效的,每次访问登录页都会刷新,用过期值提交请求就会触发419错误。

修正后的代码实现

首先安装依赖:pip install requests beautifulsoup4 lxml

import requests
from bs4 import BeautifulSoup

url = 'https://rates.itgtrans.com/login'

# 保留原有请求头,删除硬编码的cookie字段即可
headers = {
    'authority': 'rates.itgtrans.com',
    'cache-control': 'max-age=0',
    'sec-ch-ua': '"Chromium";v="94", "Google Chrome";v="94", ";Not A Brand";v="99"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Windows"',
    'upgrade-insecure-requests': '1',
    'origin': 'https://rates.itgtrans.com',
    'content-type': 'application/x-www-form-urlencoded',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36',
    'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
    'sec-fetch-site': 'same-origin',
    'sec-fetch-mode': 'navigate',
    'sec-fetch-user': '?1',
    'sec-fetch-dest': 'document',
    'referer': 'https://rates.itgtrans.com/login',
    'accept-language': 'en-US,en;q=0.9'
}

with requests.Session() as s:
    # 第一步:先GET访问登录页,获取最新Cookie和页面中的CSRF token
    resp = s.get(url, headers=headers)
    soup = BeautifulSoup(resp.text, 'lxml')
    # 从登录页的隐藏input标签中提取_token值
    csrf_token = soup.find('input', {'name': '_token'})['value']
    
    # 第二步:组装提交数据,用动态获取的token
    data = {
        '_token': csrf_token,
        'email': '替换为你的实际账号',
        'password': '替换为你的实际密码',
        'button': ''
    }
    
    # 第三步:提交登录请求,Session会自动携带当前会话的Cookie
    login_resp = s.post(url, data=data, headers=headers)
    # 打印状态码和返回内容确认登录结果
    print(login_resp.status_code)
    # 可打印响应文本验证是否登录成功
    # print(login_resp.text)
注意事项
  • 不要硬编码任何临时凭证(Cookie、CSRF令牌),所有凭证通过动态请求获取
  • requests.Session会自动维护整个会话的Cookie状态,不需要手动处理Cookie参数
  • 如果请求失败,可检查账号密码是否正确,或者调整请求头的User-Agent为你当前浏览器的实际UA值

内容的提问来源于stack exchange,提问作者Capitán Planeta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 14:06:04