猫宁!!!

参考链接:

https://bbs.360.cn/thread-15062960-1-1.html

https://ziyuan.baidu.com/college/courseinfo?id=150

看到robots这个关键词,先了解一下它的定义,如下是百度百科介绍:

robots是网站跟爬虫间的协议,用简单直接的txt格式文本方式告诉对应的爬虫被允许的权限,也就是说robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。

展示一个robots.txt使用的例子:

https://cn.bing.com/robots.txt,这是必应搜索的robots.txt文件,节取其中一部分。

User-agent: msnbot-media

Disallow: /

Allow: /th?

User-agent: Twitterbot

Disallow:

User-agent: *

Disallow: /account/

Disallow: /amp/

Disallow: /bfp/search

Disallow: /bing-site-safety

Disallow: /blogs/search/

Disallow: /entities/search

Disallow: /fd/

Disallow: /history

Disallow: /hotels/search

Disallow: /images?

Disallow: /images/search?

Disallow: /images/search/?

Sitemap: http://cn.bing.com/dict/sitemap-index.xml

只有当网站运营者不想让一些网页被搜索引擎收录,才会采用robots.txt,否则表示默认全站都可以被搜索引擎爬取收录了。

robots.txt文件放于根目录,内容可包含多条记录,中间用空行分割,如果robots.txt中什么都没有,表示全站可以爬取。

User-agent: *,表示针对所有爬虫。

User-agent: Twitterbot,表示针对Twitterbot这一种爬虫。

Disallow: /bfp/search,表示爬虫不能访问以/bfp/search开头的所有url页面,例如/bfp/search/abc.html,/bfp/searchabc.html等等,当然直接不允许对方访问某一个特定的url也是可以的。

Allow: /bfp/search/vip,表示爬虫可以访问/bfp/search/vip开头的所有url页面。

Sitemap: http://cn.bing.com/dict/sitemap-index.xml,告知爬虫这个文件是站点地图

Allow和Disallow结合使用,灵活掌握爬虫所访问的页面内容,不至于导致一刀切的局面。

这里严格区分字母的大小写。

*,星号表示0个及以上字符。

$,美元符号表示结束符。

这两个都是通配符

禁止所有搜索引擎访问网站的任何目录。

User-agent: *

Disallow: /

允许所有的搜索引擎访问网站的任何目录

User-agent: *

Allow: /

禁止百度访问网站的任何目录

User-agent: Baiduspider

Disallow: /

仅允许百度访问网站的任何目录

User-agent: Baiduspider

Allow: /

禁止访问/abc/开头下的目录,但是其中的html后缀文件除外

User-agent: *

Disallow: /abc/

