2019-08-24 再次翻到这个文章,大家别看了;感觉自己在丢人……
前言:昨晚在写一个爬虫(TX视频)的时候,接口返回的都是一长串长串长串的json数据,然后我就很正常的使用使用模块Json的loads()方法(不懂请移步->菜鸟教程)进行处理,将合法的json处理成字典或列表数据,正常来讲是没什么问题的。
问题:正常的loads方法只能将json字符串最外层的处理成字典(or列表)变量,如果你的json没有多层封装解析一次就直接能用,相反如果是多层每次再调用loads就显得特别麻烦。
上面叙述你可能没懂,简单讲:正常loads只能解析一维数组,针对多维只能解析最外层数据。
在PHP中,函数json_decode()一次搞定,Python让我很纠结…
解决方法:百度了一下,也有不少类似问题,没细看,感觉答案都不是我想要的;最后还是决定自己造轮子,利用递归对多维数据解析再返回,下面是实现代码。
| |
结语:分享此函数,望能帮助大家。
