当前位置:主页 > 网页教程 > 网站推广 > SEO > 内容欢迎大家投稿

SEO教程:总结URL的规划应该怎么做

时间:2010-06-17 08:47来源:未知 作者:大宝库 点击:读取中
阅读工具:字体:

URL的问题是SEO过程中的一个基本问题,做一个新网站也好,优化现有的网站也好,都绕不开这一点。这两篇文章就来大体总结一下URL的规划应该怎么做

在开始讲这些问题之前,需要先阅读完以下文档:

《优化网站的抓取与收录》 http://www.google.cn/ggblog/googlewebmaster-cn/2009/08/blog-post.html

《谷歌搜索引擎入门指南》第7页到11页。 点此下载

《创建方便 Google 处理的网址结构》 http://www.google.com/support/webmasters/bin/answer.py?hl=cn&answer=76329

这些都是google官方的文档,讲述了各种各样的规则。这些对百度也是同样适用的,因为它是针对爬虫的特性提出来的,并不是只有某个搜索引擎才适用。

看完上面的那些这些规则,发现翻来覆去讲得都是怎么让爬虫能非常顺畅的抓取完整个网站。其实绝大部分网站都存在这样或那样的问题的,也包括我这个博客,在抓取方面也存在一些问题。但是看在每篇博文都能被收录的情况下,也就不去优化了。但是对于很多收录还成问题的网站(特别是大中型网站)来说,就要好好规划一下了。大家可以用HTTrack抓取semyj这个博客看看,就能发现为什么我这么说了。(谁能一天之内抓取完这个博客的人请告诉我。)

还是先从搜索引擎的处境讲起吧。正如Google在文章中写道的那样:

网络世界极其庞大;每时每刻都在产生新的内容。Google 本身的资源是有限的,当面对几近无穷无尽的网络内容的时候,Googlebot 只能找到和抓取其中一定比例的内容。然后,在我们已经抓取到的内容中,我们也只能索引其中的一部分。

URLs 就像网站和搜索引擎抓取工具之间的桥梁: 为了能够抓取到您网站的内容,抓取工具需要能够找到并跨越这些桥梁(也就是找到并抓取您的URLs)。

这段话很好的总结了搜索引擎所面临的处境,那么爬虫在处理URL的时候会遇到哪些问题呢?

我们先来看重复URL的问题,这里说的重复URL是指同一个网站内的不同页面,都存在很多完全相同的URL。如:

http://www.semyj.com/archives/1097 和 http://www.semyj.com/archives/1114 这两个页面。

模板部分的URL是一样的

模板部分的URL是一样的

虽然页面不同,但是他们公用的部分,URL地址是一样的。看起来如果不同的爬虫抓取到这些页面的时候,会重复抓取,从而浪费很多不必要的时间。 这确实是一个问题,不过这个问题搜索引擎倒是基本解决好了。实际上,爬虫的抓取模式不是像我们理解的那样看到一个网页就开始抓取一个网页的。

爬虫顺着一个个的URL在互联网上抓取网页,它一边下载这个网页,一边在提取这个网页中的链接。假设从搜索引擎某一个节点出来的爬虫有爬虫A、爬虫B、爬虫C,当它们到达semyj这个网站的时候,每个爬虫都会抓取到很多URL,然后他们都会把那个页面上所有的链接都放在一个公用的“待抓取列表”里。(可以用lynx在线版模拟一下爬虫提取链接。)

待抓取列表

待抓取列表

 

这样一来,在“待抓取列表”里,那些重复的URL就可以被去重了。这是一个节点在一种理想状态下的情况,不过实际上因为搜索引擎以后还要更新这个网页等等一些原因,一个网站每天还是有很多重复抓取。所以在以前的文章中,我告诉大家用一些方法减少重复抓取的几率。

这里有一个问题,很多人肯定想问是不是一个网页上所有的链接搜索引擎都会提取的,答案是肯定的。但是在《google网站质量指南》中,有这样一句:“如果站点地图上的链接超过 100 个,则需要将站点地图拆分为多个网页。”有些人把这句话理解为:“爬虫只能抓取前100个链接”,这是不对的。

因为在“待抓取列表”里的URL,爬虫并不会每一个链接都会抓取的。 链接放在这个列表里是没问题的,但是爬虫没有那么多时间也没必要每个链接都要去抓取,需要有一定的优先级。在“待访问列表”里,爬虫一边按照优先级抓取一部分的URL,一边把还未被抓取的URL记录下来等待下次抓取,只是这些还未被抓取的URL,下次爬虫来访问的频率就每个网站都不一样了, 每一类URL被访问的频率也不一样。

按优先级抓取

按优先级抓取

那么在“待抓取列表”里的URL,哪些是能被优先抓取,哪些是被次要抓取的呢?

我们稍微思考一下都能明白这个抓取的优先级策略应该怎么定。首先,那些目录层级比较深的URL是次要抓取的;那些在模板部分的或重复率非常高的URL是被次要抓取的;那些动态参数多的URL是次要抓取的…。.

这么做的原因,就是因为搜索引擎的资源是有限的,一个网站实际拥有的内容也是有限的,但是URL数量是无限的。爬虫需要一些“蛛丝马迹”来确定哪些值得优先抓取,哪些不值得。

在《谷歌搜索引擎入门指南》中,google建议要优化好网站的URL结构,如建议不要用“…/dir1/dir2/dir3/dir4/dir5/dir6/page.html”这样的多层嵌套。就是因为在待抓取列表里,在其他条件相同的情况下,爬虫会优先抓取目录层级浅的URL。如用Lynx在线版查看本网站的页面:

抓取优先级

抓取优先级

如果说,在这17个链接里,爬虫只能选几个链接抓取的话,红色箭头所指的链接在其他条件相同的情况下是要优先的。

但是这里又有一个误区,有人在SEO过程中,把所有的网页都建立在根目录下,以为这样能有排名的优势。这样也是没有理解这个原因。而且爬虫在这个网站上先抓取哪些URL后抓取哪些URL,都是自己的URL和自己的URL比,如果所有网页都是在同一个目录下,那就没有区别了。(责任编辑:大宝库)



------分隔线----------------------------
推荐内容
赞助商链接
赞助商链接