获取响应正文的两种方法 ----text 和 json ()

使用 Python 的第三方库 requests 可以获取一个请求的响应正文

例:点击论坛内任意一篇博客 http://www.lemfix.com/topics/36,获取他的响应正文

1.text 方法

import requests
url='http://www.lemfix.com/topics/36'
res=requests.get(url)
print(res.headers)#获取响应头
print(res.text)#获取响应正文
print(res.status_code)#获取状态码

获取到的所有响应内容都存储在 res 里面,包括响应头--headers,响应正文---text,状态码---status_code

获取到的响应正文为 HTML 格式,一个个标签对

image.png
2.json()方法

import requests
recharge='http://47.107.168.87:8080/futureloan/mvc/api/member/recharge'
recharge_data={'mobilephone':18688773467,'amount':'1000'}
res_recharge=requests.get(recharge,recharge_data)
print(res_recharge.json())

获取到的响应正文为 JSON 格式:
image.png

两种方法的注意点

1.返回的数据类型不一样,text 返回 str 类型,json()返回字典类型
image.png

2.text 方法能获取响应正文为 HTML 和 JSON 格式,但是 json()方法只能获取响应正文为字典或 JSON 格式,用 json()不能获取 HTML 的响应正文,会报错

1)用 text 获取 JSON 格式的响应正文image.png
2)用 json()获取 HTML 的响应正文,会报错
image.png

总结:

1.text 万能法,json()只能获取 JSON 格式或者字典格式

2.json()方法更方便,返回字典格式方便取值

回帖
请输入回帖内容 ...