🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

数据接口提取器 2672243194/dsh-fetch-data

DeepSeek Harness
267224319479 天前有提交已提供中文文档扫描:未发现敏感能力

拦截页面真实数据接口,按字段精确取回结构化数据

27.7/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 2672243194/dsh-fetch-data
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · other
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 79 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 拦截页面真实接口
  • 按字段提取数据
  • 输出结构化数据

README

由 DeepSeek 最新模型翻译生成
dsh-fetch-data 🌐 English | 中文 dsh-fetch-data DeepSeek Harness 结构化数据提取插件——拦截页面真实调用的数据 API(XHR/fetch JSON),按字段精确取回评论点赞、榜单、价格、表格等结构化数据——这是文本提取器(read_url)扁平化 HTML 时丢失的信息。 read_url 回答"这页讲了什么",fetch_data 回答"这页背后的数据到底是多少"。 为什么做它 | | read_url(文本提取) | fetch_data(本插件) | | 读什么 | 干净正文 / Markdown | 页面背后的 JSON 数据接口 | | 输出 | 模型可读的文本 | 结构化字段({标题, 播放量} 一一对应) | | 强项 | 读文章、读文档 | 精确归属——哪个数字对应哪一行 | | 弱点 | 扁平化后数字与条目对应关系丢失 | 需要 playwright(浏览器引擎) | 真实案例:小黑盒帖子里 read_url 读出的 "60125" 无法判断是 60 赞+125 收藏还是别的;fetch_data 拦截 /bbs/app/link/tree 直接返回 {user, up, content}——一清二楚。 工具 fetch_data(url, api?, fields?
展开完整文档(README 剩余 1 节)
dsh-fetch-data

🌐 English | 中文

dsh-fetch-data

DeepSeek Harness 结构化数据提取插件——拦截页面真实调用的数据 API(XHR/fetch JSON),按字段精确取回评论点赞、榜单、价格、表格等结构化数据——这是文本提取器(read_url)扁平化 HTML 时丢失的信息。

read_url 回答"这页讲了什么",fetch_data 回答"这页背后的数据到底是多少"。

为什么做它

| | read_url(文本提取) | fetch_data(本插件) |
| 读什么 | 干净正文 / Markdown | 页面背后的 JSON 数据接口 |
| 输出 | 模型可读的文本 | 结构化字段({标题, 播放量} 一一对应) |
| 强项 | 读文章、读文档 | 精确归属——哪个数字对应哪一行 |
| 弱点 | 扁平化后数字与条目对应关系丢失 | 需要 playwright(浏览器引擎) |

真实案例:小黑盒帖子里 read_url 读出的 "60125" 无法判断是 60 赞+125 收藏还是别的;fetch_data 拦截 /bbs/app/link/tree 直接返回 {user, up, content}——一清二楚。

工具

fetch_data(url, api?, fields?, maxItems?) — 捕获页面数据接口并提取字段

| 参数 | 类型 | 默认 | 说明 |
| url | string | 必填 | 要捕获数据接口的 http(s) 页面 |
| api | string | 自动 | 从结构模式的接口清单里指定一个(如 "/x/web-interface/ranking/v2");省略时自动选择 |
| fields | string | 结构模式 | 逗号分隔的字段路径,数组用 []:"data.list[].title,data.list[].view" |
| maxItems | number | 20 | 每个提取字段的数组截断数(1–100) |

两种模式:

1. 结构模式(不传 fields)——返回自动选中接口的 2 层结构 + 全部 JSON 接口清单(路径·大小·是否含数组),模型可再带 api= 指定:页面 25 个 JSON 接口选中: /x/web-interface/ranking/v2 (137763B)
结构: { code: number, message: string, ttl: number, data: { note: string, list: [100] { aid: number, ... } } }

接口清单(可传 api= 指定其中一个再提取字段): /x/web-interface/nav · 249B /x/vip/ads/materials · 1140B · 含数组 ...

2. 字段模式(带 fields)——精确提取,数组按 maxItems 截断:
data.list[].title (前5条):
用MC还原《神的随波逐流》 【B萌应援】 WasteTheFallen丨首曝PV&实机演示:凝视深渊,人性渐泯 ...
data.list[].stat.view (前5条):
2428730
10326863
...

自动选接口逻辑

对捕获的 JSON 按"含数组 + 体量最大"评分(数据接口通常大且含数组,埋点/配置接口小),无数组时退而取最大。可 api= 手动覆盖。

真实世界验证(2026-08-16,v0.1.3)

14 站全量实测:12 OK / 2 纯静态站预期报错 / 0 崩溃——由 multi-site.mjs(已提交)驱动。自动滚动(懒加载捕获)+ JSONP 解析已实测。

| 站点 | 结果 |
| B 站排行榜 | ✅ 自动选中 /x/web-interface/ranking/v2(139KB,list[100]),提取标题+播放量一一对应 |
| 掘金 | ✅ 自动选中 /recommend_api/v1/article/recommend_all_feed,提取文章标题 |
| 微博 | ✅ 捕获 /ajax/feed/hottimeline(240KB)+ /ajax/statuses/config(745KB,超大配置边界) |
| QQ 新闻 | ✅ 捕获 /getQNChannels(304KB,36 个接口) |
| 豆瓣 | ✅ 捕获 /rexxar/api/v2/search/hots |
| 淘宝 | ✅ 捕获 20 个 JSON 接口(含 mtop 配置 824KB,超大配置边界) |
| 京东 | ✅ 捕获 /wp-json/news/list + /category/get |
| 知乎/百度/CSDN/网易/小黑盒 | ✅ 捕获各自 JSON 接口(部分为配置/菜单接口——用结构模式清单选数据接口) |
| example.com / 阮一峰博客(纯静态) | ✅ 返回清晰"未捕获到任何 JSON 接口",不崩溃 |

- 18 个零依赖断言(字段路径提取器/选择逻辑/结构摘要/静态资源过滤/截断精确性/description 守卫/JSONP 解析)+ 22 个真实拦截断言(含滚动触发懒加载捕获 + JSONP 提取)全绿。

为什么省 token

- 两段式:结构模式只返回"菜单"(不是 137KB 全量),字段模式只返回指定列——绝不 dump 全量 JSON;
- 固定开销精简:工具 description 压缩到约 300 字符(唯一每次调用都发送的内容);静态 schema(KV 缓存友好);
- 清单排序:含数组 + 体量大的接口排最前,模型一眼找到数据接口;静态资源 JSON(B 站 /bfs/svg-next/...)已过滤并内联计数;
- 尺寸格式化:136KB 而非 139070B;数组按 maxItems 截断、值限 200 字符;
- 紧凑文本 render;一行式清晰报错。

架构(DSH 合规)

- 浏览器单例复用,卸载时 ctx.effect 关闭(时间可组合性);
- 每次调用独立浏览器 context——跨调用不残留 cookie/状态,降低反爬波动;
- domcontentloaded + settle 等待替代 networkidle(心跳轮询站永不空闲);
- 自动滚动触发懒加载数据接口(feed/无限列表);JSONP 响应自动剥离包裹;
- 协作超时:timeoutMs + exec.signal;
- 除 Node 内置外零依赖;playwright 是必需引擎(拦截是核心,不是可选增强)。

安装

playwright 是本插件必需(网络拦截核心) cd
npm i playwright && npx playwright install chromium

添加插件
dsh plugin --profile web add github:2672243194/dsh-fetch-data

边界

- 登录墙接口拿不到(与 read_url 同边界);
- 每个站的接口结构不同——用结构模式的接口清单发现;
- 自动滚动 + JSONP 已覆盖多数懒加载/JS 延迟数据;剩余缺口(登录墙、纯 SSR 页面)会返回明确报错而非瞎猜。

支持

如果 dsh-fetch-data 对你有帮助,欢迎在 GitHub 点个 ⭐ Star。完全免费开源(MIT);Star 数量是我判断是否继续投入迭代的直接依据。

License

MIT
预览分享卡片长什么样 ↓2672243194/dsh-fetch-data
分享 · DeepSeek Harness Hub
2672243194/dsh-fetch-data

拦截页面真实数据接口,按字段精确取回结构化数据

这是你的仓库?认领条目

回到顶部