一.网络爬虫的尺寸

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协议,是允许所有爬虫无限制爬取

Robots协议一定放在网站根目录下的更多相关文章

  1. 【转载】Asp.net网站安全:去除网站根目录下的备份文件防止代码泄露

    很多网站运维人员在更新网站版本的时候,喜欢直接在网站目录文件夹中直接压缩原来的网站文件,如果这个备份压缩文件没有移动出去,这样是非常不安全的,有些网站攻击者可能会尝试访问你网站下有没有对应名字的压缩备 ...

  2. asp.net在网站根目录下创建文件夹

    假设要在asp.net网站的根目录下建立文件夹hovertree,C#代码如下: string m_keleyiFolderName = Server.MapPath("/hovertree ...

  3. linux centos无法删除网站根目录下的.user.ini解决办法

    .user.ini文件在执行rm -rf时,提示无法删除 解决办法 首先了解下chattr命令的作用:不让用户修改.删除文件等. -i选项:设定文件不能被删除.改名.设定链接关系,同时不能写入或新增内 ...

  4. 网络爬虫引发的问题及robots协议

    一.网络爬虫的尺寸 1.以爬取网页,玩转网页为目的进行小规模,数据量小对爬取速度不敏感的可以使用request库实现功能(占90%) 2.以爬取网站或爬取系列网站为目的,比如说获取一个或多个旅游网站的 ...

  5. vue中打包之后的dist文件不放在服务器的根目录下

    在工作当中,我使用webpack打包的dist,由于管理的问题,无法被放在服务器根目录下 ,但在目前的vue配置,dist不放在根目录下,访问页面会成为一片空白,于是便要对vue框架的config进行 ...

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

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

  7. Robots协议(摘)

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

  8. Python 爬虫-Robots协议

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

  9. 爬虫的盗亦有道Robots协议

    爬虫的规定 Robots协议 网站开发者对于网络爬虫的规范的公告,你可以不遵守可能存在法律风险,但尽量去遵守 Robots协议:在网页的根目录+robots.txt Robots协议的基本语法: #注 ...

随机推荐

  1. shell知识点(一)

    Shell1.概述Shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核还是一个功能相当强大的编程语言,易编写.易调试.灵活性强2.shell解析器查看linux提供的shell ...

  2. [转载]Apple Swift学习资料汇总

    今年的苹果开发者大会(WWDC)上,公布了ios8的几个新特性,其中包括引入了群聊功能,支持第三方输入法等功能.但更让开发者感兴趣的莫过于Swift语言的发布了. Swift是apple自创的一门转为 ...

  3. 12、label控件

    label可以展示文本.超链接.图片.动图 新建项目Demo526,QMainWindow,勾选ui.将image文件夹(有2个图片)拷贝到项目路径下. [添加图像资源文件] 项目Demo526处,右 ...

  4. JS中生成随机数

    1.Math 对象方法: Math.ceil(); //向上取整. Math.floor(); //向下取整. Math.round(); //四舍五入. Math.random(); //0.0 ~ ...

  5. latex参考文献中作者名字含有特殊字符怎么办

  6. HTML和CSS 入门系列(二):文字、表单、表格、浮动、定位、框架布局、SEO

    上一篇:HTML和CSS 入门系列(一):超链接.选择器.颜色.盒模式.DIV布局.图片 一.文字 1.1 属性 1.2 字体样式:font-family 1.3 字体大小:font-size 1.4 ...

  7. Java_IO流实验

    实验题目链接:Java第09次实验(IO流) 0. 字节流与二进制文件 我的代码 package experiment.io; import java.io.DataInputStream; impo ...

  8. loadrunner事务判断常用方法

    //判断关联到的字符串是否为空 if (strlen(lr_eval_string("{param}")) == 0); //判断关联的字符串是否跟期望的值相同 if(strcmp ...

  9. Python 抓取数据存储到Mysql中

    # -*- coding: utf-8 -*- import os,sys import requests import bs4 import pymysql#import MySQLdb #连接MY ...

  10. Vue复杂路由器的实现

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...