requests库的使用
requests库相关
安装
pip install requests
pip install requests == 2.22.0
pip uninstall requests
pip list
pip show requests
Requests库的方法
-
requests.request(method,url,**kwargs) 构造一个请求,支撑以下各方法的基础方法
method:请求方式,对应get/put/post等7种
url:拟获取页面的url链接
**kwargs:控制访问的参数,共13个 -
requests.get(url,params=None,**kwargs) 获取HTML网页的主要方法,对应于HTTP的GET
url:拟获取页面的url链接
params:url中的额外参数,字典或字节流格式,可选
**kwargs:除了params外的12个控制访问的参数 -
requests.head(url,**kwargs) 获取HTML网页头信息的方法,对应于HTTP的HEAD
-
requests.post(url,data=None,json=None,**kwargs) 向HTML网页提交POST请求的方法,对应于HTTP的POST
-
requests.put(url,data=None,**kwargs) 向HTML网页提交PUT请求的方法,对应于HTTP的PUT
-
requests.patch(url,data=None,**kwargs) 向HTML网页提交局部修改请求,对应于HTTP的PATCH
-
requests.delete(url,**kwargs) 向HTML页面提交删除请求,对应于HTTP的DELETE
**kwargs:控制访问的参数,均为可选项 params:字典或字节序列,作为参数增加到url中 data:字典、字节序列或文件对象,作为Request的内容 timeout:设定超时时间,秒为单位 json :JSON格式的数据,作为Request的内容 proxies :字典类型,设定访问代理服务器,可以增加登录认证 headers :字典,HTTP定制头 allow_redirects :True/False,默认为True,重定向开关 cookies :字典或CookieJar,Request中的cookie stream :True/False,默认为True,获取内容立即下载开关 auth :元组,支持HTTP认证功能 verify :True/False,默认为True,认证SSL证书开关 files :字典类型,传输文件 cert:本地SSL整数路径
Requests库的Response对象:
Response对象包含服务器返回的所有信息,也包含请求的Request信息。
属性
status_code : HTTP请求的返回状态,200表示连接成功,404表示失败
text : HTTP相应内容的字符串形式,即,url对应的页面内容
encoding : 从HTTP header中猜测的响应内容编码方式
(如果header中不存在charset,则认为编码为ISO-8859-1)
apparent_encoding : 从内容中分析出的相应内容编码方式(备选编码方式)
content : HTTP相应内容的二进制形式
Requests库的异常
ConnectionError : 网络连接错误异常,如DNS查询失败、拒绝连接等
HTTPError : HTTP错误异常
URLRequired : URL缺失异常
TooManyRedirects : 超过最大重定向次数,产生重定向异常
ConnectTimeout : 连接远程服务器超时异常
Timeout : 请求URL超过,产生超时异常
response.raise_for_status() : 如果不是200,产生异常requests.HTTPError
HTTP协议及Requests库方法
HTTP----Hypertext Transfer Protocol
HTTP是一个基于“请求与响应”模式的、无状态的应用层协议
方法略
HTTP协议对资源的操作
方法
GET : 请求获取URL位置的资源
HEAD :请求获取URL位置资源的响应消息报告,即获得该资源的头部信息
POST :请求向URL位置的资源后附加新的数据
PUT :请求向URL位置存储一个资源,覆盖原URL位置的资源
PATCH :请求局部更新URL位置的资源,即改变改处资源的部分内容(好处:节省网络带宽)
DELETE :请求删除URL位置存储的资源