`
天梯梦
  • 浏览: 13632724 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

robots.txt用法

 
阅读更多

robots.txt的主要作用是告诉蜘蛛爬虫该网站下哪些内容能抓取,哪些内容不能抓取。虽然可以没有robots.txt这个文件,默认就抓取该网站的所有文件,对搜索引擎爬虫没有任何的影响,但是如果你想控制蜘蛛的检索间隔,你就必须用robots.txt来控制。

 

robots.txt不是一种规范,是约定俗成的,主流的搜索引擎都是遵循robots.txt的规则来索引页面,但是一些spam爬虫不会遵循,所以说robots.txt只能防君子,不能防小人,如果目录下有隐私的文件夹,建议设置密码或者登陆用户才能访问。

 

robots.txt基本用法

User-agent

User-agent是用来匹配爬虫的,每个爬虫都会有一个名字,如果你有安装awstats统计工具,你就能查看到爬虫的名字,比如百度的爬虫叫BaiDuSpider,Google的爬虫叫Googlebot,*表示所有爬虫。

Disallow

Disallow表示禁止爬虫访问的目录。Disallow: / 表示拦截整站。

 

Allow

Allow表示允许爬虫访问的目录。Allow: / 表示允许整站。

 

Sitemap

Sitemap用来指定sitemap的位置。

 

Crawl-delay

Crawl-delay用来告诉爬虫两次访问的间隔,单位是秒。爬虫如果爬得很勤,对动态网站来说,压力有点大,可能会导致服务器负载增高,用户访问变慢。

在计算Crawl-delay时间的时候,要稍微计算一下,ysearchblog上有篇日志,介绍得很清楚。

 

通配符|wildcard match

*:匹配任意多个字符

$:表示URL的结尾

 

注意|notice

  • URL区分大小写,所以 /abc/ 和 /Abc/ 表示不同的目录。
  • 后面有没有斜杠也是不一样的,/private 和 /private/也表示两个不同的地址。

例子|examples

不管是Disallow,Allow还是Sitemap,每行只能写一条规则。Google本身就有一个robots.txt,值得大家参考。

 

拦截部分文件或目录

User-agent: *
Disallow: /cgi-bin/
Disallow: /aaa.html

 

允许爬虫访问所有的目录,有两种写法

User-agent: *
Disallow:

User-agent: *
Allow: /

 

通配符的使用,拦截.gif文件

User-agent: *
Disallow: /*.gif$

 

拦截带有?的文件

User-agent: *
Disallow: /*?

 

Sitemap例子

Sitemap: http://www.ezloo.com/sitemap.xml

 

来源:http://www.ezloo.com/2011/04/robots_txt.html

 

常用的机器人名字:
Googlebot:Google的网页抓取机器人;
Googlebot-Mobile:Google对于wap页面的自动机器人(主要对wap站);
Googlebot-Image:Google的图片索引机器人(主要对图片站,此机器人对于不想google抓取图片的站来说有用);

Baiduspider:百度蜘蛛

Yahoo Slurp:雅虎爬虫

其他还有很多网页抓取机器人,不过基本不用考虑了。

 

实例 1:

User-agent: *
Sitemap:http://域名/sitemap.xml
Allow: /
Disallow: /文件1.html
Disallow: /目录名1/
Disallow: /目录名2/文件1.html

 

实例 2:

User-agent: ia_archiver
Disallow: /
User-agent: *
Disallow: /you/
Disallow: /floder/leadership.htm
Sitemap: http://www.domain.edu/sitemap.php
Sitemap: http://www.domain.edu/sitemap-news.php
sitemap: http://cdn.snapsitemap.com/sitemap/70933.xml.gz

 

google document: http://support.google.com/webmasters/bin/answer.py?hl=en&answer=156449&topic=1724262&ctx=topic

 

robots.txt是什么?

 

我们都知道txt后缀的文件是纯文本文档,robots是机器人的意思,所以顾名思义,robots.txt文件也就是给搜索引擎蜘蛛这个机器人看的纯文本文件。robots.txt是 搜索引擎公认遵循的一个规范文档,它告诉Google、百度等搜索引擎哪些网页允许抓取、索引并在搜索结果中显示,哪些网页是被禁止收录的。 搜索引擎蜘 蛛spider(Googlebot/Baiduspider)来访问你的网站页面的时候,首先会查看你的网站根目录下是否有robots.txt文件, 如果有则按照里面设置的规则权限对你网站页面进行抓取和索引。如淘宝网就通过设置robots.txt屏蔽百度搜索引擎:

User-agent: Baiduspider
Disallow: /
User-agent: baiduspider
Disallow: /

 

robots.txt的作用

 

我们了解了什么是robots.txt,那它有什么作用,总体来说,robots.txt文件至少有下面两方面的作用:

  • 通过设置屏蔽搜索引擎访问不必要被收录的网站页面,可以大大减少因spider抓取页面所占用的网站带宽,小网站不明显,大型网站就很明显了。
  • 设置robots.txt可以指定google或百度不去索引哪些网址,比如我们通过url重写将动态网址静态化为永久固定链接之后,就可以通过robots.txt设置权限,阻止Google或百度等搜索引擎索引那些动态网址,从而大大减少了网站重复页面,对SEO优化起到了很明显的作用。

robots.txt的写法

 

关于如何写robots.txt文件,在下面我们会以WordPress博客来作更具体举例说明。这里先提示几点robots.txt写法中应该注意的地方。如robots.txt文件里写入以下代码:

User-agent: *
Disallow:
Allow: /

 

  • robots.txt必须上传到你的网站根名录下,在子目录下无效;
  • robots.txt,Disallow等必须注意大小写,不能变化;
  • User-agent,Disallow等后面的冒号必须是英文状态下的,冒号后面可以空一格,也可以不空格。网上有人说冒号后面必须有空格,其实没有也是可以的,请看谷歌中文网站管理员博客的设置就是这样:http://www.googlechinawebmaster.com/robots.txt ;
  • User-agent表示搜索引擎spider:星号“*”代表所有spider,Google的spider是“Googlebot”,百度是“Baiduspider”;
  • Disallow:表示不允许搜索引擎访问和索引的目录;
  • Allow:指明允许spider访问和索引的目录,Allow: / 表示允许所有,和Disallow: 等效。

 

robots.txt文件写法举例说明

禁止Google/百度等所有搜索引擎访问整个网站 User-agent: *
Disallow: /
允许所有的搜索引擎spider访问整个网站(Disallow:可以用Allow: /替代) User-agent: *
Disallow:
禁止Baiduspider访问您的网站,Google等其他搜索引擎不阻止 User-agent: Baiduspider
Disallow: /
只允许Google spider: Googlebot访问您的网站,禁止百度等其他搜索引擎 User-agent: Googlebot
Disallow:
User-agent: *
Disallow: /
禁止搜索引擎蜘蛛spider访问指定目录
  (spider不访问这几个目录。每个目录要分开声明,不能合在一起)
User-agent: *
Disallow: /cgi-bin/
Disallow: /admin/
Disallow: /~jjjj/
禁止搜索引擎spider访问指定目录,但允许访问该指定目录的某个子目录 User-agent: *
Allow: /admin/far
Disallow: /admin/
使用通配符星号”*”设置禁止访问的url
   (禁止所有搜索引擎抓取/cgi-bin/目录下的所有以”.html”格式的网页(包含子目录))
User-agent: *
Disallow: /cgi-bin/*.html
使用美元符号”$”设置禁止访问某一后缀的文件
   (只允许访问以”.html”格式的网页文件。)
User-agent: *
Allow: .html$
Disallow: /
阻止google、百度等所有搜索引擎访问网站中所有带有?的动态网址页面 User-agent: *
Disallow: /*?*
阻止Google spider:Googlebot访问网站上某种格式的图片
  (禁止访问.jpg 格式的图片)
User-agent: Googlebot
Disallow: .jpg$
只允许Google spider:Googlebot抓取网页和.gif格式图片
   (Googlebot只能抓取gif格式的图片和网页,其他格式的图片被禁止;
            其他搜索引擎未设置)
User-agent: Googlebot
Allow: .gif$
Disallow: .jpg$
…….
只禁止Google spider:Googlebot抓取.jpg格式图片
           (其他搜索引擎和其他格式图片没有禁止)
User-agent: Googlebot
Disallow: .jpg$

 

WordPress 中robots.txt文件的设置举例,请看这篇文章的介绍:WordPress robots.txt 设置

 

Google和百度对robots.txt文件的介绍: Google robotstxt百度 robots.txt

 

来源: http://farlee.info/archives/robots-txt-seo-googlebot-baiduspider.html

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics