爬虫协议robots

简介:

Robots协议(也称为爬虫协议、机器人协议等)全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。本文将详细介绍爬虫协议robots

 

概述

  robots.txt文件是一个文本文件,是搜索引擎中访问网站的时候要查看的第一个文件。robots.txt文件告诉蜘蛛程序在服务器上什么文件是可以被查看的

  当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面

【原则】

  Robots协议是国际互联网界通行的道德规范,基于以下原则建立:

  1、搜索技术应服务于人类,同时尊重信息提供者的意愿,并维护其隐私权;

  2、网站有义务保护其使用者的个人信息和隐私不被侵犯

  [注意]robots.txt必须放置在一个站点的根目录下,而且文件名必须全部小写

 

写法

【User-agent】

  下面代码中*代表的所有的搜索引擎种类,*是一个通配符,表示所有的搜索机器人

User-agent: *

  下面代码表示百度的搜索机器人

User-agent: Baiduspider

【Disallow】

  下面代码表示禁止爬寻admin目录下面的目录

Disallow: /admin/

  下面代码表示禁止抓取网页所有的.jpg格式的图片

Disallow: /.jpg$

  下面代码表示禁止爬取ab文件夹下面的adc.html文件

Disallow:/ab/adc.html

  下面代码表示禁止访问网站中所有包含问号 (?) 的网址

Disallow: /*?*

  下面代码表示禁止访问网站中所有页面

Disallow: /

【Allow】

  下面代码表示允许访问以".html"为后缀的URL

Allow: .html$

  下面代码表示允许爬寻tmp的整个目录

Allow: /tmp

 

用法

  下面代码表示允许所有的robot访问网站所有的页面

User-agent: *Allow: /

  下面代码表示禁止所有搜索引擎访问网站的任何部分

User-agent: *Disallow: /

  下面代码表示禁止百度的机器人访问其网站下其所有的目录

User-agent: Baiduspider
Disallow: /

  下面代码表示禁止所有搜索引擎访问网站的cgi-bin、tmp、~joe这三个目录下的文件

User-agent: *Disallow: /cgi-bin/Disallow: /tmp/Disallow: /~joe/

 

误区

  【误区一】:网站上的所有文件都需要蜘蛛抓取,那就没必要在添加robots.txt文件了。反正如果该文件不存在,所有的搜索蜘蛛将默认能够访问网站上所有没有被口令保护的页面

  每当用户试图访问某个不存在的URL时,服务器都会在日志中记录404错误(无法找到文件)。每当搜索蜘蛛来寻找并不存在的robots.txt文件时,服务器也将在日志中记录一条404错误,所以应该在网站中添加一个robots.txt

  【误区二】:在robots.txt文件中设置所有的文件都可以被搜索蜘蛛抓取,这样可以增加网站的收录率

  网站中的程序脚本、样式表等文件即使被蜘蛛收录,也不会增加网站的收录率,还只会浪费服务器资源。因此必须在robots.txt文件里设置不要让搜索蜘蛛索引这些文件















本文转自xsster51CTO博客,原文链接:http://blog.51cto.com/12945177/1948446 ,如需转载请自行联系原作者


相关文章
|
数据采集 存储 自然语言处理
python爬虫分类和robots协议 | python爬虫实战之一
本节介绍了爬虫的由来,爬虫的基本流程,以及爬虫如何来获得一个新的URL,还对robot协议作出一些简单地介绍。
python爬虫分类和robots协议 | python爬虫实战之一
|
2月前
|
数据采集 存储 JSON
从零到一构建网络爬虫帝国:HTTP协议+Python requests库深度解析
在网络数据的海洋中,网络爬虫遵循HTTP协议,穿梭于互联网各处,收集宝贵信息。本文将从零开始,使用Python的requests库,深入解析HTTP协议,助你构建自己的网络爬虫帝国。首先介绍HTTP协议基础,包括请求与响应结构;然后详细介绍requests库的安装与使用,演示如何发送GET和POST请求并处理响应;最后概述爬虫构建流程及挑战,帮助你逐步掌握核心技术,畅游数据海洋。
67 3
|
4月前
|
数据采集 网络协议 数据挖掘
网络爬虫进阶之路:深入理解HTTP协议,用Python urllib解锁新技能
【7月更文挑战第30天】网络爬虫是数据分析和信息聚合的关键工具。深入理解HTTP协议及掌握Python的urllib库对于高效爬虫开发至关重要。HTTP协议采用请求/响应模型,具有无状态性、支持多种请求方法和内容协商等特点。
51 3
|
数据采集 存储 搜索推荐
python 爬虫分类和 robots 协议 | 学习笔记
快速学习 python 爬虫分类和 robots 协议
144 0
|
Web App开发 数据采集 Python
|
数据采集 搜索推荐 索引
爬虫的"盗亦有道"-Robots协议
网络爬虫的君子协议 执着 网络爬虫的尺寸 小规模,数量小,爬去速度不敏感,requests库 中规模,数据规模较大,爬取速度敏感scrapy库 大规模,搜索引擎,爬取速度关键定制开发 爬取网页 玩转网页 爬取网站 爬取系列网站 爬取全网 网络爬虫引发的问题 性能骚扰 法律风险 隐私泄露 网络爬虫的"性能骚扰" web服务器默认接受人类访问,受限于编写水平和目的,网络爬虫将会为web服务器带来巨大的资源的开销。
1727 0
|
15天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
59 6
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
176 4
|
3月前
|
数据采集 存储 搜索推荐
打造个性化网页爬虫:从零开始的Python教程
【8月更文挑战第31天】在数字信息的海洋中,网页爬虫是一艘能够自动搜集网络数据的神奇船只。本文将引导你启航,用Python语言建造属于你自己的网页爬虫。我们将一起探索如何从无到有,一步步构建一个能够抓取、解析并存储网页数据的基础爬虫。文章不仅分享代码,更带你理解背后的逻辑,让你能在遇到问题时自行找到解决方案。无论你是编程新手还是有一定基础的开发者,这篇文章都会为你打开一扇通往数据世界的新窗。
|
4月前
|
数据采集 存储 JSON
从零到一构建网络爬虫帝国:HTTP协议+Python requests库深度解析
【7月更文挑战第31天】在网络数据的海洋中,使用Python的`requests`库构建网络爬虫就像探索未知的航船。HTTP协议指导爬虫与服务器交流,收集信息。HTTP请求包括请求行、头和体,响应则含状态行、头和体。`requests`简化了发送各种HTTP请求的过程。
83 4