概述:
什么是robots.txt?robots.txt是一個協議,而不是一個命令。robots.txt是搜索引擎中訪問網站的時候要查看的第一個文件。robots.txt文件告訴蜘蛛程序在服務器上什么文件是可以被查看的。robots.txt文件中設置的禁止收錄的網頁,網頁上的內容不會被抓取、建入索引和顯示,
什么是robots.txt?
robots.txt是一個協議,而不是一個命令。robots.txt是搜索引擎中訪問網站的時候要查看的第一個文件。robots.txt文件告訴蜘蛛程序在服務器上什么文件是可以被查看的。
robots.txt文件中設置的禁止收錄的網頁,網頁上的內容不會被抓取、建入索引和顯示,百度搜索結果中展示的僅是其他網站對您相關網頁的描述。
robots.txt在SEO中作用
鑒于網絡安全與隱私的考慮,搜索引擎遵循robots.txt協議。通過根目錄中創建的純文本文件robots.txt,網站可以聲明不想被robots訪問的部分。每個網站都可以自主控制網站是否愿意被搜索引擎收錄,或者指定搜索引擎只收錄指定的內容。當一個搜索引擎的爬蟲訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果該文件不存在,那么爬蟲就沿著鏈接抓取,如果存在,爬蟲就會按照該文件中的內容來確定訪問的范圍。
robots.txt文件的寫法
語法:最簡單的 robots.txt 文件使用兩條規則:
User-Agent: 適用下列規則的漫游器
Disallow: 要攔截的網頁
Allow:允許的網頁
User-agent: * 這里的*代表的所有的搜索引擎種類,*是一個通配符
Disallow: /admin/ 這里定義是禁止爬尋admin目錄下面的目錄
Disallow: /require/ 這里定義是禁止爬尋require目錄下面的目錄
Disallow: /ABC/ 這里定義是禁止爬尋ABC目錄下面的目錄
Disallow: /cgi-bin/?.htm 禁止訪問/cgi-bin/目錄下的所有以".htm"為后綴的URL(包含子目錄)。
Disallow: /??* 禁止訪問網站中所有的動態頁面
Disallow: /jpg$ 禁止抓取網頁所有的.jpg格式的圖片
Disallow:/ab/adc.html 禁止爬去ab文件夾下面的adc.html文件。
Allow: /cgi-bin/ 這里定義是允許爬尋cgi-bin目錄下面的目錄
Allow: /tmp 這里定義是允許爬尋tmp的整個目錄
Allow: .htm$ 僅允許訪問以".htm"為后綴的URL。
Allow: .gif$ 允許抓取網頁和gif格式圖片
robots.txt文件用法舉例 (參照上面的一一舉例)
豆瓣的案例舉例:
User-agent: * 定義所有搜索引擎
Disallow: /subject_search 這里定義是禁止爬尋subject_search目錄下面的目錄
Disallow: /amazon_search 這里定義是禁止爬尋amazon_search目錄下面的目錄
Disallow: /forum/ 這里定義是禁止爬尋forum目錄下面的目錄
Disallow: /new_subject 這里定義是禁止爬尋new_subject目錄下面的目錄
Disallow: /service/iframe 這里定義是禁止爬尋service目錄下面的iframe文件(有疑點)
Disallow: /j/ 這里定義是禁止爬尋j目錄下面的目錄
Disallow: /link2/ 這里定義是禁止爬尋link2目錄下面的目錄
Disallow: /recommend/ 這里定義是禁止爬尋recommend目錄下面的目錄
Sitemap: http://www.douban.com/sitemap_index.xml sitemap文件的鏈接
Sitemap: http://www.douban.com/sitemap_updated_index.xml sitemap文件的鏈接
User-agent: Slurp 定義Yahoo搜索引擎
User-agent: Sosospider 定義搜搜搜索引擎
Crawl-delay: 5 設定5秒的抓取,請求頻率(Cralw-delay的大小應該根據服務器能夠承受的壓力和機器人的數量來確定。)
Visit-time: 0100-1300 #允許在凌晨1:00到下午13:00訪問
Request-rate: 40/1m 0100 - 0759 40/1m 0100 - 0759 在1:00到07:59之間,以每分鐘40次的頻率進行訪問
Request-rate: 12/1m 0800 - 1300 12/1m 0800 - 1300 在8:00到13:00之間,以每分鐘12次的頻率進行訪問
Robots Meta標簽
Robots Meta標簽中沒有大小寫之分,name=”Robots”表示所有的搜索引擎,可以針對某個具體搜索引擎寫為name=”BaiduSpider”。
content部分有四個指令選項:index、noindex、follow、nofollow,指令間以“,”分隔。
index指令告訴搜索機器人抓取該頁面;
follow指令表示搜索機器人可以沿著該頁面上的鏈接繼續抓取下去;
robots.txt注意點:
robots里面內容的大小寫不可更改,Disallow后面的冒號必須為英文狀態的。
robots.txt使用誤區
誤區一
很多網站允許搜索引擎抓取網站上所有內容,這時候就不需要設置robots.txt
誤區二
腳本程序、樣式表等文件即使被蜘蛛收錄,也不會增加網站的收錄率,那這時就需要進行設置robots.txt
robots.txt使用技巧
1:動態網頁和靜態網頁,一個網站上如果偽靜態了所有頁面,那就應該屏蔽所有動態頁面。
2:robots.txt文件里還可以直接包括在sitemap文件的鏈接。就像這樣:Sitemap: http://www.***.com/sitemap.xml
3:robots.txt文件還能避免訪問時出錯。404錯誤屏蔽。大批量404錯誤時,應該將404頁面整理到一個sitemap文件里,提交給搜索引擎,然后再用robots屏蔽。
4:程序文件不被抓取。一般網站中不需要蜘蛛抓取的文件有:后臺管理文件、程序腳本、附件、數據庫文件、編碼文件、樣式表文件、模板文件、導航圖片和背景圖片等等。

