python-jsonpath

python-jsonpath

一、导入

from jsonpath import jsonpath

二、jsonpath(obj, expr, result_type=‘VALUE’, debug=0, use_eval=True)

先来个demo,jsonpath方法返回的是一个list

l = jsonpath(json_demo, "$.name")
print(l)     # ['hide']

数组形式:

json_demo1 = [
    {
        "name": "hide1",
        "age": 1
    },
    {
        "name": "hide2",
        "age": 2
    },
    {
        "name": "hide3",
        "age": 3
    }
]

age_ = jsonpath(json_demo1, "$[2].age")[0]
print(age_)

三、jsonpath操作符

python-jsonpath_第1张图片

练习:

1、商店中所有书籍的作者

# 1、商店中所有书籍的作者
authors = jsonpath(json_demo, "$..author")
print(authors)  # ['Nigel Rees', 'Evelyn Waugh', 'Herman Melville', 'J. R. R. Tolkien']

2、获取book数组第二个元素内容

# 获取book数组第二个元素内容
second_book = jsonpath(json_demo, "$..book[1]")
print(second_book)

3、book目录下包含isbn的元素

contains_isbn = jsonpath(json_demo, "$..book[?(@.isbn)]")
print(contains_isbn)

4、book目录下价格小于10的元素

price_lt_10 = jsonpath(json_demo, "$..book[?(@.price<10)]")
print(price_lt_10)

python-jsonpath_第2张图片

你可能感兴趣的:(python,python)