本笔记承接盗字笔记5,是网络课程
爬取网页的通用代码框架:
1.通用代码框架就是一组代码,可以准确可靠地爬取网页内容
理解requests库的异常
异常 说明
requests.ConnectionError 网络连接错误异常,如DNS查询失败、拒绝连接等
requests.HTTPError HTTP错误异常
requests.URLRequired URI缺失异常
requests.TooManyRedirects 超过最大重定向次数,产生重大定向异常
requests.ConnectTimeout 连接远程服务器,超时异常
requests.Timeout 请求URL,产生超时异常
理解Requests库的异常
异常 说明
r.raise 如果不是200,产生异常requests.HTTPError
爬取网页的通用代码框架:
requests.request(method,url,**kwargs)
**kwargs:控制访问的参数,均为可选项
params:字典或字节序列,作为参数url中
二、网络爬虫引发的问题:
网络爬虫的尺寸:
规模 爬取范围 使用工具
小规模,数据量小,爬取速度不敏感 爬取网页 requests库 (>90%)
中规模,数据量大,爬取速度敏感 爬取网站 Scrapy库
大规模,搜索引擎,定制开发 爬取全网 定制开发
网络爬虫的法律风险:
服务器上的产权所有权问题
网络爬虫爬取牟利
网络爬虫泄露个人隐私
Robots协议:user-agent* Disallow
http://www.baidu.com/robots.txt
robots放在根目录下,没有robots协议,说明可以无限的爬取
robots协议的使用:
网络爬虫:自动人工识别robots.txt,再进行内容爬取
网络爬虫可以不遵守网络爬虫协议,但需要冒法律风险,类人行为可以不遵守robots协议(比如:一天只访问几次)