HTML 表格转 JSON
粘贴网页表格的 HTML 或从 Excel/网页复制的表格文本,自动展开 colspan/rowspan 合并单元格,输出 JSON 数组、CSV 或 Markdown 表格。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
被 colspan/rowspan 覆盖的单元格会复制同一份文本,保证每行等长
这个工具能做什么
- 把网页上的表格源码(右键查看元素复制出来的 `<table>`)转成 JSON 数组,喂给前端 mock 或测试用例。
- 从 Excel / 表格软件复制的一列数据,粘进来直接输出 JSON、CSV 或 Markdown 三种格式。
- 写文档时把表格转成 Markdown,省掉一行行手动加竖线和对齐行。
- 表格里有 colspan / rowspan 时也不用管:被合并覆盖的格子会复制同一份文本,保证每行等长。
示例
输入
<table><tr><th>名称</th><th>数量</th><th>备注</th></tr><tr><td>螺丝</td><td>120</td><td>M4 × 8</td></tr><tr><td>螺母</td><td>80</td><td> </td></tr></table>
输出
[
{
"名称": "螺丝",
"数量": "120",
"备注": "M4 × 8"
},
{
"名称": "螺母",
"数量": "80",
"备注": ""
}
]所有单元格都是字符串,数字不会被转成 number,避免订单号这类前导零丢失。 会先解码成不换行空格再被 trim 掉,所以第二行的备注是空字符串。
常见问题
表格文本(不是 HTML)怎么识别分隔符?
优先看制表符:只要行里有 \t 就按制表符切分,这是从 Excel 复制的格式。没有制表符时按两个及以上连续空格切分;如果第一行含竖线、第二行是 |---| 形式,则按 Markdown 表格处理并自动跳过对齐行。
数字会变成 JSON 里的 number 吗?
不会,所有值都是字符串。"120" 保持 "120","007" 也不会变成 7,这对手机号、订单号、邮编这类字段很重要。需要数字时在消费端自己转换即可。
字段名重复或为空怎么办?
空表头会补成 column1、column2…,重复表头会加后缀变成 name、name_2,保证每个对象里的键唯一。关掉「首行作为表头」后,全部字段都变成 column1、column2…。
为什么提示「HTML 无法解析」?
出现 HTML 标签但缺少 `<table>` 或 `</table>`、标签属性引号没有闭合时都会报错。工具只解析第一个完整的 `<table>`,嵌套在里面的子表格会被跳过,避免把内表当成外表。
输入的内容会上传吗?
不会。工具自带一个轻量 HTML tokenizer,解析和转换都在浏览器里完成,没有网络请求,也不访问你粘贴的页面。
关键词:tablehtml tablejsoncsvmarkdown表格转换colspanrowspan合并单元格exceltable to json