如何判断requests.get()得到的响应是text还是json格式?
时间: 2023-06-13 12:04:10 浏览: 719
可以通过响应对象的headers属性中的Content-Type字段来判断响应的格式。如果Content-Type字段的值包含"text",则表示响应为文本格式,如果包含"json",则表示响应为JSON格式。
示例代码如下:
```python
import requests
import json
response = requests.get('https://api.github.com/users/octocat')
if "text" in response.headers['Content-Type']:
print(response.text)
elif "json" in response.headers['Content-Type']:
json_data = json.loads(response.text)
print(json_data)
else:
print("Unknown response format.")
```
在上述代码中,首先通过requests.get()方法获取响应对象response,然后通过response.headers['Content-Type']获取Content-Type字段的值,判断响应的格式,并根据不同的格式进行处理。如果是文本格式,则直接输出响应的文本内容;如果是JSON格式,则使用json.loads()方法将响应的JSON字符串转换为Python对象,并输出。如果Content-Type字段的值既不包含"text",也不包含"json",则表示响应格式未知,输出"Unknown response format."。
阅读全文