告别F12!session-capture:一键抓取网站完整认证会话
2026/8/2 7:40:57 网站建设 项目流程

session-capture:告别 F12,一键抓取网站完整认证会话全解

一、工具简介

session-capture是开源工具(Chrome 插件 + Python CLI),解决传统手动抓会话的繁琐流程:F12→Application 复制 Cookie、LocalStorage→Network 查找 CSRF 令牌→手动拼接请求配置整套操作,浏览器登录网页后点击一下即可导出全套认证上下文

  • Chrome 插件商店:Session Capture Exporter
  • 核心价值:一次性采集 Cookie、LocalStorage、SessionStorage、自动嗅探 CSRF Token、常用请求头(Referer、UA)

采集的完整认证数据

  1. 全部域名绑定 Cookies(有效期、Domain、Path、Secure、HttpOnly 完整属性)
  2. LocalStorage / SessionStorage 本地存储鉴权数据
  3. 自动解析页面 CSRF(meta 标签、hidden 输入框、前端 JS 变量三种来源)
  4. 自动携带浏览器真实 User-Agent、Referer 等关键请求头

导出格式(适配爬虫 / 接口测试)

JSON、Env 环境变量、Netscape Cookie 文件、Curl 命令四种主流格式,一键复制 / 下载文件。

二、两种使用方式:Chrome 插件(日常) + CLI 命令行(自动化)

方式 1:Chrome 插件可视化使用(最常用)

  1. 安装插件:Chrome 网上应用店搜索Session Capture Exporter安装
  2. 正常在网页完成账号登录,保持登录状态(不要关闭标签页)
  3. 点击浏览器右上角插件图标,弹出面板直接点击【Capture】
  4. 选择导出格式:
    • 爬虫开发:选JSON,Python/JS 请求直接加载会话
    • 终端调试:选Curl,复制命令直接发带登录态请求
    • 项目配置:选.env,写入项目环境文件
  5. 一键复制剪贴板 或 下载本地文件保存会话

方式 2:Python CLI 命令行(脚本自动化、服务器使用)

1)安装

bash

pip install session-capture
2)基础抓取命令(拉起浏览器自动登录后抓取会话)

bash

# 拉起浏览器访问目标地址,手动登录,回车自动导出会话json capture capture https://target-web.com
3)导出指定格式并保存文件

bash

# 导出curl格式到txt文件 capture capture https://xxx.com --format curl -o session_curl.txt # 导出标准cookie netscape文件(适配requests、playwright) capture capture https://xxx.com --format netscape -o cookies.txt
4)读取已保存会话复用请求

bash

capture load session.json

三、导出会话的实际落地用法

1、Python requests 载入导出的 JSON 会话

python

运行

import requests import json with open("session.json", "r", encoding="utf-8") as f: session_data = json.load(f) session = requests.Session() # 灌入cookie for cookie in session_data["cookies"]: session.cookies.set(cookie["name"], cookie["value"], domain=cookie["domain"]) # 带上CSRF、请求头 headers = session_data["headers"] resp = session.get("需要登录的接口地址", headers=headers)

2、Curl 格式直接复制终端运行

插件导出的 curl 自带完整 Cookie + 鉴权头,粘贴终端可直接请求需要登录的接口,无需手动补参。

3、Playwright/Puppeteer 导入 Netscape Cookie 文件

python

运行

from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch(headless=False) context = browser.new_context(storage_state="cookies.txt") page = context.new_page() page.goto("目标站点") # 页面自带登录状态,无需二次登录

四、对比传统 F12 手动抓取的优势

表格

操作原生 F12 手动session-capture 一键抓取
操作步骤5~10 步,多处切换面板复制点击一次完成采集
CSRF 令牌自己在源码 / 接口里查找,极易遗漏全自动多位置匹配提取
数据完整性容易漏掉 HttpOnly Cookie、Storage 字段全盘读取浏览器安全存储数据
格式适配复制后手动拼接 JSON/Curl开箱即用四种标准格式
会话时效性Cookie 刷新需要重新复制随时重新一键捕获最新会话

五、安全注意事项(重中之重)

  1. 会话文件包含账号完整登录凭证,禁止上传到公网、Git 仓库,本地私密存放;
  2. 公用电脑使用后,及时清除导出的会话文件;
  3. 银行、支付、企业后台等高敏感站点,谨慎导出会话,避免凭据泄露;
  4. HttpOnly 类型 Cookie 无法被前端 JS 读取,该工具依托浏览器底层 API 可正常获取,符合浏览器安全规则。

六、常见问题

  1. 抓取后接口依旧 401 未登录 排查:页面实际登录失效、CSRF 令牌过期,刷新页面重新 Capture 一次即可。
  2. CLI 打开浏览器打不开网页 配置本机代理 / 关闭 VPN 重试,CLI 内置 Chromium 内核。
  3. 部分网站 CSRF 识别不到 手动在导出 JSON 里补充对应 token 字段即可,绝大多数主流网站均可自动识别。

需要我给你一份session-capture 导出会话 + requests 请求的完整可运行模板代码吗?

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询