SEM一家之言:如何規(guī)劃好網(wǎng)站的URL

2022-12-17    分類: 網(wǎng)站建設(shè)

雖然頁面不同,但是他們公用的部分,URL地址是一樣的??雌饋砣绻煌呐老x抓取到這些頁面的時候,會重復(fù)抓取,從而浪費(fèi)很多不必要的時間。?這確實是一個問題,不過這個問題搜索引擎倒是基本解決好了。實際上,爬蟲的抓取模式不是像我們理解的那樣看到一個網(wǎng)頁就開始抓取一個網(wǎng)頁的。

爬蟲順著一個個的URL在互聯(lián)網(wǎng)上抓取網(wǎng)頁,它一邊下載這個網(wǎng)頁,一邊在提取這個網(wǎng)頁中的鏈接。假設(shè)從搜索引擎某一個節(jié)點(diǎn)出來的爬蟲有爬蟲A、爬蟲B、爬蟲C,當(dāng)它們到達(dá)semyj這個網(wǎng)站的時候,每個爬蟲都會抓取到很多URL,然后他們都會把那個頁面上所有的鏈接都放在一個公用的“待抓取列表”里。

待抓取列表

這樣一來,在“待抓取列表”里,那些重復(fù)的URL就可以被去重了。這是一個節(jié)點(diǎn)在一種理想狀態(tài)下的情況,不過實際上因為搜索引擎以后還要更新這個網(wǎng)頁等等一些原因,一個網(wǎng)站每天還是有很多重復(fù)抓取。所以在以前的文章中,我告訴大家用一些方法減少重復(fù)抓取的幾率。

這里有一個問題,很多人肯定想問是不是一個網(wǎng)頁上所有的鏈接搜索引擎都會提取的,答案是肯定的。但是在《google網(wǎng)站質(zhì)量指南》中,有這樣一句:“如果站點(diǎn)地圖上的鏈接超過 100 個,則需要將站點(diǎn)地圖拆分為多個網(wǎng)頁。”有些人把這句話理解為:“爬蟲只能抓取前100個鏈接”,這是不對的。

因為在“待抓取列表”里的URL,爬蟲并不會每一個鏈接都會抓取的。 鏈接放在這個列表里是沒問題的,但是爬蟲沒有那么多時間也沒必要每個鏈接都要去抓取,需要有一定的優(yōu)先級。在“待訪問列表”里,爬蟲一邊按照優(yōu)先級抓取一部分的URL,一邊把還未被抓取的URL記錄下來等待下次抓取,只是這些還未被抓取的URL,下次爬蟲來訪問的頻率就每個網(wǎng)站都不一樣了, 每一類URL被訪問的頻率也不一樣。

按優(yōu)先級抓取

那么在“待抓取列表”里的URL,哪些是能被優(yōu)先抓取,哪些是被次要抓取的呢?

我們稍微思考一下都能明白這個抓取的優(yōu)先級策略應(yīng)該怎么定。首先,那些目錄層級比較深的URL是次要抓取的;那些在模板部分的或重復(fù)率非常高的URL是被次要抓取的;那些動態(tài)參數(shù)多的URL是次要抓取的…..

這么做的原因,就是因為搜索引擎的資源是有限的,一個網(wǎng)站實際擁有的內(nèi)容也是有限的,但是URL數(shù)量是無限的。爬蟲需要一些“蛛絲馬跡”來確定哪些值得優(yōu)先抓取,哪些不值得。

在《谷歌搜索引擎入門指南》中,google建議要優(yōu)化好網(wǎng)站的URL結(jié)構(gòu),如建議不要用“…/dir1/dir2/dir3/dir4/dir5/dir6/page.html”這樣的多層嵌套。就是因為在待抓取列表里,在其他條件相同的情況下,爬蟲會優(yōu)先抓取目錄層級淺的URL。如用Lynx在線版查看本網(wǎng)站的頁面:

