爬虫学习笔记—requests库
requests库是提供操作网页的方法的第三方库,以requests方法为核心,提供6种与HTTP协议对应的方法
HTTP协议的6种方法:
get
:客户端向服务端发起请求,获得资源。请求获得URL处所在的资源post
:向服务端提交新的请求字段。请求URL的资源后添加新的数据head
:请求获取URL资源的响应报告,即获得URL资源的头部patch
:请求局部修改URL所在资源的数据项put
:请求修改URL所在资源的数据元素delete
:请求删除url资源的数据
patch与put 比较:
例如一名学生的信息:姓名:张三;性别:男;学号:123;
patch提交修改性别。修改后:姓名:张三;性别:女;学号:123;
put提交修改性别,修改后:姓名:;性别:女;学号:; 这是因为patch是局部的,put必须提交全部数据项,即整个数据元素。增加了带宽
与之对应,requests库提供requests.get、requests.post、requests.head、requests.patch、requests.put、requests.delete这6种方法
为什么说requests方法是基础:
我们找到各方法的定义:
|
|
可以看出,其他方法是对requests方法的封装,以方便开发者调用。
相关参数
params
:字典或字节序列,作为参数添加到URL中data
:若data=字典,则以form(表单)为Requests内容提交;若data=”字符串”,则Requests data=”字符串”json
:以json格式数据作为Requests内容headers
:字典,模仿浏览器行为,为Requests定制表头cookies
:字典或CookieJar,作为Requests的cookieproxies
:字典,作为代理IP,设定代理服务器timeout
:设定超时时间,以秒为单位file
:字典,传输文件auth
:元组,支持HTTP的认证stream
:True/False,默认为True,获取内容立即下载verify
:True/False 默认为True,认证SSL证书开关allow_redirects
:True/False ,默认为True.支持重定向cert
:本地ssl路径