如何过滤JSON数据?

皮尔斯·托马斯
import requests

s = requests.Session()
r = s.get(
    'https://www.off---white.com/en/GB/men/products/omia066s188000161001.json')
print(r.text)

上面的代码重新运行以下代码:

{"available_sizes":[{"id":104792,"name":"40","preorder_only":false},
                    {"id":104794,"name":"42","preorder_only":false},
                    {"id":104795,"name":"43","preorder_only":false}]}

我将如何过滤上述数据,以便当我指定名称值为 40 时,id会打印 104792值?

简单来说,如果我要求 'name' 40 的值,那么脚本将打印 'id' 值。

vishes_shell

您可以使用方法.json()requests.Reponse

data = r.json()
try:
    value = next(size['id'] 
                 for size in data['available_sizes'] 
                 if size['name'] == '40')
except StopIteration:
    value = None

value将存储第一尺寸ID与name == '40'如果这样的存在,如果没有None

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章