您的位置:首页 > Web前端 > JavaScript

如何在命令行中打印格式化的json和xml数据

2014-02-25 17:17 726 查看
如果你跟我一样是个重度命令行依赖用户,那么当你在Terminal中用curl调试一些Rest API的时候,肯定会因为一堆看上去杂乱无章的输出而头大不已,比如像下面这样…





当然,你可以再把这一堆输出copy到某个formatter里面,如果你真的要这么做,那我推荐一个还不错的在线formatter网站。但如果你不想这么麻烦,想直接在Terminal里面就看到格式化的数据,那也可以,方式就是通过python(2.6版本之后)的一个module,使用方式如下

如果API返回的是一串合法的json,那么这个时候你在命令行里看到就是这样的





这个方法唯一的问题就是在Terminal里没法显示unicode中文,但如果你只是想看看返回数据的结构,那就没问题。或者如果你有什么完美的解决方案,也请你不吝分享。

虽然现在JSON以其轻量级,易解析等诸多优点大行其道,但也有一些系统的API返回的数据是XML格式的,python没有现成的module像格式化json一样格式化xml。当然,你可以用lxml自己写一个,这也很简单。(如果你真的写了,那也请你不吝分享出来…LOL)。虽然没有现成的python module,但是有现成的工具,那就是xmllint。关于xmllint的介绍自己看doc就是了,他是libxml2的一部分,所以在大多数的*nix系统上都是默认自带的。用起来也很简单

格式化之后的xml数据如下所示






Have fun!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: