如何使用python将Web API的整个JSON响应转换为CSV文件?

时间:2019-05-15 01:51:23

标签: python json pandas

我想通过Python代码将such page的整个字符串或“ gudid”转换为CSV文件。

以下代码的结果仅包含上述URL的部分内容(39行)(由ms-python.python格式化后为125行)。

import requests
import json
import pandas as pd
RESORCE_INFORMATION = "https://accessgudid.nlm.nih.gov/api/v2/devices/lookup.json"

PARAMTERS = "di=08717648200274" 

TARGET = RESORCE_INFORMATION+'?'+PARAMTERS
print(TARGET)
response = requests.get(TARGET) 
# print(response.text)

json_dict = json.loads(response.text)
df = pd.DataFrame(json_dict["gudid"])
df.to_csv("device_lookup.csv")

如何将整个响应从上述URL转换为CSV文件?

预先感谢

1 个答案:

答案 0 :(得分:0)

如果不是必须使用数据框,则下面的内容将起作用。 我还看到一个过滤条件,您仅将“ gudud”列转换为df,是否有任何原因?...如果不需要,请删除该过滤条件

df = pd.DataFrame(json_dict["gudid"])

import csv
import json

json_dict = json.loads(response.text)
f = open('data.csv')
csv_file = csv.writer(f)
for item in json_dict:
    f.writerow(item)

f.close()