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

使用Python requests时如何从请求payload中提取csrf token?

从纯文本payload中提取csrf token的实现方案

你给出的示例是每行键: 值格式的纯文本payload,以下是两种可直接使用的实现方式:

方法1:逐行遍历解析

适合payload格式固定、无特殊嵌套的场景,逻辑简单易懂:

import requests

# 第一步:请求获取包含csrf的响应内容
pre_resp = requests.get("你之前请求的接口地址")
payload_content = pre_resp.text

csrf_token = None
for line in payload_content.splitlines():
    stripped_line = line.strip()
    # 跳过空行
    if not stripped_line:
        continue
    # 匹配csrf_token开头的行
    if stripped_line.startswith("csrf_token:"):
        # 按第一个冒号分割,取后面的token值并去除首尾空白
        csrf_token = stripped_line.split(":", 1)[1].strip()
        break

方法2:正则匹配提取

适合格式有少量空格变动、不想写遍历逻辑的场景,代码更简洁:

import requests
import re

pre_resp = requests.get("你之前请求的接口地址")
payload_content = pre_resp.text

# 正则匹配csrf_token后面的所有内容,自动忽略前后空白
match_res = re.search(r"csrf_token:\s*(.+)", payload_content)
if match_res:
    csrf_token = match_res.group(1).strip()

补充说明

  • 如果实际返回的payload是JSON格式,无需手动解析,直接调用响应的json方法取值即可:
    pre_resp = requests.get("你之前请求的接口地址")
    csrf_token = pre_resp.json()["csrf_token"]
    
  • 注意确认实际返回内容中csrf对应的键名,如果是csrfToken、X-CSRF-Token等其他写法,对应修改匹配规则即可
  • 提取完成后可先打印csrf_token确认取值正确,避免后续请求校验失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:54:05