zoukankan      html  css  js  c++  java
  • robots.txt协议——网络爬虫的“盗亦有道”

    网络爬虫的限制:

      来源审查:判断User-Agent进行限制

        检查来访HTTP协议头的User-Agent域,只响应浏览器或友好爬虫的访问。

        实际上HTTP协议头是可以通过技术上进行伪造。

      发布公告:robots协议

        告知所有爬虫网站的爬取策略,要求爬虫遵守。

    robots协议(Robots Exclusion standard)网络爬虫排除标准

    robots协议也叫robots.txt(统一小写)是一种存放于网站根目录下ASCII编码的文本文件,它通常告诉爬虫,此网站中的哪些内容是不应被爬虫获取的,哪些是可以被爬虫获取的。

      基本语法:

      User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符

      Disallow: /ABC/ 这里定义是禁止爬寻ABC目录下面的目录

      Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。

      Disallow: /*?* 禁止访问网站中所有包含问号 (?) 的网址

      Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片

      Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。

      Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录

      Allow: /tmp 这里定义是允许爬寻tmp的整个目录

      Allow: .htm$ 仅允许访问以".htm"为后缀的URL。

      Allow: .gif$ 允许抓取网页和gif格式图片

      Sitemap: 网站地图 告诉爬虫这个页面是网站地图

    Tip:并不是所有的网站都有robots协议,如果这个网站没有Robots协议,根据协议任何爬虫都可以爬取该网站的任何信息。

    robots协议是建议但非约束性,网络爬虫可以不遵守,但存在一定法律风险。

    根据工程师的道德规范,应先自动或人工识别robots.txt协议后,再进行内容爬取。

    类人行为可不参考 robots协议

     

  • 相关阅读:
    【原】为什么选择iPhone5的分辨率作为H5视觉稿尺寸
    js 进制转换
    抓包 抓nodejs的包 抓浏览器的包 抓手机的包
    nginx 安装 ssl 证书
    github 被强了!太丧心病狂了!
    yandex 图片自动下载
    如何获取命令行的原始参数?
    npm 加速之 yarn cnpm pnpm
    json 格式化处理工具
    两分钟观看 nodejs、 iojs、 npmjs 之间的狗血剧情
  • 原文地址:https://www.cnblogs.com/virtualman/p/14381846.html
Copyright © 2011-2022 走看看