python - 将 API 调用转换为字典列表以写入数据帧
问题描述
我正在调用一个 API,它返回一个字典列表,但是是字节类型的。我尝试解码,但以字符串而不是字典列表结束。我不确定如何对此进行解码并让字典列表返回,然后才能写入数据帧或 CSV。
我的代码如下所示(我隐藏了订阅密钥):
headers = {
# Request headers
'Ocp-Apim-Subscription-Key': '***',
}
params = urllib.parse.urlencode({
})
try:
conn = http.client.HTTPSConnection('api.fantasydata.net')
conn.request("GET", "/nascar/v2/json/drivers?%s" % params, "{body}", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
输出是这样的(缩短的):
b'[{
"DriverID":80000544,
"FirstName":"Jeffrey",
"LastName":"Abbey",
"Number":34,
"Team":null,
"BirthDate":null,
"BirthPlace":null,
"Gender":null,
"Height":null,
"Weight":null,
"Manufacturer":null,
"Engine":null,
"Chassis":null,
"Sponsors":null,
"CrewChief":null,
"PhotoUrl":"https:\\/\\/s3-us-west-2.amazonaws.com\\/static.fantasydata.com\\/headshots\\/nas\\/low-res\\/0.png",
"Updated":"2018-07-14T03:17:41",
"Created":"2017-07-15T09:38:41"}, ...
解决方案
推荐阅读
- javascript - JAVASCRIPT / REACT:为 for 循环中的每个元素返回 HTML
- c - 找不到内存问题
- java - google cloud java app的测试版和部署版效果不同
- javascript - Chrome 扩展保留对弹出页面的更改
- sql - 如何包含列值大于使用内部联接的 SQL 查询中返回的值的行?
- python - 查找与列表匹配的子字符串
- javascript - 只能在对他进行身份验证后立即访问 POST 请求上的 req.user,而不是稍后在代码中访问
- c# - params 关键字是否支持将 ValueTuple 作为参数 C# 7.0?
- kubectl - 我们如何使用 kubectl 在 pod 上运行带有参数的命令?
- matlab - 如何在 MATLAB 中绘制声信号的频谱