如果說,在這17個鏈接里,爬蟲只能選幾個鏈接抓取的話,紅色箭頭所指的鏈接在其他條件相同的情況下是要優(yōu)先的。

但是這里又有一個誤區(qū),有人在SEO過程中,把所有的網(wǎng)頁都建立在根目錄下,以為這樣能有排名的優(yōu)勢。這樣也是沒有理解這個原因。而且爬蟲在這個網(wǎng)站上先抓取哪些URL后抓取哪些URL,都是自己的URL和自己的URL比,如果所有網(wǎng)頁都是在同一個目錄下,那就沒有區(qū)別了。

好的規(guī)劃URL目錄層級的方式,就是按照業(yè)務(wù)方的邏輯來規(guī)劃,從內(nèi)容上應(yīng)該是什么從屬關(guān)系就怎么規(guī)劃URL就是。就像《谷歌搜索引擎入門指南》中舉的那些例子一樣。

(順帶說一下。我經(jīng)??吹?,一個網(wǎng)站中,很多人非SEO的人員,如工程師和網(wǎng)頁設(shè)計人員或者網(wǎng)站編輯,都以為SEO和他們做的事情是相反的。這都是因為長期以來一些SEOer經(jīng)常提交很多明顯違反用戶體驗的SEO需求給他們,造成他們以為SEO就是和他們做的事情是有沖突的。實際上,SEO和別的部門有非常少的沖突,只要你能用科學(xué)的方法去實踐,就能發(fā)現(xiàn)以前有太多誤導(dǎo)人的觀點(diǎn)了。還有,對于其他部門的專業(yè)人員,他們專業(yè)領(lǐng)域的意見非常值得去考慮。)

爬蟲有一個特點(diǎn),就是它不能實時的比較它正在抓取的內(nèi)容是不是重復(fù)的內(nèi)容。因為如果要做到實時的比較,那它至少要把正在抓取的頁面和那些已經(jīng)在索引庫的頁面做對比,這是不可能短時間內(nèi)可以完成的。 前面把所有URL統(tǒng)一放到一個待抓取列表中的方法只能避免那種URL完全一模一樣的重復(fù)抓取,但是無法應(yīng)對URL不一樣、但是內(nèi)容一樣的抓取。

正如所有搜索引擎都強(qiáng)調(diào)的那樣,動態(tài)參數(shù)是一個經(jīng)常產(chǎn)生URL不一樣、但是內(nèi)容一樣的現(xiàn)象的原因。所以搜索引擎建議大家用靜態(tài)化的方法去掉那些參數(shù)。靜態(tài)化的本質(zhì)是URL唯一化,在《優(yōu)化網(wǎng)站的抓取與收錄》這篇文章中,曾經(jīng)用的“一人一票”這個描述就很貼切的表達(dá)了這個意思。靜態(tài)化只是一個手段而不是目的,為了保證URL的唯一化,可以把URL靜態(tài)化、也可以用robots.txt或nofollow屏蔽動態(tài)內(nèi)容、可以用rel=canonical屬性、還可以在webmaster tool里屏蔽一些參數(shù)等等。

而靜態(tài)化也會有好的靜態(tài)化和不好的靜態(tài)化之別。我們這里不說那種把多個參數(shù)直接靜態(tài)化了的案例,而是單純來看看如下兩個URL:

http://www.semyj.com/archives/1097和 http://www.semyj.com?p=1097??

這兩個URL中,這個靜態(tài)化的是不是就比動態(tài)的好呢? 實際上這兩個URL的差別很小。首先這兩種URL搜索引擎都能收錄,如果說動態(tài)URL“?p=1097”可能產(chǎn)生大量重復(fù)的內(nèi)容讓爬蟲抓取,那這個靜態(tài)的URL“archives/1097”也不能保證不會產(chǎn)生大量重復(fù)的內(nèi)容。特別是爬蟲在抓取時碰到大量有ID的靜態(tài)的URL時,爬蟲無法判斷這個網(wǎng)站是不是把session ID等參數(shù)靜態(tài)化了才造成的,還是這個網(wǎng)站本來就有這么多內(nèi)容。 所以更好的靜態(tài)化是這樣的:?

