jsonpath模块提取数据的方法,举个例子
时间: 2023-05-11 08:03:46 浏览: 108
JSONPath 是一种用于从 JSON 数据中提取数据的语言。在 Python 中,可以使用 jsonpath-rw 库来实现 JSONPath 的功能。以下是一个例子:
```python
import json
from jsonpath_rw import jsonpath, parse
# JSON 数据
data = {
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
}
}
# JSONPath 表达式
expr = parse("$.store.book[0].author")
# 提取数据
result = [match.value for match in expr.find(data)]
# 输出结果
print(result) # ['Nigel Rees']
```
在上面的例子中,我们使用了 JSONPath 表达式 `$.store.book[0].author` 来提取 JSON 数据中第一本书的作者。具体来说,这个表达式的含义是:
- `$` 表示 JSON 数据的根节点。
- `store` 表示根节点下的 `store` 属性。
- `book` 表示 `store` 属性下的 `book` 属性,它是一个数组。
- `[0]` 表示数组中的第一个元素。
- `author` 表示元素中的 `author` 属性。
最终,我们得到了一个列表,其中包含了 JSON 数据中第一本书的作者。
阅读全文