介绍
Python的requests模块是一个常用的HTTP库,用于发送HTTP请求和处理响应。下面是requests模块的一些常用参数和方法的介绍:
安装
要使用requests模块,首先需要安装它。可以使用pip命令来安装:
pip install requests
参数:
url:请求的URL地址。
params:请求的查询参数,可以是一个字典或字符串。
headers:请求的头部信息,可以是一个字典。
data:请求的主体数据,可以是一个字典、字符串或文件对象。
json:请求的主体数据,以JSON格式发送。
cookies:请求的Cookie信息,可以是一个字典。
auth:请求的身份验证信息,可以是一个元组。
timeout:请求的超时时间,可以是一个整数或浮点数。
proxies:请求的代理信息,可以是一个字典。
verify:请求的SSL证书验证方式,可以是一个布尔值或字符串。
allow_redirects:请求的重定向方式,可以是一个布尔值或字符串。
方法:
get(url, params=None, **kwargs):发送GET请求。
post(url, data=None, json=None, **kwargs):发送POST请求。
put(url, data=None, **kwargs):发送PUT请求。
delete(url, **kwargs):发送DELETE请求。
head(url, **kwargs):发送HEAD请求。
options(url, **kwargs):发送OPTIONS请求。
patch(url, data=None, **kwargs):发送PATCH请求。
响应对象的属性和方法:
status_code:响应的状态码。
text:响应的内容,以文本形式返回。
content:响应的内容,以字节形式返回。
json():将响应的内容解析为JSON格式。
headers:响应的头部信息,以字典形式返回。
cookies:响应的Cookie信息,以字典形式返回。
url:响应的URL地址。
encoding:响应的编码方式。
raise_for_status():如果响应的状态码不是200,抛出一个异常。
以上是requests模块的一些常用参数和方法的介绍,更多详细的信息可以参考官方文档:https://docs.python-requests.org/
requests.post()参数区别
在通过requests.post()进行POST请求时,传入报文的参数有两个,一个是data,一个是json。
data与json既可以是str类型,也可以是dict类型。
区别:
不管json是str还是dict,如果不指定headers中的content-type,默认为application/json
data为dict时,如果不指定content-type,默认为application/x-www-form-urlencoded,相当于普通form表单提交的形式
data为str时,如果不指定content-type,默认为text/plain
json为dict时,如果不指定content-type,默认为application/json
json为str时,如果不指定content-type,默认为application/json
用data参数提交数据时,request.body的内容则为a=1&b=2的这种形式,用json参数提交数据时,request.body的内容则为’{“a”: 1, “b”: 2}'的这种形式
来源地址:https://blog.csdn.net/qq_22200671/article/details/131791422