zoukankan      html  css  js  c++  java
  • 网络爬虫引发的问题及robots协议

    一.网络爬虫的尺寸

    1.以爬取网页,玩转网页为目的进行小规模,数据量小对爬取速度不敏感的可以使用request库实现功能(占90%)

    2.以爬取网站或爬取系列网站为目的,比如说获取一个或多个旅游网站的爬虫,对数据要求规模较大,爬取速度敏感的可以使用Scrapy库

    3.以爬取全网为目的,规模很大搜索引擎爬取速度关键,需要定制开发

    二.网络爬虫带来的问题

    总的来说有:骚扰问题,法律风险,隐私泄露

    1.爬虫可利用计算机的快速功能访问服务器,它会比人类的速度快到百倍甚至千倍,受限于编写水平和目的,网络爬虫将会为web服务器带来巨大的资源开销。对网站运行者来讲,爬虫形成了骚扰。

    2.网络爬虫会带来法律风险。服务器上的数据有产权归属,比如新浪上的新闻规新浪所有,如果网络爬虫获取数据牟利后将会带来法律风险。

    3.网络爬虫会造成隐私泄露。网络爬虫可能具备突破简单访问控制的能力,或得被保护数据从而泄露个人隐私。   

    三.网络爬虫的限制

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

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

    发布公告: Robots协议

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

    四.Robots协议

    作用:网站会告知网络爬虫哪些页面可以抓取,哪些不行

    形式:在网站根目录下的robots.txt文件。

    下面我自己做了一个实例  打开京东的Robots协议 https://www.jd.com/robots.txt

    会出现下面几句话

     大概的意思是所有爬虫都要遵守以下协定

    任何爬虫都不允许访问?* 即?号开头的网页

    任何爬虫都不允许访问pop*.html开头的网页

    任何爬虫都不允许访问pinpai*.html开头的网页

    此外 EtaoSpider HuihuiSpidder GwdangSpider WochachaSpider这四个网络爬虫都不能爬取京东的任何数据

    五.Robots协议基本语法

    *代表所有          /代表根目录

    User-agent:  代表哪些爬虫

    Disallow:你不允许访问资源的目录

    六.其他注意

    1.Robots协议一定放在网站根目录下

    2.http://www.news.sina.com.cn/robots.txt和http://www.sina.com.cn/robots.txt它们的Robots协议是不一样的

     3.如果一个网站没有Robots协议,是允许所有爬虫无限制爬取

  • 相关阅读:
    为图片指定区域添加链接
    数值取值范围问题
    【leetcode】柱状图中最大的矩形(第二遍)
    【leetcode 33】搜索旋转排序数组(第二遍)
    【Educational Codeforces Round 81 (Rated for Div. 2) C】Obtain The String
    【Educational Codeforces Round 81 (Rated for Div. 2) B】Infinite Prefixes
    【Educational Codeforces Round 81 (Rated for Div. 2) A】Display The Number
    【Codeforces 716B】Complete the Word
    一个简陋的留言板
    HTML,CSS,JavaScript,AJAX,JSP,Servlet,JDBC,Structs,Spring,Hibernate,Xml等概念
  • 原文地址:https://www.cnblogs.com/qq991025/p/11871743.html
Copyright © 2011-2022 走看看