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

Linux命令行下能否获取Firefox DevTools中的数据?

自动获取POST请求Cookies并执行curl请求的bash脚本方案

核心思路

先模拟触发生成认证Cookies的POST请求(比如登录请求),将Cookies保存到本地文件,再用该Cookies文件发起目标页面的请求。


1. 模拟POST请求获取并保存Cookies

用curl发送和浏览器一致的POST请求,将响应返回的Cookies存入本地文件:

# 替换为实际的登录接口URL、请求参数和请求头
curl -c cookies.txt \
  -X POST \
  -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "username=你的账号&password=你的密码" \
  https://目标网站域名/login
  • 参数说明:
    • -c cookies.txt:将响应中的Cookies写入cookies.txt文件
    • -X POST:指定请求方法为POST
    • -H:添加请求头(需和浏览器DevTools中捕获的请求头一致,比如User-Agent、Referer等)
    • -d:POST请求的表单数据(需和浏览器中提交的参数完全匹配)

2. 使用保存的Cookies发起目标请求

加载已保存的Cookies文件,发起目标页面的请求:

curl -b cookies.txt \
  -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
  https://目标网站域名/目标页面路径
  • 参数说明:-b cookies.txt:从cookies.txt文件中加载Cookies

关键注意事项

  • 匹配浏览器请求信息:所有请求头、表单参数必须和DevTools中捕获的完全一致,比如部分网站需要Referer、X-Requested-With等特殊请求头,遗漏会导致认证失败。
  • 处理CSRF令牌:如果网站存在CSRF验证,需要先GET登录页面提取令牌,再带入POST请求:
    # 提取CSRF令牌
    csrf_token=$(curl -s https://目标网站域名/login | grep -o 'name="csrf_token" value="[^"]*"' | cut -d '"' -f 4)
    
    # 携带令牌发送POST请求
    curl -c cookies.txt \
      -X POST \
      -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
      -H "Content-Type: application/x-www-form-urlencoded" \
      -d "username=你的账号&password=你的密码&csrf_token=$csrf_token" \
      https://目标网站域名/login
    
  • 调试排查:添加-v参数(如curl -v -c cookies.txt ...)查看详细请求响应,定位认证失败原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 02:52:10