为了账号安全,请及时绑定邮箱和手机立即绑定

连接多个 JSON 响应

连接多个 JSON 响应

白猪掌柜的 2023-02-07 13:53:17
我尝试连接来自 XHR 的几个 JSON 响应。我有一个 XHR 列表,我想查看并将所有结果放在同一个 CSV 中。我知道我应该在循环外写入 CSV,但最初我只是想让它工作。我在最后发表了两条评论,这是我没有开始工作的部分。我还在最后添加了一个中断,这样您就不必遍历所有内容。import requestsimport pandas as pdfrom pandas.io.json import json_normalizeimport csvimport json    h = {     'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36',     'X-Requested-With': 'XMLHttpRequest',}#VARIABLESi=0projects = "https://cdn-search-standard-prod.azureedge.net/api/v1/tags/all/2af3c43b-98aa-49d8-b4ff-da6d5a992751" y=requests.get(projects,headers=h).json()df=pd.json_normalize(y)df.to_csv(r'C:\Users\abc\Documents\Python Scripts\ListOfProjects_20200628.csv', index=False, sep=';',encoding='utf-8')export=[]i=29for y in y:    print(str(df.id[i]))    u = "https://cdn-search-standard-prod.azureedge.net/api/v1/search/getstageobjects/"+str(df.id[i])    i = i+1    units = requests.get(u,headers=h).json()    dp=pd.DataFrame(units)    dp = pd.json_normalize(units)    dp.to_csv(r'C:\Users\abc\Documents\Python Scripts\Units_20200628.csv', index=False, sep=';',encoding='utf-8')    #export = pd.concat([export,dp], ignore_index=False, sort=False)    #export.to_csv(r'C:\Users\abc\Documents\Python Scripts\Units_20200628.csv', index=False, sep=';',encoding='utf-8')    break
查看完整描述

1 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

这是一种方法。将所有“部分”数据框保存在列表中,然后使用pd.concat. 然后,您可以使用保存这个大数据框to_csv。这是代码的相关部分:


df_list = []


for y in y[:10]: # for development purpose - iterate over 10 URLs only

    print(str(df.id[i]))

    u = "https://cdn-search-standard-prod.azureedge.net/api/v1/search/getstageobjects/"+str(df.id[i])

    i = i+1

    units = requests.get(u,headers=h).json()

    dp=pd.DataFrame(units)

    dp = pd.json_normalize(units)

    df_list.append(dp)


res = pd.concat(df_list)

res.to_csv("final_result.csv")


查看完整回答
反对 回复 2023-02-07
  • 1 回答
  • 0 关注
  • 84 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信