json 离线 可视化 数据提取工具推荐?

2022-09-29 11:21:30 +08:00
 faketemp

经常需要分析一些 json 文件(格式多种多样) ,已知的大部分都是在线工具,如专业分析 https://jsonhero.io ,功能专一 https://data.page/json/csv 等等,想寻找一款 json 工具能满足最低需求:便携离线可用、格式化 json 、能批量提取指定"层级"的字段值。不知大家有没有什么推荐?收费免费开源都不限……

虽然分析一个 json 用 python 也没几行代码,但 json 一多起来格式还不统一的情况下人就懒了,想找找有没有什么软件,打开 json 点点鼠标就可以批量提取出要的数据,有些抽象举个例子:

{ "status":"ok",
  "message":"success",
  "code":200,
  "data":{
    "list":[
      {
        "title":"好玩",
        "uri":"test/1.pdf"
      },
      {
        "title":"问答",
        "uri":"qa/11.doc"
      }]
}}

比如想从上面的 json 提取"title"和"uri"两个字段所有的值,有没有什么软件可以打开 json 展开 data/list 节点,点选任意"title"后批量提取出同层级节点所有的"title"值??(比如上例中"好玩"和"问答"就是所谓"同层级")
或者也可以不论层级,点选任意"title"后批量提取出整个 json 文件所有"title"字段值?

3916 次点击
所在节点    问与答
29 条回复
ddonano
2022-09-29 11:30:58 +08:00
nodepad++ jsonViewer 插件
bootvue
2022-09-29 11:31:36 +08:00
Anybfans
2022-09-29 11:32:04 +08:00
@bootvue #2 +1 jq 还是蛮好用的
faketemp
2022-09-29 11:48:01 +08:00
@ddonano 这个只能实现 json 格式化和层级浏览,并不满足数据批量提取的核心需求
faketemp
2022-09-29 11:50:28 +08:00
@bootvue 这个怎么有点像 jquery 的意思 O(∩_∩)O~
去学一下命令参数试试,另外请问下有没带界面的类似工具推荐?
Mithril
2022-09-29 12:05:06 +08:00
有很多类似的
https://github.com/multiprocessio/dsq
UI Demo: https://app.datastation.multiprocess.io/
https://www.visidata.org/
等等
其实能直接跑 SQL 就足够了。。。
maichael
2022-09-29 12:05:19 +08:00
ZZZZone
2022-09-29 13:18:24 +08:00
我来说几个:

我常用的:

1. utools 中的 JSON 编辑器: 通过 utools 快捷启动, 可以使用 js 语法进行一些过滤功能。 优点是启动快,日常用来完成一些轻量的 json 处理工作。
2. jq , 命令行工具。 我的日常工作中稍微复杂一点的过滤, 转换,提取工作都是用 jq 完成, 可以编码成 work flow 批量处理同类型工作。

了解到的:
1. [JSON Crack]( https://github.com/AykutSarac/jsoncrack.com) 数据可视化
![]( https://jsoncrack.com/assets/jsoncrack-screenshot.webp)

2. fx https://github.com/antonmedv/fx 命令行工具, 支持 JavaScript (default), Python, or Ruby. 语法的过滤逻辑。
cssk
2022-09-29 13:22:13 +08:00
json crack
xiao109
2022-09-29 13:23:43 +08:00
jsoneditoronline 格式化、批量提取、过滤 都支持,不过好像不能离线。
Puteulanus
2022-09-29 13:30:16 +08:00
https://devutils.com
好用是真的好用,进入工具的那一刻会判断你剪贴板的内容类型,比如是 JSON 可能打开直接就已经在格式化页面而且已经格式化好了,是时间戳就在时间戳转换的页面

但是价格感觉还是偏贵,最好是有 setapp 订阅
Mystery0
2022-09-29 13:54:10 +08:00
@xiao109 好像可以安装成应用,具体能不能离线使用没有试过。最终方案:扒源码成 html 文件
faketemp
2022-09-29 15:08:57 +08:00
Win11 上简单试用一下:
1. jq 描述功能强大,但不知为何随便找个 json 在 CMD/Powershell 下加载都提示以下错误——stackoverflow 搜半天有说 jq 不支持 UTF8 要转成 ASCII 等等,都尝试了但问题依旧,跑不起来未知是哪里姿势不对……
```
jq: error: syntax error, unexpected INVALID_CHARACTER, expecting $end (Windows cmd shell quoting issues?) at <top-level>, line 1
```
2. json crack 和 jsoneditoronline 等都是在线网站,简单试了下没找到如何批量提取指定字段数据,待进一步摸索
3. dsq 换了几个 json 文件都提示错误```Input is not an array of objects:```无法加载未得要领
4. devutils 养眼但只提供 MAC 版本,暂时未测试
5. fx 好像也不错,但是使用帮助只有几句语焉不详,搜索引擎找半天目前还在努力摸索用法

目前试用本地软件只有 fx 成功加载了 json ,其他软件都各种报错和兼容性问题竟然没跑起来(json 实测没问题,当是我的问题),准备先到处去搜一搜详细的使用手册或例子
lstz
2022-09-29 15:26:25 +08:00
您可以试试我们的 [JSON 路径选取器] 与 [JSON 探测器]

这个路径选取还是挺方便的,而且支持纯离线部署+Docker 版本,更多可以看我们官网

在线工具
https://cloud.codegen.cc/exts/JSONXPath

https://cloud.codegen.cc/exts/JSONProbe
lstz
2022-09-29 15:27:26 +08:00
除了这两个功能,工具箱也有挺多 JSON/XML 转换的工具,对 JSON 兼容性也经过测试,目前应该算是稳定的。

https://codegen.cc
faketemp
2022-09-29 15:39:43 +08:00
@lstz 在 JSONProbe 测试上传了一个 250k 左右的 json ,提示上传成功后又弹出一个进度条,等了十几分钟了进度条仍一动不动,不知是不是公共网络的问题
faketemp
2022-09-29 16:52:07 +08:00
@maichael fx 好不容易学习了基本用法,却发现 Windows7 下运行报错; windows11 下可以使用,但交互模式下发现两个 BUG:输入"/"只能搜索英文,尝试搜索中文则 fx 自动退出;输入"."没反应

太艰难了,还是先用 python 凑合吧
lstz
2022-09-29 16:57:22 +08:00
@faketemp 抱歉哈,可能在线版本服务器配置还待优化,可以试试我们离线部署
lstz
2022-09-29 16:57:46 +08:00
针对您的需求,JSON 路径选取器,应该也可以试试
jones2000
2022-09-29 20:41:48 +08:00
直接要 json 的数据结构文档不就可以了。 还自己一个一个看,一个一个猜呀, 太影响效率了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/883757

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX