python——爬虫前言

网络爬虫

网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。——百度百科
简单的说,网络爬虫就是一小段代码(可以称之为脚本)。该代码的作用是对指定网址(URL)进行页面信息爬取(下载),然后进行信息分析,提取有用部分信息输出。
程序不是人类,那他怎么识别什么是有用信息呢?有用信息取决于程序员,刚爬取下来的信息是该网页所有内容,程序员可以通过设定特定关键字、关键词搜索等方法确定关键信息,然后输出。
基于计算机快速的运输能力,使得网络爬虫对网络信息的获取及筛选要比人类的速度快的多的多。通过改变计算方式,可以实现在短时间内获取大量信息。

网络爬虫带来的问题

1.对服务器的骚扰。由于网络爬虫的高效性,而网站服务器是针对人类访问设计的,网络爬虫的高速访问会导致服务器崩溃。当然,这里指的是不友好的爬虫,无限制地访问服务器,浪费服务器资源。
2.法律风险。这里指的是数据的归属权问题,好比一本小说作者耗时数年才写出来,网络爬虫不到一秒就把小说内容爬取了,这里将涉及到权属问题,因为网络爬虫是无差别爬取。
3.个人隐私。网络爬虫相对容易突破防御薄弱的防御(如简单的密码),从而导致个人隐私泄露。

守法的网络爬虫

限制方式

1.利用技术手段。
来源审查,判断所有网络请求链接头部的User_Agent来进行限制,只响应友好爬虫和预定浏览器;
限制同一ip访问频率,次数等。
2.发布公告:Robost协议
robots协议存放于网站根目录下的robots.txt。告诉所有爬虫,网站的爬取策略,要求爬虫遵守协议。(非强制性)
robots协议遵守方式
1.网络爬虫:自动或人工识别robots协议,在进行内容爬取
2.建议并非约束

百度robots.txt——予许指定爬虫爬取

百度robots.txt
在这里插入图片描述

京东robots.txt——不予许部分爬虫爬取

在这里插入图片描述

爬取的原则

1.类人行为的爬取
笔者认为,如果该爬虫的爬取行为(既访问频率)与人类访问的频率相似,那么将可以不完全遵守robots协议。
因为,网站的建设就是为了给人类提供信息的,而网络爬虫类人行为地爬取并不会对服务器形成骚扰,所以可以忽略robots协议(robots协议也是用来保护服务器不受恶意骚扰)
2.中大规模的网站爬取
既需要爬取整个网站或者更多的信息,这样就需要严格遵守robots协议了,不能对服务器形成骚扰。
3.无robots协议
在网站根目录下没有robots协议,甚至连robots.txt文件都没有。那么该网站默认为可以无限制地随意爬取该网站信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值