robots.txt基本介绍
robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容。
当一个搜索机器人(有的叫搜索蜘蛛)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。
另外,robots.txt必须放置在一个站点的根目录
下,而且文件名必须全部小写
。
robots.txt语法
首先,我们来看一个robots.txt范例:
# Robots.txt file from
http://www.seovip.cn
# All robots will spider the domain
User-agent: *
Disallow:
以上文本表达的意思是允许所有的搜索机器人访问本站点下的所有文件。
具体语法分析:
其中#后面文字为说明信息;
User-agent:
后面为搜索机器人的名称,后面如果是*,
则泛指所有的搜索机器人;
Disallow:
后面为不允许访问的文件目录。
下面,我将列举一些robots.txt的具体用法:
允许所有的robot访问
User-agent: *
Disallow:
或者也可以建一个空文件 "/robots.txt" file
禁止所有搜索引擎访问网站的任何部分
User-agent: *
Disallow: /
禁止所有搜索引擎访问网站的几个部分(下例中的01、02、03目录)
User-agent: *
Disallow: /01/
Disallow: /02/
Disallow: /03/
禁止某个搜索引擎的访问(下例中的BadBot)
User-agent: BadBot
Disallow: /
只允许某个搜索引擎的访问(下例中的Crawler)
User-agent: Crawler
Disallow:
User-agent: *
Disallow: /
另外,我觉得有必要进行拓展说明,对robots meta进行一些介绍:
Robots META标签则主要是针对一个个具体的页面。和其他的META标签(如使用的语言、页面的描述、关键词等)一样,Robots META标签也是放在页面的<head></head>中,专门用来告诉搜索引擎ROBOTS如何抓取该页的内容。
Robots META标签的写法:
Robots
META标签中没有大小写之分,name=”Robots”表示所有的搜索引擎,可以针对某个具体搜索引擎写为name=”BaiduSpider”。
content部分有四个指令选项:index、noindex、follow、nofollow,指令间以“,”分隔。
INDEX:
指令告诉搜索机器人抓取该页面;
FOLLOW:
指令表示搜索机器人可以沿着该页面上的链接继续抓取下去;
NOINDEX
:告诉Google不要索引含此标签的网页。但根据实际经验,Google并非100%遵守。
NOFOLLOW
:告诉Google不要关注含此标签的网页里的特定链接。这是为了解决链接spam而设计的Meta标签。
NOARCHIVE
:告诉Google不要保存含此标签的网页的快照(网页快照就是搜索引擎在收录网页时,都会做一个备份,大多是文本的,保存了这个网页的主要文字内容,这样当这个网页被删除或连接失效时,用户可以使用网页快照来查看这个网页的主要内容,由于这个快照以文本内容为主,所以会加快访问速度。)。
NOSNIPPET
:告诉Google不要在搜索结果页的列表里显示含此标签的网站的描述语句,并且不要在列表里显示快照链接。
Robots Meta标签的缺省值是INDEX和FOLLOW,只有inktomi除外,对于它,缺省值是INDEX,NOFOLLOW。
这样,一共有四种组合:
<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW">
<META NAME="ROBOTS" CONTENT="NOINDEX,FOLLOW">
<META NAME="ROBOTS" CONTENT="INDEX,NOFOLLOW">
<META NAME="ROBOTS" CONTENT="NOINDEX,NOFOLLOW">
其中
<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW">可以写成<META NAME="ROBOTS" CONTENT="ALL">;
<META NAME="ROBOTS" CONTENT="NOINDEX,NOFOLLOW">可以写成<META NAME="ROBOTS" CONTENT="NONE">
目前看来,绝大多数的搜索引擎机器人都遵守robots.txt的规则,而对于Robots
META标签,目前支持的并不多,但是正在逐渐增加,如著名搜索引擎GOOGLE就完全支持,而且GOOGLE还增加了一个指令“archive”,可以
限制GOOGLE是否保留网页快照。例如:
<META NAME="googlebot" CONTENT="index,follow,noarchive">
表示抓取该站点中页面并沿着页面中链接抓取,但是不在GOOLGE上保留该页面的网页快照。
分享到:
相关推荐
第一种方法: 1. 使用`cscript downfile.vbs http://192.168.1.115/robots.txt C:\Inetpub\b.txt` - 这里downfile.vbs是VBScript文件,http://192.168.1.115/robots.txt是要下载的URL,C:\Inetpub\b.txt是保存...
4. **下载文件**:最后,通过`echo get robots.txt >> ftp.txt`命令从FTP服务器下载名为`robots.txt`的文件。 5. **关闭连接**:完成文件下载后,使用`echo bye >> ftp.txt`命令关闭FTP连接。 #### 五、不同操作...
1. **遵守Robots协议**:尊重网站的robots.txt文件,避免抓取禁止抓取的页面。 2. **限制请求频率**:频繁的请求可能会导致服务器压力增大,甚至被封IP,因此要设置合理的请求间隔。 3. **版权与隐私**:确保抓取的...
首先,环境配置是学习爬虫的第一步。确保你已经安装了Python,并且安装了相应的库,如requests(用于发送HTTP请求)、BeautifulSoup(用于解析HTML文档)以及pandas(用于数据处理和分析)。如果你还没有这些库,...
1. **robots.txt**:尊重网站的爬虫规则,不抓取禁止爬取的页面。 2. **隐私保护**:不得抓取和滥用个人敏感信息。 3. **合法合规**:遵守各国关于网络爬虫的法律法规,不进行商业侵权。 以上知识点构成了Python...
在爬虫部分的最后,文档还提出了一些与爬虫相关的问题,如请求头的使用、代理IP的类型、请求返回内容的区别,以及robots协议等,这些都是在实际爬虫项目中经常会遇到的问题。 最后,文档中穿插的一些问题提醒我们,...