一、什么是爬蟲陷阱:
“蜘蛛陷阱”是阻止蜘蛛程序爬行網(wǎng)站的障礙物,一些網(wǎng)站設計技術對搜索引擎說很不友好,不利于蜘蛛爬行和抓取,這些技術被稱為蜘蛛陷阱。 最大的特點是當蜘蛛抓取某個特定URL的時候,它便進入了無限循環(huán),只有入口,沒有出口。
爬蟲陷阱
二、常見的“蜘蛛陷阱”有哪些:
1、站內搜索
這是一個常見且容易造成“蜘蛛陷阱”的地方,當你試圖在站內搜索某些特定關鍵詞的時候,如果類似search.php?q=這樣的URL地址被搜索引擎抓取與收錄,那么很可能產生大量無意義的搜索結果頁面。
解決方法:你可以通過Robots.txt這個文件,屏蔽動態(tài)參數(shù)。
2、電商產品
如果你以往有過操作電商網(wǎng)站的經歷,那么你會遇到產品SKU的多樣性的問題,同一個主題內容,會根據(jù)SKU的不同,產生多個URL,造成大量的內容重復頁面,這也導致嚴重浪費蜘蛛抓取頻率。還有一種特殊的“蜘蛛陷阱”與電商產品頁面類似,就是動態(tài)的內容插入,這也往往導致蜘蛛陷入溫柔的陷阱。
解決方法:確保URL的規(guī)范性,你可以試圖利用rel=canonical這個標簽來解決類似問題。
3、Flash網(wǎng)站
為了滿足用戶的視覺體驗,建站公司通常會使用Flash網(wǎng)站,給用戶搭建企業(yè)官網(wǎng),這樣看起來非常美觀,但由于目前搜索引擎并不能很好的抓取與識別flash內容,往往導致站點排名很難提升。
解決方法:不要做整站flash,盡量將flash嵌入網(wǎng)頁內容的一部分。
4、限制性內容
對于一些站點,出去吸引粉絲的目的,很多內容只有登錄才能查看,特別是一些強制cookie的操作,這誘導與欺騙了蜘蛛,它很難識別內容,并且不斷的嘗試抓取這個URL。
解決方法:針對賀州網(wǎng)站建設,盡量避免采用這種策略,去吸引用戶。
爬蟲陷阱
三:如何識別“蜘蛛陷阱”。對于識別蜘蛛陷阱的方法,特別容易,你只需要通過如下內容:
1、網(wǎng)站日志:利用工具讀取當日蜘蛛抓取URL的內容,如果發(fā)現(xiàn)特殊的URL地址,那么值得進一步關注。
2、抓取頻率:查看百度搜索資源平臺中抓取頻率,如果某一天數(shù)值特別大,那么很可能陷入蜘蛛陷阱。
四、爬蟲的基本原理,網(wǎng)絡爬蟲的基本工作流程如下:
1、首先選取一部分精心挑選的種子URL;
2、將這些URL放入待抓取URL隊列;
3、從待抓取URL隊列中取出待抓取在URL,解析DNS,并且得到主機的ip,并將URL對應的網(wǎng)頁下載下來,存儲進已下載網(wǎng)頁庫中。此外,將這些URL放進已抓取URL隊列。
4、分析已抓取URL隊列中的URL,分析頁面里包含的其他URL,并且將URL放入待抓取URL隊列,從而進入下一個循環(huán)。
五、爬蟲爬取難點匯總:
1、環(huán)路:網(wǎng)絡爬蟲有時候會陷入循環(huán)或者環(huán)路中,比如從頁面 A,A 鏈接到頁面 B,B 鏈接 頁面C,頁面 C 又會鏈接到頁面 A。這樣就陷入到環(huán)路中。
環(huán)路造成的影響:
1.1、消耗網(wǎng)絡帶寬,無法獲取其他頁面
1.2、對 Web 賀州服務器也是負擔,可能擊垮該站點,可能阻止正常用戶訪問該站點
1.3、即使沒有性能影響,但獲取大量重復頁面也導致數(shù)據(jù)冗余
2、URL別名:有些 url 名稱不一樣,但是指向同一個資源。
爬蟲陷阱
3、動態(tài)虛擬空間:比如日歷程序,它會生成一個指向下一月的鏈接,真正的用戶是不會不停地請求下個月的鏈接的。但是不了解這內容特性的爬蟲蜘蛛可能會不斷向這些資源發(fā)出無窮的請求。
以上文章來源于網(wǎng)絡,如有侵權請聯(lián)系創(chuàng)一網(wǎng)的客服處理。謝謝!