requests库
reguests.request(method,url,**fwarys)
method:请求方式,对应get/put/post等七种
url:拟获取页面的url链接
**kwarus:控制访问的参数,共13个
方法
参数 | 说明 |
---|---|
params | 字典或字节序列,作为参数增加到url中 |
data | 字典字节序列或文件对象,作为Request的内容 |
json | JSON格式的数据,作为Request的内容 |
headers | 字典,HTTP定制头(模拟浏览器进行访问) |
cookies | 字典或cookielar,Request中的cookie |
auth | 元组,支持HTTP认证功能 |
files | 字典类型,传输文件 |
timeout | 设定超时时间,秒为单位 |
proxies | 字典类型,设定访问代理服务器,可以增加认证 |
allow-redirects | True/False,默认为True, 重定向开关 |
stream | True/False,默认为True, 获取内容立即下载开关 |
verify | True/False,默认为True,认证SSL证书开关 |
cert | 本地SSL证书路径 |
对象的属性
异常
HTTP协议
HTTP协议对资源的操作
http与request库的对比
网络爬虫
网络爬虫的尺寸
网络爬虫的性能骚扰
web服务器默认接收人类访问
受限于编写水平和目的,网络爬虫将会给web服务器带来巨大的资源开销
网络爬虫的法律风险
服务器上的数据有产权归属
网络爬虫获取数据后牟利将带来法律风险
网络爬虫的隐私泄露
网络爬虫可能具备突破简单访问控制的能力,获取被保护数据从而泄露个人隐私
网络爬虫的限制
来源审查:判断User-Agent进行限制
检查来访HTTP协议头的User-Agent域,只响应浏览器或友好爬虫的访问
发布公告:Robots协议
告知所有爬虫网站的爬取策略,要求爬虫遵守
Robots协议
全称:Robots Exclusion Standard,网络爬虫排除标准
作用:网站告知网络爬虫哪些页面可以抓取,哪些不行
形式:在网站根目录下的
Robots协议的使用
网络爬虫:自动或人工识别robots.txt,在进行内容爬取
约束性:Robots协议是建议但非约束性,网络爬虫可以不遵守,但存在法律风险