1. 如何使用requests模块
安装:
pip install requests
使用流程:
指定url
基于requests模块发起请求
获取响应对象中的数据值
持久化存储
2.requests库的get方法
r= requests.get(url,params=None,**kwargs)
url:拟获取页面的url链接
params:url中的额外参数,字典或字节流格式,(可选)
**kwargs:12个控制访问的参数
r:包含服务器资源的response对象
3.response对象的属性
r.status_code: http请求的返回状态,200表示连接成功,404表示失败
r.text: http响应内容的字符串形式,也就是url对应的页面内容
r.encoding: 从httpheader中猜测的响应内容的编码方式
r.apparent_encoding: 从内容中分析出的响应内容的编码方式
r.content: http响应内容的二进制形式
4.requests库的方法
构造一个请求,支撑以下各方法的基础方法(重点)
requests.request()
获取HTML网页的主要方法
requests.get()
获取HTML网页头部信息的方法
requests.head()
向HTML网页提交post请求的方法
requests.post()
向HTML网页提交put请求的方法
requests.put()
向HTML网页提交局部修改请求
requests.patch()
向HTML网页提交删除请求
requests.delete()
5.requests.request(method,url,**kwargs)
method:请求方式,对应get/put/post等7种
url:获取页面的url链接
**kwargs:控制访问的参数,一共有13个
method:请求方式,对应GET/PUT/POST/HEAD/PATCH/OPTIONS/DELETE等7种
r=requests.request('GET',url,**kwargs)
r=requests.request('PUT',url,**kwargs)
r=requests.request('POST',url,**kwargs)
url:获取页面的url链接
**kwargs:控制访问的参数,一共有13个
params:字典或字节序列,作为参数增加到url中
kv={'key1':'value1','key2':'value2'}
r=requests.request('GET','http://python123.io/ws', params=kv)
print(r.url) #http://python123.io/ws?key1=value1&key2=value2
data:字典,字节序列或文件对象,作为request的内容
kv={'key1':'value1','key2':'value2'}
r=requests.request('POST','http://python123.io/ws', data=kv)
body="主题内容"
r=requests.request('POST','http://python123.io/ws', data=body)
json: ison格式的数据,作为request的内容
kv={'key1':'value1'}
r=requests.request('POST','http://python123.io/ws', json=kv)
headers:http定制头
hd={'user-agent':'chrome/10'}
r=requests.request('POST','http://python123.io/ws',headers=hd)
cookies:字典或cookieJar
auth:元组,支持http认证功能
files:字典类型,传输文件
fs={'file':open('data.txt','rb')}
r=requests.request('POST','http://python123.io/ws',files=fs)
timeout:设定超时时间,以秒为单位
r=requests.request('GET','http://python123.io/ws',timeout=10)
proxies:字典类型,设定访问代理服务器,可以增加登录认证
allow_redirects:True/False,默认为True,重定向开关
verify:True/False,默认为True,认证SSL证书开关
cert:本地SSL证书路径
strem:True/False,默认为True,获取内容立即下载开关