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']) ...