JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种原因实现保本:JavaScript/Python/PHP和Java。

使用方法如:

import jsonpath
res=jsonpath.jsonpath(dic_name,'$..key_name')
#嵌套n层也能取到所有key_name信息,其中:“$”表示最外层的{},“..”表示模糊匹配,当传入不存在的key_name时,程序会返回false

安装方法:pip install jsonpath
     
官方文档:http://goessner.net/articles/JsonPath

d={
"error_code": 0,
"stu_info": [
{
"id": 2059,
"name": "小白",
"sex": "男",
"age": 28,
"addr": "河南省济源市北海大道32号",
"grade": "天蝎座",
"phone": "",
"gold": 10896,
"info":{
"card":434345432,
"bank_name":'中国银行'
} },
{
"id": 2067,
"name": "小黑",
"sex": "男",
"age": 28,
"addr": "河南省济源市北海大道32号",
"grade": "天蝎座",
"phone": "",
"gold": 100
}
]
} res= d["stu_info"][1]['name'] #取某个学生姓名的原始方法:通过查找字典中的key以及list方法中的下标索引
print(res) #输出结果是:小黑 import jsonpath
res1=jsonpath.jsonpath(d,'$..name') #嵌套n层也能取到所有学生姓名信息,$表示最外层的{},..表示模糊匹配
print(res1) #输出结果是list:['小白', '小黑'] res2= jsonpath.jsonpath(d,'$..bank_name')
print(res2) #输出结果是list:['中国银行'] res3=jsonpath.jsonpath(d,'$..name123') #当传入不存在的key(name)时,返回False
print(res3) #输出结果是:False

最新文章

  1. myeclipse连接数据库sql server
  2. oracle 授权
  3. [POJ 1988] Cube Stacking (带值的并查集)
  4. python视频教程:十分钟快速入门python
  5. 函数fsp_fill_free_list
  6. 给出一个数组A,找出一对 (i, j)使得A[i] <= A[j] (i < j)并且j-i最大
  7. WKWebview点击图片查看大图
  8. SharedPreferences共享优先存储的详细解析和原理
  9. GD库 图片缩略图 图片水印
  10. centos7配置ip
  11. AE + GDAL实现影像按标准图幅分割(上)
  12. Mybatis整理_01
  13. R用户的福音︱TensorFlow:TensorFlow的R接口
  14. Devstack: A copy of worked local.conf I'm sharing with you.
  15. KVO原理解析
  16. HTML阻止冒泡事件的发生
  17. jmeter获取mysql数据并作为请求参数使用
  18. SSH原理与运用(一):远程登录(转)
  19. 面试:C++二叉树遍历(递归/非递归)
  20. go语言练习:指针

热门文章

  1. java设计模式学习-单例模式
  2. centos 7 启动docker失败。
  3. Java 多线程编程(锁优化)
  4. 手写实现RPC框架(不带注册中心和带注册中心两种)
  5. REST和SOAP的区别
  6. Discretized Streams: A Fault-Tolerant Model for Scalable Stream Processing
  7. 123457---脑筋急转弯01--com.threeObj03.JiZhuanWan
  8. 转载:Spark中文指南(入门篇)-Spark编程模型(一)
  9. ubuntu18.04开机提示welcome to emergency mode! after logging in type...的解决办法
  10. 【C# 开发技巧】在VS程序如何取消.vshost的进程