http://www.semyj.com/archives/seo-jingli?

這種URL就能保證唯一化而不會和其他情況混淆了,所以URL中要盡量用有意義的字符。這不是因為要在URL增加關(guān)鍵詞密度而這么做的,是為了方便搜索引擎抓取。?

以上是因為爬蟲固有的特點(diǎn)造成的抓取障礙,而有時網(wǎng)站的結(jié)構(gòu)也能造成爬蟲的抓取障礙。這種結(jié)構(gòu)在《優(yōu)化網(wǎng)站的抓取與收錄》一文中用的名字是“無限空間”。文中舉了一個日歷的例子:如很多博客上都會有一個日歷,順著這個日歷的日期一直往下點(diǎn),永遠(yuǎn)都有鏈接供你點(diǎn)擊的,因為時間是無限的。

其實還有更多的“無限空間”的例子,只是“無限空間”這個名詞沒怎么翻譯好,翻譯做“無限循環(huán)”就容易理解多了。 舉一個例子:

京東商城筆記本分類頁面: http://www.360buy.com/products/670-671-672-0-0-0-0-0-0-0-1-1-1.html

當(dāng)點(diǎn)擊“惠普”+“11英寸”這2個條件后能出來一個頁面,點(diǎn)擊“聯(lián)想”+“14英寸”+“獨(dú)立顯卡”也能出來一個頁面。那總共能出來的頁面有多少呢?

這個頁面中,品牌有18個分類、價格9個分類、尺寸7個分類、平臺3個分類、顯卡2個分類。 那么可以組合成的URL個數(shù)為:

按1個條件篩選: 18+9+7+3+2 = 39 。

按2個條件篩選:18×9+18×7+18×3+18×2+9×7+9×3+9×2+7×3+7×2+3×2=527 。

按3個條件篩選:18×9×7+18×9×3+18×9×2+18×7×3+18×7×2+18×3×2+9×7×3+9×7×2+9×3×2+7×3×2=3093。

按4個條件篩選:18×9×7×3+18×9×7×2+18×7×3×2+18×9×3×2+9×7×3×2=7776。

按5個條件篩選:18×9×7×3×2=6804。

總共可以組合出的URL數(shù)量為:39+527+3093+7776+6804=18239 個。

筆記本分類里總共才 624個商品,要放在18239個頁面中,而有的頁面,一個頁面就能放32個產(chǎn)品。勢必造成大量的頁面是沒有商品的。如點(diǎn)擊這幾個篩選條件后,就沒有匹配的商品出來了:

無結(jié)果

這樣的結(jié)果,就是造成大量重復(fù)的內(nèi)容以及消耗爬蟲很多不必要的時間,這也可以認(rèn)為是“無限空間”。 這類情況非常常見。

國平seo上面舉的京東商城的例子還是不怎么嚴(yán)重的,有的網(wǎng)站能組合出幾億甚至無窮無盡個URL出來。我在國內(nèi)和國外看過那么多同類的網(wǎng)站,居然發(fā)現(xiàn)迄今為止只有兩家網(wǎng)站注意到了這個問題。究其原因,還是因為很多SEO人員不太重視數(shù)據(jù),這種問題稍微分析爬蟲的日志就可以看出來的。直到現(xiàn)在,還有一些SEOer認(rèn)為把這些以前是動態(tài)的頁面靜態(tài)化是個有積極意義的事情,沒看到不好的一面就是這樣的動作制造出了大量重復(fù)的頁面,向來就是一個在SEO方面不好的改動。

本文名稱:SEM一家之言:如何規(guī)劃好網(wǎng)站的URL
文章地址:http://www.bm7419.com/news/223617.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站改版、營銷型網(wǎng)站建設(shè)、定制網(wǎng)站、網(wǎng)站導(dǎo)航、App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)