parsingJSON到Excel – Python

我试图查询Azure AD的一些数据,返回JSON。 我想采取这些数据的一部分,并填写一个Excel表。 我已经检查了很多从JSON转储所有数据到Excel表格(使用xlwt)的例子,但是我怎样才能完成JSON数据的一部分?

这是我正在使用的脚本:

import requests def get_application_list(): application_list_response = requests.get("https://graph.microsoft.com/beta/applications", verify=False, headers={"Authorization": "Bearer" + access_token}) application_list_response_json = application_list_response.json() for item in application_list_response_json['value']: print("Application Name:", item['displayName']) print("Application ID:", item['id']) get_application_list() 

我想在Excel表格中获取应用程序名称和应用程序ID。 示例输出:

在这里输入图像说明

PS:我对Python很陌生。 任何build议来优化这个代码也是有帮助的。

谢谢!

只要将其保存为CSV文件,然后您可以在M $ Excel中打开它。

 import csv import requests def save_application_list(target_file): application_list_response = requests.get("https://graph.microsoft.com/beta/applications", verify=False, headers={"Authorization": "Bearer" + access_token}) application_list_response_json = application_list_response.json() with open(target_file, 'w') as fp: writer = csv.DictWriter(fp, ['displayName', 'id']) writer.writeheader() writer.writerows(application_list_response_json['value']) save_application_list('/path/to/your/saved/file.csv') 

更新:

要将字段名称更改为['Application Name', 'Application ID'] ,只需将writer.writeheader()更改为writer.writeheader() ,如下所示:

 def save_application_list(target_file): ... with open(target_file, 'w') as fp: writer = csv.DictWriter(fp, ['displayName', 'id']) writer.writerow({ 'displayName': 'Application Name', 'id': 'Application ID' }) writer.writerows(application_list_response_json['value']) ... 

更新2:

由于JSON文件中的其他字段不需要保留,所以代码可以是这样的:

 def save_application_list(target_file): ... with open(target_file, 'w') as fp: writer = csv.DictWriter(fp, ['Application Name', 'Application ID']) writer.writeheader() writer.writerows({ 'Application Name': item['displayName'], 'Application ID': item['id'] } for item in application_list_response_json['value']) ...