接口自动化—获取接口返回的某个特定数据用jsonpath_rw

书写接口自动化,遇见接口有依赖关系,需要获取上个接口返回数据,在网上查找jsonpath_rw可以实现

安装:pip install jsonpath_rw
接下来是返回简书首页的第一个id值作为例子

#coding:utf-8
from jsonpath_rw import jsonpath,parse
import requests


#接口返回数据假如如下,返回的是简书的首页数据
header={
    'Accept': 'application/json',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36'
}
response=requests.get(url="https://www.jianshu.com/users/recommended?seen_ids=&count=5&only_unfollowed=true",headers=header).json()
#打印返回结果
print(response)
#希望查找users下的id值
jsonpath_expr=parse("users[*].id")
#在返回数据查找json_expr
id=jsonpath_expr.find(response)
print(id)
id_data=[match.value for match in id]
#获取第一个值
print(id_data[0])


简书首页返回结果:

{'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}
[DatumInContext(value=5796592, path=Fields('id'), context=DatumInContext(value={'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, path=<jsonpath_rw.jsonpath.Index object at 0x000001CAF6051F40>, context=DatumInContext(value=[{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], path=Fields('users'), context=DatumInContext(value={'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}, path=This(), context=None)))), DatumInContext(value=9988193, path=Fields('id'), context=DatumInContext(value={'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, path=<jsonpath_rw.jsonpath.Index object at 0x000001CAF6088130>, context=DatumInContext(value=[{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], path=Fields('users'), context=DatumInContext(value={'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}, path=This(), context=None)))), DatumInContext(value=7663825, path=Fields('id'), context=DatumInContext(value={'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, path=<jsonpath_rw.jsonpath.Index object at 0x000001CAF60881F0>, context=DatumInContext(value=[{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], path=Fields('users'), context=DatumInContext(value={'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}, path=This(), context=None)))), DatumInContext(value=6652326, path=Fields('id'), context=DatumInContext(value={'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, path=<jsonpath_rw.jsonpath.Index object at 0x000001CAF60882B0>, context=DatumInContext(value=[{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], path=Fields('users'), context=DatumInContext(value={'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}, path=This(), context=None)))), DatumInContext(value=278, path=Fields('id'), context=DatumInContext(value={'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}, path=<jsonpath_rw.jsonpath.Index object at 0x000001CAF6088370>, context=DatumInContext(value=[{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], path=Fields('users'), context=DatumInContext(value={'users': [{'id': 5796592, 'slug': '86b81ed8e35c', 'nickname': '乔汉童', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/5796592/73837104-47e5-4fe9-a5be-054bd50b06f7.jpg', 'total_likes_count': 2063, 'total_wordage': 356798, 'is_following_user': False}, {'id': 9988193, 'slug': '51b4ef597b53', 'nickname': '董克平日记', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/9988193/fc26c109-1ae6-4327-a298-2def343e9cd8.jpg', 'total_likes_count': 4335, 'total_wordage': 1048047, 'is_following_user': False}, {'id': 7663825, 'slug': '78f970537a5e', 'nickname': '名贵的考拉熊', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/7663825/7c28763e-002b-4e89-8dea-5b8da210ef2c.jpg', 'total_likes_count': 19513, 'total_wordage': 267784, 'is_following_user': False}, {'id': 6652326, 'slug': 'addcee2f9c78', 'nickname': '没文化的野狐狸', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/6652326/ba6106f4-20eb-4735-885d-561083bd4e55.jpg', 'total_likes_count': 6137, 'total_wordage': 306792, 'is_following_user': False}, {'id': 278, 'slug': 'paQcNW', 'nickname': '邓哲', 'avatar_source': 'https://upload.jianshu.io/users/upload_avatars/278/0778727c-c557-4ffb-929c-6ee182a58145.png', 'total_likes_count': 1491, 'total_wordage': 433989, 'is_following_user': False}], 'total_count': 43316}, path=This(), context=None))))]
<class 'list'>
5796592
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值