经常需要分析一些 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"字段值?
|  |      1ddonano      2022-09-29 11:30:58 +08:00  1 nodepad++  jsonViewer 插件 | 
|      2bootvue      2022-09-29 11:31:36 +08:00  1 you need jq   https://github.com/stedolan/jq | 
|      5faketemp OP @bootvue 这个怎么有点像 jquery 的意思 O(∩_∩)O~ 去学一下命令参数试试,另外请问下有没带界面的类似工具推荐? | 
|      6Mithril      2022-09-29 12:05:06 +08:00  1 有很多类似的 https://github.com/multiprocessio/dsq UI Demo: https://app.datastation.multiprocess.io/ https://www.visidata.org/ 等等 其实能直接跑 SQL 就足够了。。。 | 
|  |      7maichael      2022-09-29 12:05:19 +08:00  1 | 
|  |      8ZZZZone      2022-09-29 13:18:24 +08:00  1 我来说几个: 我常用的: 1. utools 中的 JSON 编辑器: 通过 utools 快捷启动, 可以使用 js 语法进行一些过滤功能。 优点是启动快,日常用来完成一些轻量的 json 处理工作。 2. jq , 命令行工具。 我的日常工作中稍微复杂一点的过滤, 转换,提取工作都是用 jq 完成, 可以编码成 work flow 批量处理同类型工作。 了解到的: 1. [JSON Crack]( https://github.com/AykutSarac/jsoncrack.com) 数据可视化  2. fx https://github.com/antonmedv/fx 命令行工具, 支持 JavaScript (default), Python, or Ruby. 语法的过滤逻辑。 | 
|  |      9cssk      2022-09-29 13:22:13 +08:00 via iPhone json crack | 
|      10xiao109      2022-09-29 13:23:43 +08:00 jsoneditoronline 格式化、批量提取、过滤 都支持,不过好像不能离线。 | 
|  |      11Puteulanus      2022-09-29 13:30:16 +08:00 https://devutils.com 好用是真的好用,进入工具的那一刻会判断你剪贴板的内容类型,比如是 JSON 可能打开直接就已经在格式化页面而且已经格式化好了,是时间戳就在时间戳转换的页面 但是价格感觉还是偏贵,最好是有 setapp 订阅 | 
|  |      12Mystery0      2022-09-29 13:54:10 +08:00 via Android @xiao109 好像可以安装成应用,具体能不能离线使用没有试过。最终方案:扒源码成 html 文件 | 
|      13faketemp OP 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 实测没问题,当是我的问题),准备先到处去搜一搜详细的使用手册或例子 | 
|  |      14lstz      2022-09-29 15:26:25 +08:00 您可以试试我们的 [JSON 路径选取器] 与 [JSON 探测器]  这个路径选取还是挺方便的,而且支持纯离线部署+Docker 版本,更多可以看我们官网 在线工具 https://cloud.codegen.cc/exts/JSONXPath https://cloud.codegen.cc/exts/JSONProbe | 
|  |      15lstz      2022-09-29 15:27:26 +08:00 | 
|      16faketemp OP @lstz 在 JSONProbe 测试上传了一个 250k 左右的 json ,提示上传成功后又弹出一个进度条,等了十几分钟了进度条仍一动不动,不知是不是公共网络的问题 | 
|      17faketemp OP @maichael fx 好不容易学习了基本用法,却发现 Windows7 下运行报错; windows11 下可以使用,但交互模式下发现两个 BUG:输入"/"只能搜索英文,尝试搜索中文则 fx 自动退出;输入"."没反应   太艰难了,还是先用 python 凑合吧 | 
|  |      19lstz      2022-09-29 16:57:46 +08:00 针对您的需求,JSON 路径选取器,应该也可以试试 | 
|      20jones2000      2022-09-29 20:41:48 +08:00 直接要 json 的数据结构文档不就可以了。 还自己一个一个看,一个一个猜呀, 太影响效率了。 | 
|  |      21RoshanWu      2022-09-29 22:20:14 +08:00  1 | 
|      25faketemp OP @ZZZZone utools 中的 json 编辑器不错也支持 js 过滤,但没找到支持的语法文档 /手册参考在哪里?想系统学习一下,请问哪里可以看到使用帮助? | 
|  |      26kkeep      2022-09-30 01:51:08 +08:00 via Android 有意思,我觉得 windows 用户需要有一个机会 | 
|  |      27LxExExl      2022-09-30 08:08:13 +08:00 | 
|  |      28ZZZZone      2022-09-30 13:16:14 +08:00 | 
|      29faketemp OP  1 找到了 windows 仿 Devutils 完美解决    |