一、網(wǎng)絡爬蟲
網(wǎng)絡爬蟲(又被稱為網(wǎng)頁蜘蛛,網(wǎng)絡機器人,在FOAF社區(qū)中間,更經(jīng)常的稱為網(wǎng)頁追逐者),是一種按照一定的規(guī)則,自動地抓取萬維網(wǎng)信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。簡單來講,它是一種可以在無需人類干預的情況下自動進行一系列web事務處理的軟件程序。web爬蟲是一種機器人,它們會遞歸地對各種信息性的web站點進行遍歷,獲取第一個web頁面,然后獲取那個頁面指向的所有的web頁面,依次類推。因特網(wǎng)搜索引擎使用爬蟲在web上游蕩,并把他們碰到的文檔全部拉回來。然后對這些文檔進行處理,形成一個可搜索的數(shù)據(jù)庫。簡單來說,網(wǎng)絡爬蟲就是搜索引擎訪問你的網(wǎng)站進而收錄你的網(wǎng)站的一種內容采集工具。
例如:百度的網(wǎng)絡爬蟲就叫做BaiduSpider。
二、網(wǎng)絡爬蟲基本原理
網(wǎng)絡 < --- > 爬蟲 < --- > 網(wǎng)頁內容庫 < --- > 索引程序 < --- > 索引庫 < --- > 搜索引擎 < --- > 用戶
三、爬蟲程序需要注意的地方
1、鏈接提取以及相對鏈接的標準化
- 爬蟲在web上移動的時候會不停的對HTML頁面進行解析,它要對所解析的每個頁面上的URL鏈
接進行分析,并將這些鏈接添加到需要爬行的頁面列表中去
2、 避免環(huán)路的出現(xiàn)
web爬蟲在web上爬行時,要特別小心不要陷入循環(huán)之中,至少有以下三個原因,環(huán)路對爬蟲來說是有害的。
- 他們會使爬蟲可能陷入可能會將其困住的循環(huán)之中。爬蟲不停的兜圈子,把所有時間都耗費在不停獲取相同的頁面上。
- 爬蟲不斷獲取相同的頁面的同時,服務器段也在遭受著打擊,它可能會被擊垮,阻止所有真實用戶訪問這個站點。
- 爬蟲本身變的毫無用處,返回數(shù)百份完全相同的頁面的因特網(wǎng)搜索引擎就是這樣的例子。
同時,聯(lián)系上一個問題,由于URL“別名”的存在,即使使用了正確的數(shù)據(jù)結構,有時候也很難分辨出以前是否訪問過這
個頁面,如果兩個URL看起來不一樣,但實際指向的是同一資源,就稱為互為“別名”。
3、標記為不爬取
4、避免環(huán)路與循環(huán)方案
5、規(guī)范化URL
6、廣度優(yōu)先的爬行
- 以廣度優(yōu)先的方式去訪問就可以將環(huán)路的影響最小化。
7、節(jié)流
- 限制一段時間內爬蟲可以從一個web站點獲取的頁面數(shù)量,也可以通過節(jié)流來限制重復頁面總數(shù)和對服務器訪問的總數(shù)。
8、限制URL的大小
- 如果環(huán)路使URL長度增加,長度限制就會最終終止這個環(huán)路
9、URL黑名單
10、人工監(jiān)視
四、搜索引擎優(yōu)化(SEO)
1、內部優(yōu)化
- 突出重要內容
合理的title、description和keywords
雖然現(xiàn)在搜索對這三項的權重慢慢減小,但還是希望能夠合理的寫好他們,只寫有用的東西,不要在這里寫小說,要表達重點。
title:只強調重點即可,重要關鍵詞出現(xiàn)不要超過2次,而且要靠前,每個頁面title要有所不同description:把網(wǎng)頁內容高度概括到這里,長度要合理,不可過分堆砌關鍵詞,每個頁面description要有所不同,* * * keywords:列舉出幾個重要關鍵詞即可,也不可過分堆砌。 - 語義化書寫HTML代碼,符合W3C標準
對于搜索引擎來說,最直接面對的就是網(wǎng)頁HTML代碼,如果代碼寫的語義化,搜索引擎就會很容易的讀懂該網(wǎng)頁要表達的意思。 - 利用布局,把重要內容HTML代碼放在最前
搜索引擎抓取HTML內容是從上到下,利用這一特點,可以讓主要代碼優(yōu)先讀取,讓爬蟲最先抓取 - 重要內容不要用JS輸出
爬蟲不會讀取JS里的內容,所以重要內容必須放在HTML里 - 盡少使用iframe框架
搜索引擎不會抓取到iframe里的內容,重要內容不要放在框架中。 - 為圖片加上alt屬性
alt屬性的作用是當圖片無法顯示時以文字作為代替顯示出來,對于SEO來說,它可以令搜索引擎有機會索引你網(wǎng)站的圖片。 - 需要強調的地方可以加上title屬性
在進行SEO優(yōu)化時,適合將alt屬性設置為圖片本來的含義,而將 ttitle屬性為設置該屬性的元素提供建議性的信息。 - 為圖片加上長寬
圖片大的會排在前面一點。 - 保留文字效果
如果需要兼顧用戶體驗和SEO效果,在必須用圖片的地方,例如個性字體的標題,我們可以利用樣式控制,讓文本文字不會出現(xiàn)在瀏覽器上,但在網(wǎng)頁代碼中是有該標題的。
注意:不可使用display:none;的方法讓文字隱藏,因為搜索引擎會過濾掉display:none;里邊的內容,就不會被蜘蛛檢索了。 - 提高網(wǎng)站速度
網(wǎng)站速度是搜索引擎排序的一個重要指標
對于指向外部網(wǎng)站的鏈接要使用rel="nofollow"屬性告訴爬蟲不要去爬其他的頁面
2、外部優(yōu)化
- 外部鏈接類別:博客、論壇、B2B、新聞、分類信息、貼吧、知道、百科、相關信息網(wǎng)等盡量保持鏈接的多樣性
- 外鏈運營:每天添加一定數(shù)量的外部鏈接,使關鍵詞排名穩(wěn)定提升。
- 外鏈選擇:與一些和你網(wǎng)站相關性比較高,整體質量比較好的網(wǎng)站交換友情鏈接,鞏固穩(wěn)定關鍵詞排名
- 提升網(wǎng)站速度等