Robots.txt是什么
Robots.txt是网站和搜索引擎之间签订的一个协议,比如百度蜘蛛想要爬取你的网站,它就会先找你的robots.txt协议,然后按照协议里制定的规则进行爬取网站。如果没有robots.txt文件,百度蜘蛛就会沿着链接进行爬取。
Robots.txt协议文件怎么创建?在哪写?
在桌面新建一个记事本,命名为robots.txt,然后在里边写上规则,通过ftp上传工具将该文件上传到网站根目录就可以了。
怎么查看自己的网站有没有robots.txt文件
Robots.txt协议文件是必须放在网站根目录的,查看robots.txt文件有两种方法。一种是直接在自己的域名后面输入robots.txt,点击回车就可以看到;另外一种就是用百度站长工具进行robots文件检测,两种方法都是可以的。
Robots.txt协议文件写法
一、常用参数
(1)User-agent:该规则针对于哪些搜索引擎的爬虫
如果针对于所有搜索引擎爬虫,写法为User-agent:*
如果针对某个搜索引擎爬虫,写法为User-agent:BaiduSpider(百度蜘蛛)
(2)Disallow:不希望被搜索引擎抓取和索引的一些目录或类型。
Disallow:/abc.com abc.com目录下的所有文件均不会被搜索引擎爬虫访问
(3)Allow:允许搜索引擎爬取
国内常见搜索引擎robots名称:
二、下面举例几种常见的robots.txt文件的写法
1.禁止所有搜索引擎爬虫访问网站的任何目录
User-agent: *
Disallow: /
该种写法将导致网站不被爬虫爬取,无法收录,一般用于网站刚上线准备阶段。
2.允许搜友搜索引擎爬虫访问所有目录
User-agent: *
Disallow:
或
User-agent: *
Allow: /
这种写法一般也不常用,一些无用页面时需要禁止搜索引擎爬虫抓取的
3.仅禁止某个搜索引擎爬虫的访问(例如百度蜘蛛)
User-agent: BaiduSpider
Disallow:/
禁止百度蜘蛛访问网站搜友目录
4.允许某个搜索引擎爬虫的访问(例如百度蜘蛛)
User-agent: BaiduSpider
Disallow:
或
User-agent: *
Allow: /
允许百度蜘蛛访问网站的搜友目录
5.禁止爬虫访问网站的特定目录或某类型文件、链接
User-agent: *
Disallow: /abc.com/
Disallow: /admin/
Disallow: .png$
Disallow: .rar$
所有爬虫都不会爬取这两个目录,以及这两个类型的文件
6.禁止爬取目录但又允许爬取该目录下的某个目录
User-agent: *
Disallow: /abc.com/
Allow: /abc.com/index.html
所有搜索引擎爬虫可以爬取 /abc.com/index.html,但不能爬取/abc.com/
下的其他目录。
三、Robots.txt协议的几种特殊参数
(1)使用“*”号匹配字符序列。
例1.拦截搜索引擎对所有以admin开头的子目录的访问,写法:
User-agent: *
Disallow: /admin*/
例2.要拦截对所有包含“?”号的网址的访问,写法:
User-agent: *
Disallow: /*?*
常用于拦截网站动态页面。
(2)使用“$”匹配网址的结束字符
例1.要拦截以.asp结尾的网址,写法:
User-agent: *
Disallow:/*.asp$
常用于拦截网站动态页面。
例2.如果“:”表示一个会话ID,可排除所包含该ID的网址,确保蜘蛛不会抓取重复的网页。但是,以“?”结尾的网址可能是你要包含的网页版本,写法:
User-agent: *
Allow: /*?$
Disallow: /*?
也就是只抓取.asp?的页面,而.asp?=1,.asp?=2等等都不抓取。
(3)sitemap(网站地图)
网站地图一般要放在robots.txt协议文件中,方便搜索引擎爬虫爬取。
写法:Sitemap:http://www.pysfhs.com/sitemap.xml
网站上有很多页面是无用的,各搜索引擎爬虫对全网站进行爬取会占用服务器的带宽,而robots.txt可以针对这些无用页面做一些禁止,对搜索引擎爬虫来说也是友好的,可以更快速的抓取你的网站,从而提高网站收录。