您的位置:首页 > 新闻资讯 >文章内容
网络爬虫对网站的抓取策略
来源:互联网 作者:admin 时间:2019-02-01 09:07:00

    虽然网络爬虫可以使用代理IP来突破网站的IP限制,但是如果爬取的速度过快,会对网站造成非常大的影响,这样网站肯定是会发现爬虫的踪迹,并进行限制的。而且除了IP限制,网站还有其他的各种限制,爬虫会遇到很多的问题,因此在爬取之前,爬虫需要先了解下网站的情况。下面小编为大家介绍下网络爬虫对网站的抓取策略


    一、抓取策略


    那些网页是我们需要去下载的,那些是无需下载的,那些网页是我们优先下载的,定义清楚之后,能节省很多无谓的爬取。


    使用URL的正则特征是一个简单但却很高效的模式;对于定向抓取,一般的网站的URL有一定的特征,比如可能仅仅关心 .html, .htm, .asp, .aspx, .php, .jsp, .jspx类型的网页;或者是如果可以得到目标网站的正则,则可以大大的降低抓取的数量;又或者我们无需关心某一类网页,比如我们不抓取 bbs.taobao.com下面的内容;仅仅需要抓取淘宝的商品页面(http://item.taobao.com/item.htm?id=\d+ )。通过URL的正则能极大的降低抓取数量,也可以通过网页的文本特征来确定;不过要复杂得多了,一般需要一定数量已知页面的训练集合,然后提取页面的文本特征,然后通过向量空间模型或者其其他基于主题词提取的模型计算目标网页和训练集网页的距离,决定是否是目标网页。


网络爬虫对网站的抓取策略


    二、更新策略


    Freshness:表示抓取到的网页是否已经被修改


    Age:表示抓取的网页过期的时间


    对于更新来说,目标是让平均age时间越小,freshness越高;一般的更新策略有两种:定期批量更新和按更新周期更新;定期批量更新指对一批 URL,按照失效时间定期去刷新,按周期更新指的是按照页面更新变化频率而修正是更新频率,一般来说,更新越频繁的网页更新也就越快。


    三、抓取频率


    我们需要合理的去下载一个网站,却又不失效率。


    同时开启N个线程抓取一个网站,相信很快就会被对方网站封掉;因此抓取的频率也很重要;抓取网站同时不对对方网站造成压力;在robot.txt协 议里面定义Crawl-delay来确定抓取的频率也是一种网站的通用的做法,对于一般的抓取而言,10到20秒抓取一次是一个比较保险的频率,也有提出 10*t的抓取间隔(t是download时间)比较合理。


    四、抽取策略


    我们应该如何的从网页中抽取我们想要的内容,不仅仅包含最终的目标内容,还有下一步要抓取的url。


    XPATH是一个简单直观,但是很有效的一个方案,XPATH能精准的定位网页的任意一个位置,意味着我们可以很精准的抽取页面上的任意位置,当面临很多网站的时候,当然配置XPATH就是一个很艰巨的任务,也许存在一个自适应的XPATH识别的方法。


    在java下面,HtmlUnit是一个不错的 解决方案,HtmlUnit是Junit 的扩展测试框架之一,该框架模拟浏览器的行为,开发者可以使用其提供的API对页面的元素进行操作,套用官方网站的话HtmlUnit“是Java程序的 浏览器”。HtmlUnit支持HTTP,HTTPS,COOKIE,表单的POST和GET方法,能够对HTML文档进行包装,页面的各种元素都可以被 当作对象进行调用,另外对JavaScript的支持也比较好。一般来说,HtmlUnit是在java环境下解决JS的很好的选择。


    WebKit包含一个网页引擎WebCore和一个脚本引擎JavaScriptCore,它们分别对应的是KDE的KHTML和KJS;目前比较主流的浏览器Google Chrome和Apple的safari,都是基于WebKit的内核写的。使用浏览器作为抓取能更好的模拟用户浏览的行为,能够天然的解决JS和AJAX等问题,问题可能就是性能是一个瓶颈。


    上文介绍了网络爬虫对网站的抓取策略,适度控制爬取的速度,这对大家都好,即使爬虫控制了速度,也可以使用代理来提高效率的。


相关文章内容简介
推荐阅读
  • 12 2019-06
    网上公开的免费代理ip隐患多

    网上公开的免费代理ip隐患多,虽然如此,但是依然有很多人在使用,这是为何呢?

  • 21 2019-06
    如何验证ip代理是否可以用

    如何验证ip代理是否可以用?网络上有很多的免费代理ip,但是有效率低的可怜,这个是为什么呢?这是因为用的人太多了,同一个ip无数人用来访问同一个网站,ip就会被封掉。那么如何验证ip是

  • 27 2019-06
    想刷阅读量用代理IP

    想刷阅读量用代理IP,这个刷量在目前来说是比较常见的,有些人是为了让数据好看些,免得被批评;有些人刷量是为了获取广告费等等,总之现今的刷量已经成为常态了。

  • 23 2019-03
    养号需要使用代理IP换IP地址吗?

    我们有时候需要使用多个账号,那么前期就需要养号了,什么是养号呢?养号需要使用代理IP换IP地址吗?

  • 17 2019-04
    找个代理IP资源,了解这几点避免被忽悠

    用户对代理IP的需求量越来越大,代理IP服务供应商也越来越多,在面对更多的选择时,也意味着选择一家靠谱的代理IP服务商更加不容易。那么如何选择一家靠谱的代理IP服务商呢?

  • 10 2019-05
    代理IP刷数据能提升销量吗?

    代理IP刷数据能提升销量吗?电商竞争大,如果想开网店,并不是那么容易的,就像淘宝店非常多,但是很多也是没有赚钱的。很多商家为了吸引流量,选择使用工具来提升一些指数,从而获得

在线客服
大客户VIP渠道
点击这里给我发消息
讨论QQ群
HTTP代理IP爬虫
客服电话
13318873961