您的位置:首页 > 新闻资讯 >文章内容
网络爬虫对网站的抓取策略
来源:互联网 作者: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等问题,问题可能就是性能是一个瓶颈。


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


相关文章内容简介
推荐阅读
  • 14 2019-08
    qq的ip地址用代理ip换了比较快

    qq的ip地址用代理ip换了比较快,qq即时聊天软件,拥有国内最大用户群,但也存在通信协议设计缺陷。许多用户与陌生人聊天过程中,点对点连接,不小心就向对方透漏了自己的ip地址,为对方

  • 01 2019-03
    做爬虫在哪里可以选购高效的代理IP

    ​大数据时代来临,大数据从何而来?大数据来自爬虫辛勤的爬取网站信息,帮助搜索引擎成为一个辅助人们检索信息的工具。

  • 25 2019-09
    使用代理IP制作刷票系统(上)

    投票大家都不陌生吧,经常看到有人将投票链接甩到微信群上,发红包要大家投票,要不是因为投票有IP的限制,大家求投票的姿势也不用那么卑微。那么,有没有什么办法能够突破这个限制来

  • 01 2019-03
    java爬虫是怎么使用代理采集数据的

    每当我们要爬数据之前,都需要准备好代理,不然都无法很好的完成任务,毕竟现在技术的进步,各个网站都自己的反爬虫机制,总得花点时间,花点成本才能突破这些限制的。今天跟大家去看

  • 13 2019-06
    独享代理IP池有什么优势?

    独享代理IP池有什么优势?一样东西,如果是共享的,怎么也会影响到使用,没有那么方便,估计也可能会影响到效果的。那么如果独享呢?我们以代理IP池为例,看看独享代理IP池有什么优势?

  • 12 2019-06
    网上公开的免费代理ip隐患多

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

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部