注意: IP精灵代理仅提供国内ip网络节点,不提供境外网络节点,不能用于任何非法用途或访问境外封闭网站,不能跨境联网,只能用于合法的国内网络加速。

您好,请登录 没有账号?

首页 > 新闻资讯 > 爬虫怎么判断网页有没有更新

爬虫怎么判断网页有没有更新

来源:互联网 作者:admin 时间:2019-01-30 16:50:00

有些网站每天都更新,不仅会出现新的网页,而且老的网页也会有更新内容,这样爬虫怎么判断网页有没有更新?应该怎么设计爬取策略?难度每天都重新爬遍这个网站的所有网页,然后判断是不是有更新吗?这样爬虫的访问量不就很大吗?


对于这些问题,我们首先要判断网站页面是否刷新,下面就介绍几种判断方法:


1.使用MD5数字签名


每次下载网页时,把服务器返回的数据流ResponseStream先放在内存缓冲区,然后对ResponseStream生成MD5数字签名S1,下次下载同样生成签名S2,比较S2和S1,如果相同,则页面没有更新,否则网页就有跟新。需要说明的是用md5算法对文本刘签名的速度是极快的,M级的数据可以在毫秒内完成。这种策略虽然也把页面数据从服务器传输到了本地机,但是省掉了页面的I/O操作,对系统性能的提升是很有帮助的。


爬虫怎么判断网页有没有更新


2.304页面http状态码


当第二次请求页面访问的时候,该页面如果未更新,则会反馈一个304代码,而搜索引擎也会利用这个304http状态码来进行判断页面是否更新。


首先第一次肯定是要爬取网页的,假设是A.html,这个网页存储在磁盘上,相应地有个修改时间(也即是更新这个文件的时间)。那么第二次爬取的时候,如果发现这个网页本地已经有了,例如A.html,这个时候,你只需要向服务器发送一个If-Modified-Since的请求,把A.html的修改时间带上去。


如果这段时间内,A.html更新了,也就是A.html过期了,服务器就会HTTP状态码200,并且把新的文件发送过来,这时候只要更新A.html即可。


如果这段时间内,A.html的内容没有变,服务器就会返返回HTTP状态码304(不返回文件内容),这个时候就不需要更新文件。


3.文件大小不同,可以比对下


搜索引擎还会取出之前页面文件,和现在的文件进行对比,不过因为大部分网站都是一种替换式更新,往往比对文件大小很难说明问题,因此常见与页面链接变化配合使用。


4.Last-Modified文件最后修改时间,抓取最新更新的


这是http头部信息中的一个属性,主要是记录页面最后一次的修改时间,往往我们会发现,一些权重很高的网站,及时页面内容不更新,但是快照却还是能够每日更新,这其中就有Last-Modified的作用。通产情况下,下载网页我们使用HTTP协议,向服务器发送HEAD请求,可以得到页面的最后修改时间LastModifed,或者标签ETag。将这两个变量和上次下载记录的值的比较就可以知道一个网页是否跟新。这个策略对于静态网页是有效的。是对于绝大多数动态网页如ASP,JSP来说,LastModifed就是服务器发送Response的时间,并非网页的最后跟新时间,而Etag通常为空值。所以对于动态网页使用LastModifed和Etag来判断是不合适的,因此Last-Modified只是蜘蛛判断页面是否更新的一个参考值,而不是条件。


爬虫怎么判断网页有没有更新?以上介绍了四个判断网页有没有更新的方法,如今大数据时代,许多企业都会进行数据的采集,但是对方也会设置各种的限制,比如IP限制等,对于这个限制,爬虫可以使用IP代理精灵去突破限制。若是其他的限制,爬虫就要对症下药了,否则不能获取到网站数据。


最新资讯

推荐阅读

  1. 07

    2019-06

    私密代理ip对新媒体行业的意义

    如今越来越多的人开始使用微博,因此很多公司和个人都开始借助微博来发展自己的生意和事业。这种新型业务被人们称作新媒体运营。随着新媒体运营的人群越来越多,很多人都看到了其中蕴

  2. 24

    2019-04

    代理IP性价比哪家高

    互联网的的发展日新月异,代理IP的需求也日渐增多,往往供不应求。尽管市场上的代理IP服务供应商数不胜数,然而代理IP质量却是良莠不齐,经常选购到劣质的代理IP,那么代理IP性价比哪家

  3. 17

    2019-05

    爬虫中解决ip被封锁的几种方法

    使用爬虫采集网站时,ip被封锁怎么办?使用IP代理就可以轻松解决,下面为大家介绍几种不同的方法,一起来看看吧!方法1 使用多IP代理:1.IP必须需要,比如ADSL。如果有条件,其实可以跟机

  4. 23

    2018-11

    为什么代理服务器不能上网?使用代理服务器正确设置方法

    关于代理服务器,许多人在使用过程中都有一些疑问,比如,为什么代理服务器不能上网?是使用的代理服务器有问题吗?还是说哪里设置有问题呢?这时候应该看看局域网的代理服务器设置。

  5. 28

    2019-05

    如何解决代理服务器导致不能上网的问题

    如果电脑代理服务器出现了问题就可能会导致电脑不能上网,下面小编就来教大家解决这个问题!方法/步骤1:不能访问网页,并显示“代理服务器没有响应”那肯定是internet设置问题 方法/步骤2:

  6. 10

    2019-04

    反反爬虫的好帮手代理IP

    反反爬虫的好帮手代理IP!大数据爆发时代,爬虫扮演着重要角色。例如,新闻类APP通过爬虫,获得大量的优质资源,读者可以在一个平台上看到天下所有的内容,正所谓,不出门也能了解天下事

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