Bootstrap

python jsonpath

1.概念

如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的。jsonpath模块就能解决
jsonpath可以按照key对python字典进行批量数据提取

语法:

from jsonpath import jsonpath
ret = jsonpath(a, 'jsonpath语法规则字符串')

2.应用

普通使用json,要一层一层找,麻烦

#coding:utf-8
import jsonpath


data = {"key1":{"key2":{"key3":{"key4":{"key5":{"key6":{"key7":{"key8":"python21"}}}}}}}}

print(data["key1"]["key2"]["key3"]["key4"]["key5"]["key6"]["key7"]["key8"])

使用jsonpath。直接使用..key8简洁

# jsonpath的结果是一个列表
print(jsonpath.jsonpath(data, '$.key1.key2.key3.key4.key5.key6.key7.key8'))
print(jsonpath.jsonpath(data, '$..key8'))

3.api

1)常用的有
$ . ..
在这里插入图片描述
2)案例
在这里插入图片描述

;