【问题标题】:How to continue adding more json info如何继续添加更多 json 信息
【发布时间】:2021-01-19 17:38:44
【问题描述】:

我正在发出http 请求,以便在这样的循环中检索json 值:

while response.status_code == 200:
   response = requests.get(link)
   data = response.json()
   # doing stuff

以及数据是什么样的:

[
 {
  'A': 'foo',
  'B': 'faa',
  'C': 'fee'
 }
]

我只想将n 请求附加到n-1 下方,依此类推,但这样我只保存了最后一个请求的值。

这是我在提出第二个请求后想要的示例:

[
 {
  'A': 'foo',
  'B': 'faa',
  'C': 'fee'
 },

 {
  'A2': 'foo2',
  'B2': 'faa2',
  'C2': 'fee2'
 }

]
  • 我怎样才能做到这一点?
  • 有没有更好的方法来保存这些值?

【问题讨论】:

    标签: python json python-3.x python-requests


    【解决方案1】:

    您可以尝试使用循环外的列表

    all_jsons = []
    while response.status_code == 200:
       response = requests.get(link)
       all_jsons.append(response.json())
    print(all_jsons)
    

    输出

    [{'A': 'foo', 'B': 'faa', 'C': 'fee'}, {'A2': 'foo2', 'B2': 'faa2', 'C2': 'fee2'}, {'A': 'foo', 'B': 'faa', 'C': 'fee'}]
    

    由于响应是 JSON 对象的列表,您可以将它们聚合到在循环范围之外创建的列表中。

    【讨论】:

    • 好吧,我很惭愧我自己无法找到这个答案。很有道理,谢谢!
    • 不客气。如果这是您问题的答案,如果您能投票并标记答案,我们将不胜感激。
    • 是的!只是前10分钟内可以选中,不过放心,我会选中的!
    • 非常感谢,很乐意为您提供帮助。
    猜你喜欢
    • 2019-07-10
    • 2020-06-07
    • 1970-01-01
    • 2019-05-12
    • 2015-04-29
    • 1970-01-01
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    相关资源
    最近更新 更多