如何仅用字符串提取JSON数据?遍历获取所有name字段
解决方案:遍历JSON数组获取所有'name'字段
你只需要对friends数组做遍历操作,就能取出所有的name字段,不用手动改索引或者写自增逻辑。修改后的代码如下:
import requests import json def BaseTesting(TarLink): PayloadToSend = { } HeadersToSend = { # make sure to change your token at least once every 30 mins 'authorization': '', 'user-agent': '' } ReqForFriends = requests.post(TarLink, headers=HeadersToSend, data=PayloadToSend).text LoadedJSONData = json.loads(ReqForFriends) # 遍历friends数组中的每个对象 for friend in LoadedJSONData['friends']: print(friend['name']) BaseTesting(TarLink="")
补充说明:
LoadedJSONData['friends']是一个列表,直接用for循环就能逐个取出里面的每个好友对象- 每次循环里的
friend就是单个好友的字典,直接通过friend['name']就能拿到对应的名字 - 如果需要把所有名字存起来而非直接打印,可以用列表推导式收集:
friend_names = [friend['name'] for friend in LoadedJSONData['friends']] print(friend_names) # 输出 ['test1', 'test2', 'test3']
另外注意你提供的JSON结构最后一个对象末尾多了个逗号,实际请求返回的JSON如果有这种格式问题会导致json.loads报错,需要确保返回的JSON格式合法。
内容的提问来源于stack exchange,提问作者Kuro
相关产品推荐
相关产品推荐

