爬虫 request库
reponse对象属性:
r.status_code HTTP请求的返回状态,200表示连接成功,404表示失败
r.text HTTP响应内容的字符串形式,即,url对应的页面内容
r.encoding 从HTTP header中猜测的响应内容的编码方式
r.apparent_encoding 从内容中分析出响应内容编码方式
r.content HTTP响应内容的二进制形式
request库连接异常
requests.ConnectionError 网络连接错误异常,如DNS查询失败、拒绝连接等
requests.HTTPError HTTP错误异常
requests.URLRequired URL缺失异常
requests.TooManyRedicects 超过最大重定向次数,产生重定向异常
requests.ConnectTimeout 连接远程服务器超时异常
requests.Timeout 请求URL超时,产生超时异常
requests.raise_for_status() 如果不是200,产生异常requests.HTTPError
request库7个主要方法:
requests.request() 构造一个请求,支撑以下各方法的基础方法
requests.request(method,url,**kwargs)
method:请求方式,对应get/put/post/options等7种
url:拟获取页面的url链接
**kwargs:控制访问的参数,共13个
params:字典或字节序列,作为参数增加到url中
data:字典、字节序列或文件对象,作为Request的内容
json:JSON格式的数据,作为Request的内容
headers:字典,HTTP定制头(模拟浏览器向网站发起访问)
cookies:字典或CookieJar,Request中的cookie
auth:元组,支持HTTP认证功能
files:字典类型,传输文件
timeout:设置超时时间,秒为单位
proxies:字典类型,设定访问代理服务器,可以增加登录代理
allow_redirects:True/False,默认True,重定向开关
stream:True/False,默认为True,获取内容立即下载开关
verify:True/False,默认为True,认证SSL证书开关
cert:本地SSL证书路径
requests.get() 获取HTML网页的主要方法,对应于HTML的GET
requests.get(url,params=None,**kwargs)
requests.head() 获取HTML网页头信息的方法,对应于HTML的HEAD
requests.head(url,**kwargs)
requests.post() 向HTML网页提交POST请求的方法,对应于HTML的POST(附加新的数据)
requests.post(url,data=None,json=None,**kwargs)
requests.put() 向HTML网页提交PUT请求的方法,对应于HTML的PUT(存储资源覆盖原来)
requests.put(url,data=None,**kwargs)
requests.patch() 向HTML网页提交局部修改请求,对应于HTML的PATCH
requests.patch(url,data=None,**kwargs)
requests.delete() 向HTML页面提交删除请求,对应于HTML的DELETDE
requests.delete(url,**kwargs)