Allow:/abc/*.html$

禁止访问网站中的所有动态页面,注意字符全都是英文字符

User-agent: *

Disallow: /*?*

以上的都是一些基本的解释说明,可以通过查看知名站点的robots.txt文件,了解对方不想要让搜索引擎抓取的路径,对于渗透测试有时会有新的发现或启发。

http://www.dianping.com/robots.txt,能看出来大众点评不希望所有的爬虫爬取其中的7个目录,例如优惠券、图片、账户等等,但绝对禁止爱帮网(聚合本地生活信息)和口碑网(阿里巴巴旗下生活信息平台)这两家的爬虫爬取任何大众点评域名www.dianping.com上的东西。

全部内容

User-agent: *

Disallow: /coupon/

Disallow: /events/

Disallow: /thirdconnect/

Disallow: /member/

Disallow: /album/

Disallow: /dplab/

User-agent: www.aibang.com Disallow: /

User-agent: aibang.com Disallow: /

User-agent: aibang Disallow: /

User-agent: aibangspider Disallow: /

User-agent: aibang-spider Disallow: /

User-agent: aibangbot Disallow: /

User-agent: aibang-bot Disallow: /

User-agent: koubeispider Disallow: /

User-agent: koubei.com Disallow: /

认真解读一家站点的robots.txt,也许可以看到互联网江湖的一些刀光剑影的余晖。

PJzhang:robots协议的实际场景的更多相关文章

  1. 笔记整理--玩转robots协议

    玩转robots协议 -- 其他 -- IT技术博客大学习 -- 共学习 共进步! - Google Chrome (2013/7/14 20:24:07) 玩转robots协议 2013年2月8日北 ...

  2. Robots协议

       Robots协议 什么是robots? Robots文件:网站和搜索引擎之间的一个协议. 用来防止搜索引擎抓取那些我们不想被搜索引擎看到的隐私内容. Robots文件告诉蜘蛛什么是可以被查看的. ...

  3. 芝麻HTTP:分析Robots协议

    利用urllib的robotparser模块,我们可以实现网站Robots协议的分析.本节中,我们来简单了解一下该模块的用法. 1. Robots协议 Robots协议也称作爬虫协议.机器人协议,它的 ...

  4. [python爬虫]Requests-BeautifulSoup-Re库方案--robots协议与Requests库实战

    [根据北京理工大学嵩天老师“Python网络爬虫与信息提取”慕课课程编写 慕课链接:https://www.icourse163.org/learn/BIT-1001870001?tid=100223 ...

  5. 第8章 传输层(1)_TCP/UDP协议的应用场景

    1. 传输层的两个协议 1.1 TCP和UDP协议的应用场景 (1)TCP协议:如果要传输的内容比较多,需要将发送的内容分成多个数据包发送.这就要求在传输层用TCP协议,在发送方和接收方建立连接,实现 ...

  6. 使用 urllib 分析 Robots 协议

    (1) Robots Exclusion Protocol,网络爬虫排除标准,也称爬虫协议.机器人协议,用来告诉爬虫和搜索引擎哪些页面可以抓取,哪些不可以抓取(2) Robots 协议以 robots ...

  7. Python 爬虫-Robots协议

    2017-07-25 21:08:16 一.网络爬虫的规模 二.网络爬虫的限制 • 来源审查:判断User‐Agent进行限制 检查来访HTTP协议头的User‐Agent域,只响应浏览器或友好爬虫的 ...

  8. Robots协议(爬虫协议、机器人协议)

    Robots协议(也称为爬虫协议.机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓 ...

  9. 爬虫基础 - Robots协议

    Robots协议 指定一个robots.txt文件,告诉爬虫引擎怎么爬取 https://www.taobao.com/robots.txt User-agent: Baiduspider Allow ...

随机推荐

  1. Python笔记——基本数据结构:列表、元组及字典

    转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx Python基本数据结构:列表,元组及字典 一.列表 一组有序项 ...

  2. Mac 下Java开发环境安装

    一.安装Eclipse 1.官网下载安装文件 http://www.eclipse.org/downloads 2.eclipse安装svn插件 这里须要注意安装的svn的版本号.要和后面的安装的Ja ...

  3. !推荐:下载abap 源代码

    转自http://blog.sina.com.cn/s/blog_4d1570de0100pvhd.html *@------------------------------------------- ...

  4. android中getWidth()和getMeasuredWidth()

    getMeasuredWidth()获取的是view原始的大小,也就是这个view在XML文件中配置或者是代码中设置的大小.getWidth()获取的是这个view最终显示的大小,这个大小有可能等于原 ...

  5. Safair 浏览器cllick事件不生效或者需要双击才生效

    针对Safair 浏览器cllick事件不生效或者需要双击才生效的解决方案. 方法一:给元素加上cursor: pointer样式.(不生效) 方法二:ios事件机制不一样,将click事件改为mou ...

  6. CALayer的隐式动画

    CALayer的使用 在我的理解中CALayer就是iOS中利用图层精简非交互式绘图.那么那些核心动画类.也就是变化图层的非交互式绘制规则而已.其中的本质就是将CALayer中的内容转化为map图.从 ...

  7. Python对象拷贝——深拷贝与浅拷贝

    对象赋值 浅拷贝 深拷贝 1. 对象赋值 对象的赋值实际上是对对象的引用.也就是说当把一个对象赋值给另一个对象时,只是拷贝了引用.如: >>> t1 = tuple('furzoom ...

  8. Java生成UUID不重复的id值

    在Java中创建UUID在网上查资料才知道在Java中,变成了UUID.创建方式也出奇简单System.out.println( java.util.UUID.randomUUID());

  9. 进程优先级、nice值

    进程cpu资源分配就是指进程的优先权(priority).优先权高的进程有优先执行权利.配置进程优先权对多任务环境的linux很有用,可以改善系统性能.还可以把进程运行到指定的CPU上,这样一来,把不 ...

  10. (QA-LSTM)自然语言处理:智能问答 IBM 保险QA QA-LSTM 实现笔记.md

    train集: 包含若干条与保险相关的问题,每一组问题对为一行,示意如下: 可分为四项,第三项为问题,第四项为答案: 1.build_vocab 统计训练集中出现的词,返回结果如下(一个包含3085个 ...