jsonpath爬取数据的用法
时间: 2023-08-11 18:28:45 浏览: 48
JSONPath 是一种基于 JSON 数据结构的查询语言,可以用于筛选和提取 JSON 数据中的信息。以下是 JSONPath 的常用用法:
1. `$`:表示根节点。
2. `.`:表示选择当前节点。
3. `..`:表示递归选择所有子节点。
4. `*`:表示选择所有子节点。
5. `[]`:表示选择符合条件的节点,条件可以是属性名、属性值、数组索引等。
6. `@`:表示当前节点,用于过滤条件中。
例如,假设有如下 JSON 数据:
```json
{
"name": "John",
"age": 30,
"cars": [
{ "name": "Ford", "models": ["Fiesta", "Focus", "Mustang"] },
{ "name": "BMW", "models": ["320", "X3", "X5"] },
{ "name": "Fiat", "models": ["500", "Panda"] }
]
}
```
要提取所有车辆品牌的名称,可以使用如下的 JSONPath 表达式:
```
$.cars[*].name
```
解释:
- `$` 表示根节点。
- `cars[*]` 表示选择所有 `cars` 数组中的元素。
- `.name` 表示选择每个元素的 `name` 属性。
最终结果为:
```
["Ford", "BMW", "Fiat"]
```
其他常用的 JSONPath 表达式还包括:
- `$.name`:选择根节点的 `name` 属性。
- `$..models`:选择所有子节点中的 `models` 属性。
- `$.cars[0].models[0]`:选择第一个车辆品牌的第一个车型。