我必须进行API
调用并以二进制文件类型获取json
数据。为此,我使用下面的代码。对于文件输出,我参考了这两个帖子:post 1和post 2。我的问题是下面哪个代码包含二进制格式的JSON数据?我知道模式'wb'是以二进制格式写数据,但不确定这两个文件是否都是二进制格式?是否有一种方法来验证哪个文件是二进制格式的?
我是Python
和API
的新手,所以非常感谢帮助!
提前感谢!
Python
import requests
url = "https://covid-api.com/api/regions?iso=chn"
payload={}
headers = {}
response = requests.request("GET", url, headers=headers, data=payload)
使用Pickle模块
with open("file.pkl","wb") as f:
pickle.dump(response.content, f)
使用JSON模块
import json
with open("file.json","wb") as f:
f.write(response.content)
使用requests
响应.json()
方法-是否为二进制可能无关紧要,因为它将简要地成为一个本地Python字典(几乎肯定会填充utf-8字符串)
import json
import requests
r = requests.get(...)
r.raise_for_status() # check if request succeeded
j = r.json()
with open(path_destination, "w") as fh:
json.dump(j)