关于 http的ETag和last-modified的问题啊

最近在学习爬虫的相关知识啊,但是遇到了个问题,

比如我想爬取一个网站,

我先把这个网站的信息爬取下来

然后记录下来

等下次我再来爬取的时候,我先对比一下这个网页的ETag和last-modified的值如果没改变的话我就不用爬取了啊

但是我发下很多网站都没有ETag和last-modified属性

这怎么办啊。。。。。。。。。。。。。。

另外求大声能详细的讲解一下ETag和last-modified属性的意义啊

还有啊,为什么我自己弄的在tomcate上面的工程爬取下来也是没有这两个属性的啊。。。。。。。

谢谢了啊。。。。。。

0

3个回答

ETag是一个可以与Web资源关联的记号,通过它可利用客户端的缓存,一般把ETags和GET请求的“If-None-Match”头一起使用。服务器首先产生ETag,客户端则将他与页面一起缓存起来,服务器可在后面使用它来判断页面是否是同一个样的页面!像楼上说的一样,他是通过MD5来处理的,具体百度下吧~~ 其实你可以得到页面的大小来判断是否是同一个页面,但是不保险,偷懒的代价!

0

没做过爬虫,但这两个属性可能是指最后一个标签(end tag)和最后修改时间(last modified)。如果想知道网页有没有变化,可以把爬下来的东西做一次MD5,和上一次爬下来的DM5作比较。如果有变化就说明需要重新抓取。
希望能帮到你。

0

因为ETag本来就不一定必须要的啊,这是可以有,而不是必须有!!呵呵

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!