代码之家  ›  专栏  ›  技术社区  ›  el323

如何从API响应解析json值

  •  0
  • el323  · 技术社区  · 6 年前

    我试图解析来自API的json响应。

    response = requests.post('https://analysis.lastline.com/analysis/get_completed', files=files)
    
    my = response.json()
    print my
    

    输出:

    {u'data': {u'tasks': [], u'more_results_available': 0, u'after': u'2018-03-18 22:00:20', u'before': u'2018-03-18 17:00:22'}, u'success': 1}
    

    在这里 my 是一本字典。现在我想根据键获取值。

    我试过这个:

    print my['tasks']
    

    它给了我 KeyError

    2 回复  |  直到 6 年前
        1
  •  1
  •   MSS    6 年前

    您有一个嵌套字典。 要根据“task”键访问值,您应该这样写:

    print my['data']['tasks']
    
        2
  •  1
  •   Rakesh    6 年前

    您需要使用 data 访问密钥 tasks

    例如:

    d = {u'data': {u'tasks': [], u'more_results_available': 0, u'after': u'2018-03-18 22:00:20', u'before': u'2018-03-18 17:00:22'}, u'success': 1}
    print(d["data"]["tasks"])
    print(d["data"]["after"])
    

    输出:

    []
    2018-03-18 22:00:20