爬虫是什么
网页的本质,是设备通过读取服务器数据库的内容,按照既定格式投射到显示屏上的过程。
我们在电脑,手机或者其他设备上看到的所有信息,标题,内容,评论,点赞等等信息,都是按照既定的格式把存在于服务器的数据库内的数据都去后,显示出来的。
而爬虫就是通过程序把网页上的信息,再还原成数据库的过程。
所以,爬虫也可以是说是一种偷盗服务器数据的行为,很多网站会限制爬虫,因为它可能存在,对服务器的性能骚扰,内容层面的法律风险和个人隐私的泄露的风险。
一般的服务器通过2种方式来限制网络爬虫:
第一种 网站的所有者有一定的技术能力,通过来源审查来限制网络爬虫。来源审查,一般通过判断User-Agent来进行限制。
第二种 通过Robots协议来告诉网络爬虫需要遵守的规则,哪些可以爬取,哪些是不允许的,并要求所有的爬虫遵守该协议。
如何爬取数据
根据需要爬取数据的规模大小,可以有以下三种方法:
小规模,数据量小,爬取速度不敏感;对于这类网络爬虫我们可以使用Requests库来实现,主要用于爬取网页。
中规模,数据规模较大,爬取速度敏感;对于这类网络爬虫我们可以使用Scrapy库来实现,主要用于爬取网站或系列网站。
大规模,搜索引擎,爬取速度关键;此时需要定制开发,主要用于爬取全网,一般是建立全网搜索引擎,如百度、Google搜索等。
爬虫参考文档