设浅谈优秀爬虫的特性

摘要:针对不一样的运用来讲,网络爬虫系统软件完成方法将会各不相同,可是好用的网络爬虫系统软件都应当具有几类特点,下边深圳市企业网站建设网编就在这里带大伙儿掌握下出色网络...

对于不同的应用来说,爬虫系统实现方式可能各异,但是实用的爬虫系统都应该具备几种特性,下面深圳网站建设小编就在这带大家了解下优秀爬虫的特性:        
1.高性能        
互联网的网页数量庞大如海,所以爬虫的性能至关重要,这里的性能主要是指爬虫下载网页的抓取速度,常见的评价方式是以爬虫每秒能够下载的网页数量作为性能指标,单位时间能够下载的网页数量越多,则爬虫的性能越高。        
要提高爬虫的性能,在设计时程序访问磁盘的操作方法及具体实现时数据结构的选择很关键。比如对于待抓取URL队列和已抓取URL队列,因为URL数量非常大,不同实现方式性能表现迥异,所以高效的数据结构对于爬虫性能影响很大。        
2.可扩展性        
如上所述,爬虫需要抓取的网页数量巨大,即使单个爬虫的性能很高,要将所有网页都下载到本地,仍然需要相当长的时间周期,为了能够尽可能缩短抓取周期,爬虫系统应该有很好的可扩展性,即很容易通过增加抓取服务器和爬虫数量来达到此目的。        
目前实用的大型网络爬虫一定是分布式运行的,即多台服务器专做抓取,每台服务器部署多个爬虫,每个爬虫多线程运行,通过多种方式增加并发性。对于巨型的搜索引擎服务商来说,可能还要在全球范围、不同地域分别部署数据中心,爬虫也被分配到不同的数据中心,这样对于提高爬虫系统的整体性能是很有帮助的。        
3.健壮性        
爬虫要访问各种类型的网站服务器,可能会遇到很多种非正常情况,比如网页HTML编码不规范,被抓取服务器突然死机,甚至是爬虫陷阱等。爬虫对各种异常情况能够正确处理非常重要,否则可能会不定期停止工作,这是无法忍受的。        
从另外一个角度来讲,假设爬虫程序在抓取过程中死掉,或者爬虫所在的服务器宕机,健壮的爬虫系统应该能够做到:再次启动爬虫时,能够恢复之前抓取的内容和数据结构,而不是每次都需要把所有工作完全从头做起,这也是爬虫健壮性的一种体现。        
4.友好性        
爬虫的友好性包含两方面的含义:一是保护网站的部分私密性,另一是减少被抓取网站的网络负载。        
爬虫抓取的对象是各种类型的网站,对于网站拥有者来说,有些内容并不希望被所有人搜索到,所以需要设定协议,来告知爬虫哪些内容是不允许抓取的。目前有两种主流的方法可达此目的:爬虫禁抓协议和网页禁抓标记。


联系我们

全国服务热线:4000-399-000 公司邮箱:343111187@qq.com

  工作日 9:00-18:00

关注我们

官网公众号

官网公众号

Copyright?2020 广州凡科互联网科技股份有限公司 版权所有 粤ICP备10235580号 客服热线 18720358503

技术支持:自助建站