技能教程 · TUTORIAL
网页表格抓取 · 详细教程
一个浏览器插件,装进 Chrome/Edge,打开任意网页点一下,把页面上的表格勾一勾,直接存成真 Excel/CSV。纯本地、不联网。
这是什么
tab-grab 是一个 Chrome / Edge 浏览器插件。打开任意带表格的网页点一下图标,它就把页面上的表格勾一勾,直接存成真 Excel(或 CSV)。
- 存的是真 xlsx(不是改了后缀的 HTML),中文不乱码、长数字不变科学计数法、
007这种前导 0 不会被吃掉。 - 纯本地:导出在弹窗里本地拼 xlsx,没有网络请求,不联网、不上传、不收集;权限只要
activeTab+scripting。 - 和
sheet-tools是一对:这个负责「把网页上的表弄下来」,sheet-tools负责「弄下来之后批量合并 / 拆分 / 套模板生成」。抓完要接着批处理,就把两个一起用。
适合谁 / 不适合谁
- ✅ 后台订单列表、财务对账单、竞品价格表、榜单数据 —— 没有导出按钮的表格,点一下就存下来。
- ❌ 抓不到:用
div拼出来的「假表格」(源码里没有<table>)、图片里的表格、canvas 画的表格、跨域 iframe 里的表格、要滚动才加载的懒加载表格(先滚到底再点)。
怎么部署(装进浏览器)
这是个浏览器插件,真正用起来是在浏览器里,装法跟普通 skill 不同 —— 插件不能直接从 zip 装,要先解压:
- 下载解压:点页面顶部的「下载 …」拿到 zip,解压得到一个
tab-grab/文件夹(里面有manifest.json)。 - 加载进浏览器:地址栏输入
chrome://extensions(Edge 是edge://extensions)回车 → 打开右上角 「开发者模式」 → 点 「加载已解压的扩展程序」 → 选中解压出来的tab-grab文件夹(选文件夹,不是里面的文件)。 - 用起来:工具栏出现青绿网格图标 → 就装好了。被折叠就点拼图按钮把它固定到工具栏;打开任意网页点一下即可。
走开发者模式装的插件在本机直接生效,也方便现场改(改完在扩展页点一下刷新即可)。
权限(纯本地,不联网)
扩展只要 activeTab + scripting 两个权限,没有任何 host_permissions,也不常驻后台。manifest 里大致是这样:
{
"manifest_version": 3,
"permissions": ["activeTab", "scripting"],
"host_permissions": []
}
这也是它「不联网、不上传、不收集」的根本原因:没有声明读网站数据的权限,自然读不到。
用法
打开任意带表格的 http/https 网页,点工具栏图标:
| 操作 | 会发生什么 |
|---|---|
| 打开弹窗 | 自动扫描当前页所有表格,列出标题、行×列、表头,默认全勾选(只读,不动页面) |
| 勾选框 | 选要导哪几张表,一张一个工作表 |
| 「定位」 | 把那张表滚进视野并闪一下描边 —— 先看清楚抓的是哪张再导 |
| 「导出 Excel」 | 出一个 .xlsx,勾了几张就有几个工作表,表名取表格标题 |
| 「导出 CSV」 | 只勾了 1 张时可用;带 UTF-8 BOM,Excel 双击不乱码 |
| 「表头加粗并冻结首行」 | 默认开。导出后表头粗体,往下滚表头钉住 |
| 「数字列存成数字」 | 默认开。数字列存成数字(可直接求和/排序);前导 0、手机号自动保留为文本 |
它做了什么 / 没做什么
做了:认所有真正的 <table>;colspan / rowspan 自动摊平成规整网格;单元格里的 <br> 和块级段落转成真换行;自动补参差行的空格;列宽按内容自适应。
抓不到:div 拼的假表格、图片/canvas 表格、跨域 iframe、懒加载表格。
边界:
- 单张表最多抓 5000 行 × 200 列;单个单元格最长 32767 字符(超了截断)。
- 合并单元格是「摊平」不是「还原」:合并区第一格留文字,其余格留空。导出的表不会保留 Excel 的合并效果 —— 好处是数据规整能直接算,坏处是看起来不如原来整齐。
- 隐私:没有后台服务、没有任何网络请求。只有你点图标那一刻才注入,导出的文件直接由浏览器下载到你本机,数据没出过这台电脑。
常见问题
- 点了没反应 / 说抓不了:浏览器内置页(
chrome://)、本地file://页、扩展商店页不允许注入,换普通网页。 - 少了一张表:可能还没滚出来(懒加载)、在 iframe 里、或者是 div 拼的。
- 行数对不上:表头行也算一行,所以「3 行」可能是表头 + 2 行数据。
- 想定时抓某个网站 / 抓登录后的数据 / 抓几百个页面:那是定制活,用页面底部的联系方式找我。
想要加功能
包里目前是 SKILL.md + 插件源码(manifest / icons / src / README)。想加定时抓取、登录态抓取、或接进你们自己的系统 → 用页面底部的联系方式找我,说清场景,我帮你做。