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

本贴最后更新于 1575 天前,其中的信息可能已经物是人非

使用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()方法更方便,返回字典格式方便取值

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