2024-09-30 01:22:14 发布
网友
所以我有下面的JSON块:
b'{"data":[{"categories":[{"id":"IAB3","label":"Business","parent":"IAB3","score":"0.223819028028717559","confident":true}],"url":"megatel.de"}]}'
我只需要一个包含第一个label字段内容的字符串
x = b'{"data":[{"categories":[{"id":"IAB3","label":"Business","parent":"IAB3","score":"0.223819028028717559","confident":true}],"url":"megatel.de"}]}' (x.split('"label":')[1]).split(",")[0][1:-1] >>'Business'
下面的代码段以Business的形式返回输出
Business
import json data = json.loads('{"data":[{"categories":[{"id":"IAB3","label":"Business","parent":"IAB3","score":"0.223819028028717559","confident":true}],"url":"megatel.de"}]}') print(data['data'][0]['categories'][0]['label'])
如果您有更多这样的数据,您可以迭代data变量,并通过在这两个位置用iterateor替换0索引来获得所需的结果
data
0
例如,如果json如下所示
{"data": [ {"categories": [ {"id":"IAB3", "label":"Business", "parent":"IAB3", "score":"0.223819028028717559", "confident":true} ], "url":"megatel.de" }, {"categories": [ {"id":"IAB3", "label":"Business", "parent":"IAB3", "score":"0.223819028028717559", "confident":true} ], "url":"megatel.de" } ] }
您可以使用以下脚本获得类似的输出
for entry in data['data']: for categories in entry['categories']: print categories['label']
如果您也可以尝试regex方法:
import re txt = b'{"data":[{"categories":[{"id":"IAB3","label":"Business","parent":"IAB3","score":"0.223819028028717559","confident":true}],"url":"megatel.de"}]}' pattern = r'"label":"(.*?)"' labels = re.search(pattern, str(txt, 'utf-8')).groups() print(labels[0]) # Business
下面的代码段以
Business
的形式返回输出如果您有更多这样的数据,您可以迭代
data
变量,并通过在这两个位置用iterateor替换0
索引来获得所需的结果例如,如果json如下所示
您可以使用以下脚本获得类似的输出
如果您也可以尝试regex方法:
相关问题 更多 >
编程相关推荐