robots.txt用法

robots.txt用法robots.txt的主要作用是告诉蜘蛛爬虫该网站下哪些内容能抓取,哪些内容不能抓取。虽然可以没有robots.txt这个文件,默认就抓取该网站的所有文件,对搜索引擎爬虫没有任何的影响,但是如果你想控制蜘蛛的检索间隔,你就必须用robots.txt来控制。robots.txt不是一种规范,是约定俗成的,主流的搜索引擎都是遵循robots.txt的规则来索引页面,但是一些spam爬虫不会遵循,所…

大家好,又见面了,我是你们的朋友全栈君。

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

参考资料|reference

转载于:https://www.cnblogs.com/oray/p/3746750.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133473.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • [套图]关于爱情_恋爱图

    [套图]关于爱情_恋爱图 .com  分享最最可爱的互联网 喜欢这套图,看起来很温和   ByEasy

    2022年9月14日
  • java基础API

    java基础APIJava常用类库1.API(1)ApplicationProgrammingInterface,应用程序接口。是一些预先定义的类和接口,或指软件系统不同组成部分衔接的约定。(2)API说明文档API文档查看方式:第一步选择包,第二步,选择类或接口,第三步查看类和接口的使用说明,右边的区域。右边的区域分为五块,分别为类的定义和功能介绍、属性的介绍、构造器的介绍、构造器的介绍、方法的列表、每个方法的使用详细说明。2、java.lang包(1)这是我们api中最基础的一个包(2)该包下面的

    2022年7月9日
  • navicat激活码 NAVC-PY2U【2022免费激活】

    (navicat激活码 NAVC-PY2U)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年4月2日
  • 50个Java精品源码免积分下载[通俗易懂]

    50个Java精品源码免积分下载[通俗易懂]JAVA开发缺不了代码。代码的数量众多,质量也参差不齐。如果在多如繁星的代码世界中找到最适合自己的无异于大海捞针,所以我为大家搜集了不少优质的代码资源,希望大家喜欢。JAVA开发和PHP开发的OA系统性能比较【源代码】http://down.51cto.com/data/572164Java课程设计案例精编光盘源码【源代码】http://down.51cto.com/data/57

    2022年7月7日
  • html5 移动端开发模板,搭建一个vue-cli的移动端H5开发模板

    html5 移动端开发模板,搭建一个vue-cli的移动端H5开发模板简介vue-mobile是是基于vue-cli实现的移动端H5开发模板,其中已经搭建好基本的开发框架,可帮助您实现快速开发。技术栈:vue+vux+axios+less功能搭建项目目录配置css预处理器配置UI组件库vux解决移动端适配配置页面路由缓存axios请求封装工具类函数封装toast组件封装dialog组件封装底部导航组件封装列表页demo表单页…

    2022年6月21日
  • plantuml 依赖_遇见PlantUML

    plantuml 依赖_遇见PlantUML前言来到公司实习也快一个月了,最大的体会就是,虽然大部分时间做的是简单的增删该查,但不同于在学校时写的Demo,你要充分考虑程序的鲁棒性(健壮性)、可扩展性(可维护性)、时间/空间复杂度等。因为是要实际上线的项目,你需要面面俱到,对团队负责。于是决定在完成组里任务之余,花时间提高自己的的编码规范、多思考程序设计的可扩展性、性能是否可观等。我觉得开发工程师和码农之间的区别是,不仅是复制粘贴和以实现功…

    2022年10月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号