跳到主内容

deepspider 使用指南

把浏览器抓到的请求和脚本事实交给独立 Node 运行时重新生成参数,再用真实请求验证后导出可脱离浏览器复跑的 Solver。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

deepspider

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add --allow-build=deepspider github:ma-pony/deepspider

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

  • 沿真实请求的 Initiator、调用栈和脚本源码定位参数写入边界。
  • 分析动态执行、Webpack、Worker、WebAssembly、状态机和高度混淆代码。
  • 用 Hook、Debugger 和属性采集补足浏览器事实,而不是直接修改捕获源码。
  • 将 Cookie 生成所需的浏览器依赖描述成可审计的 Runtime Recipe,再由独立 Worker 执行。
  • 用真实请求验证自动生成的 Cookie,并导出可以脱离浏览器 Session 重跑的 Solver;其他输出继续使用通用浏览器、Hook、Debugger 和 Code Mode 定位与实现。

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

这个插件和普通的爬虫或 Selenium 自动化有什么不一样?

DeepSpider 不只做页面自动化,它把浏览器观察到的事实转成 Output Contract + Runtime Recipe,再交给独立的 Node 运行时重新生成 Cookie 等参数,用真实请求确认结果正确,最后输出可脱离浏览器复跑的 Solver(src/recovery/coordinator.js:197,README.md:39)。

它能自动恢复哪些输出类型?

首版端到端自动链路只覆盖 Cookie;Header、Query、Body、返回值与导航可以进入证据和 Contract,但高层工具不会自动完成独立生成、真实请求验证和 Solver 导出(src/recovery/contracts.js:3,README.md:63)。

自动恢复的产物和 Solver 文件放在什么位置?

每个 Agent Session 对应 ~/.deepspider/sessions/<sha256(agent.id)>/ 下的独立目录,包含 evidence/、artifacts/、runs/、solvers/、screenshots/、browser-data/,不同 Session 之间互相隔离;成功的 Cookie 恢复会在 solvers// 生成 solver.mjs、contract.json、recipe.json、package.json 四个文件(src/runtime/SessionPaths.js:17,src/recovery/solver.js,README.md:156)。

启动 deepspider agent 失败的常见原因有哪些?

主要是 Node 版本低于 24.15.0、postinstall 没下载到 Patchright Chromium、或运行环境禁止派生 Chromium 子进程;项目根目录的 .env 不会被自动加载,要在无头模式下运行需显式设置 DEEPSPIDER_HEADLESS=true(package.json:69,README.md:218)。

用 mode: 'algorithm' 会发生什么?

当前没有自动算法引擎,会显式返回 program 类 blocker(algorithm-recovery-engine-not-implemented),由 Agent 用 Hook、Debugger、Code Mode 手工恢复或等待后续实现;DeepSpider 不会把未实现的部分描述成自动完成(src/recovery/coordinator.js:129,README.md:93)。

我只想发一次不带浏览器的轻量请求,怎么做?

用 deepspider fetch 通过 CycleTLS 发一次轻量 HTTP 请求,不启动浏览器也不进入逆向流程;如果响应 >=400 命令行会建议改用 deepspider agent 处理(src/cli/commands/fetch.js:1,README.md:131)。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: 未声明
  • Node: >=24.15.0
  • Platforms: 跨平台
  • Native modules: sdenv, cycletls

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则