新闻资讯  快讯  焦点  财经  政策  社会
互 联 网   电商  金融  数据  计算  技巧
生活百科  科技  职场  健康  法律  汽车
手机百科  知识  软件  修理  测评  微信
软件技术  应用  系统  图像  视频  经验
硬件技术  知识  技术  测评  选购  维修
网络技术  硬件  软件  设置  安全  技术
程序开发  语言  移动  数据  开源  百科
安全防护  资讯  黑客  木马  病毒  移动
站长技术  搜索  SEO  推广  媒体  移动
财经百科  股票  知识  理财  财务  金融
教育考试  育儿  小学  高考  考研  留学
您当前的位置:首页 > IT百科 > 程序开发 > 编程百科

一文带你了解爬虫

时间:2019-08-01 13:57:33  来源:  作者:

前段时间我妈突然问我:儿子,爬虫是什么?我当时既惊讶又尴尬,惊讶的是为什么我妈会对爬虫好奇?尴尬的是我该怎么给她解释呢?

一、爬虫介绍

1.爬虫是什么

网络爬虫(web crawler 简称爬虫)就是按照一定规则从互联网上抓取信息的程序,既然是程序那和正常用户访问页面有何区别?爬虫与用户正常访问信息的区别就在于:用户是缓慢、少量的获取信息,而爬虫是大量的获取信息。

一文带你了解爬虫

 

这里还需要注意的是:爬虫并不是Python语言的专利JAVA、Js、C、php、Shell、Ruby等等语言都可以实现,那为什么Python爬虫会这么火?我觉得相比其他语言做爬虫Python可能就是各种库完善点、上手简单大家都在用,社区自然活跃,而社区活跃促成Python爬虫慢慢变成熟,成熟又促使更多用户来使用,如此良性循环,所以Python爬虫相比其他语言的爬虫才更火。

下面是一段hello world级别的Python爬虫,它等效于你在百度搜索关键字:python

一文带你了解爬虫

 

2.爬虫案例

既然爬虫是大量抓取网页,那是不是爬虫都是不好的呢?答案当然不是,可以说我们的日常上网已经离不开爬虫了,为什么这么说?下面我就为大家盘点几个爬虫日常应用:

  1. 搜索引擎:如Google、百度、雅虎、搜狗、必应等等很多搜索引擎其本质就是一个(可能多个)巨大爬虫,这些搜索引擎工作原理是:页面收录->页面分析->页面排序->响应关键字查询,也就是说它会先把互联网上很多页面保存到服务器,然后分析网页内容建立关键字索引,最后用户输入关键字的时候去查询内容,然后根据相关性排序(百度害人的竞价排名毫无相关性可言),第一步的页面收录就是爬虫,百度查看一个网站有多少网页被收录方法,百度输入:site:你想查询的网站,如:site:blog.csdn.net。
一文带你了解爬虫

 

  1.  
  2. 抢票软件:很多人在吐槽12306卡,可你不知道12306几乎每天都相当于淘宝双11的流量,这谁受得了。为什么每天都是如此高的流量?答案自然是爬虫了,为什么抢票软件可以抢票?因为它在不断的刷新和监控是否有余票,大大小小这么多抢票App,访问量之高可想而知。之前很多公司都出过抢票插件,如:百度、360、金山、搜狗等等,后来都被铁道部约谈下线了,而现在又流行抢票app,为什么抢票app可以,插件就不可以?可能是因为管理和可控性的原因。
  3. 惠惠购物助手:这是一款能进行多个网站比价并能知道最低价的一个网站,其工作原理也是通过大量爬虫爬取商品价格然后存储,这样就可以制作一个价格走势图,帮助你了解商品最低价。
一文带你了解爬虫

 

二、爬虫的价值

从上面举的几个例子来看,爬虫对整个互联网的价值真的无法估量,那对于小我而言,爬虫能给我们带来哪些价值?

1.隐形的翅膀

如果你问我学完Python基础之后该学习什么技能?我会毫不犹疑的说爬虫,为什么是爬虫?

  1. 爬虫相对其他技能简单易学,且效果立即可见,会有一定的成就感
  2. 爬虫可以说是其他技能的基石,因为他是数据的来源,现在这个时代谁有数据谁才能称王,所以会爬虫绝对会让你如虎添翼
  3. 在国内,很多企业巴不得你啥都会,所以在应聘时,爬虫会是一个不错的加分项

2.看不见的商战

职场对话:

老板:小明给你个重要任务。

小明:就算996我也在所不辞(第一次接到老板的直接需求)!

老板:你能不能搞到竞争对手的商品价格?

小明:没问题(牛逼先吹出去),小事!

老板:这可不是小事,只要你能持续获取竞品价格,我们就可以标价低于他们一点点,持续如此大家就知道我们的价格肯定是比他们低,这样大家就直接来我们这里购买商品了,到时候庆功宴上你就是最大功臣(先画个饼)。

小明:老板牛逼,老板英明!

3.会爬虫就可以创业

工作之后很多同学会利用上班空余时间,来做自己的东西或者项目,别看开始是一个小打小闹的东西,慢慢丰富将来也许会成为一款成熟的产品。

而爬虫可以让你很轻松的实现自己的产品,做的好的话就可以创业。这里猪哥给大家列几个简单的创业项目,当然作为一个思维引导。

一文带你了解爬虫

 

如果你想做一款好的产品,你需要从用户需求出发去思考,做解决目前存在的问题的产品或者目前还没有的服务,也许你的产品就是下一个头条。

三、盗亦有道

爬虫既然如此强大而优秀,那是不是会了爬虫就可以为所欲为?

延伸话题:其实我内心一直有一个疑问:为什么互联网公司都偏爱用动植物来命名或作为logo?如:蚂蚁金服、天猫、菜鸟、金东狗、腾讯企鹅,百度的熊掌、搜狗、途牛、美团的袋鼠。。。真的是太多了,难道仅仅是因为好记?我认为好记是一个原因,其根本原因是受到编程行业的影响,你想想编程行业有多少动植物:Java(咖啡)、Python(蟒蛇)、Go(囊地鼠)、PHP(大象)、linux(企鹅)、Perl(骆驼)、MySQL(海豚)等等,具体为什么编程行业喜欢用动植物这猪哥就不清楚,还请明白的同学留言告知大家!

讲上面的延伸话题想表达的是,大自然世间万物,相生相克,衡而不祸!而爬虫也是如此,下面就为大家介绍一下约束爬虫的几个点。

1.robots协议

做过网站的同学也许知道,我们在建站的时候需要在网站根目录下放一个文件:robots.txt,这个文件是干什么用的呢?

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

每个网站的根目录下都必须放置robots.txt文件,否则搜索引擎将不收录网站任何网页。

下面我们以百度为例子,来看看百度的robots.txt文件:

一文带你了解爬虫

 

我们在百度robots协议的最下面,有这样一条:

User-agent: *
Disallow: /

这表示除上面那些定义过的爬虫以外其他爬虫都不允许爬取百度任何东西!

2.法律

我们都知道在发起请求时User-agent是可以自定义的,也就是说我们可以绕过robots协议和以User-agent来定义的反爬虫技术,所以robots协议可能更像一个君子协议,那咱们国家有没有法律明文规定呢?我们来了解一下非法侵入计算机信息系统罪

第二百八十五条 非法侵入计算机信息系统罪:违反国家规定,侵入前款规定以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,或者对该计算机信息系统实施非法控制,情节严重的,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。

我们可以看到重点信息:入侵计算机获取数据是违法的,也就是说爬虫技术本身是无罪的,因为它是获取的公开信息,并未非法入侵计算机。但是如果你用爬取到的数据去从事商业化操作,那也许就构成了违法犯罪行为!

给大家介绍下因爬虫而被判刑的案件:

  1. 头条爬虫官司:https://dwz.cn/qBBHc2fq
  2. 酷米客公司官司:https://dwz.cn/9IpAOHGB
  3. 360和百度爬虫官司:https://dwz.cn/RGRa3HJc

我发现这几起案件的通性有两点:1、公司性质。2、竞争对手。3、让人家找到线索。

最后提醒大家:技术人,要守住自己的底线,违反国家法律法规的事情咱们坚决不能做!

3.反爬虫工程师

本来想采访一位携程反爬虫工程师,但是他说由于工作保密原因不便接受采访,所以只好尊重他的选择!

四、爬虫现状

之前猪哥说过互联网中有超过50%的流量来自爬虫,那我们就来简单聊聊目前爬虫的现状吧!

1.技术

反爬虫几乎和爬虫同时诞生,它们是相爱相杀的连个技术,如果没有爬虫就没有反扒,而反扒技术又反过来又可以促进爬虫技术的发展。

  1. 交互问题:各种变态的验证码充斥,尤其是12306,分分钟都想爆粗口,以后会越来越变态。。。
  2. js加密:最近很流行的一种反扒技术,会爬虫还得先学js,然后反爬虫工程师在js里面各种投毒,杀人诛心。。。
  3. IP限制:限制单个ip某段时间内访问次数

猪哥只介绍了一个反扒技术,当然都有现成的技术解决,但是作为爬虫员最重的并不是会使用工具或框架去应对反扒,而是能通过自己的思考和摸索破解反扒,因为反扒技术更新快且多样化。

一文带你了解爬虫

 

2.就业

就业的话主要从招聘、薪资、就业形势三个方面分析,我从网上查阅了一些资料,然后整理以图片形式提供给大家参考。

一文带你了解爬虫

 


一文带你了解爬虫

 


一文带你了解爬虫

 

数据来源:职友集:https://dwz.cn/6PeU46QY

3.前景

现在很多人并不看好爬虫的前景,只搞爬虫的话技术只停留在当前水平,不再学习新知识,不再进步的话,那么是没有前途的,总有一天会被时代淘汰,其实其他职位也只如此。

每个职业都是有一个横向和纵向的发展,也就是所谓的广度和深度的意思。第一、如果专研得够深,你的爬虫功能很强大,性能很高,扩展性很好等等,那么还是很有前途的。第二、爬虫作为数据的来源,后面还有很多方向可以发展,比如可以往大数据分析、数据展示、机器学习等方面发展,前途不可限量,现在作为大数据时代,你占据在数据的的入口,还怕找不到发展方向?所以爬虫也许只是一个起点一个跳板,是你走向人生巅峰的一个基石,总有一天你会迎娶白富美!

一文带你了解爬虫

 

五、总结

本期为大家讲解什么是爬虫、爬虫的价值、爬虫的合法性以及爬虫的现状



Tags:   点击:()  评论:()
声明:本站部分内容来自互联网,内容观点仅代表作者本人,如有任何版权侵犯请与我们联系,我们将立即删除。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
1、反斜杠的使用反斜线可以将紧随其后的单个字符视为字面意义上的字符,如*在 Shell中代表任意字符,在查找时经常会使用*来查找多个匹配的文件,但是有时我们需要找的就是*字...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
用工单位(甲方) 派遣单位(乙方)法定代表人 法定代表人地址 地址电话 电话传真 传真根据《中华人民共和国合同法》和《中华人民共和国劳动合同法》等有关法律、法规的规定,甲、乙...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
医疗保险是比较特殊的一类商业保险,与社保的医保有比较多的相似之处。它的存在是为了解决医疗费用贵、看病难的问题。投保人为被保险人购买医疗保险后,被保险人产生医疗费用可...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
事务机制ACID和CAP理论是数据管理和分布式系统中两个重要的概念,很不巧,这两个概念中都有相同的“C”代表 "Consistency" 一致性,但是实际上是完全不同的意义,下面是比较两个概...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
1. 前言本文主要讲解如何使用Linux命令行测试网站连接速度。网站速度可以对用户体验有很大的影响,如果你是一个web开发人员,你当然希望开发一个能让用户迅速打开的网站。怎...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
  在 Windows 10 安装系统过程中,提示设置新磁盘时,系统会询问你是想要使用MBR还是GPT分区。GPT是一种新的标准,并在逐渐取代MBR。  GPT带来了很多新特性,但MBR仍然拥有最...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
WordPress 5.0正式版发布以后,新的Gutenberg 编辑器(在WP5.0中准确地说应该叫block editor编辑器)给众多用户带来困惑,很简单的文字编辑操作,变得繁琐复杂,虽然用户对这个编辑器...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
时光荏苒,不知不觉已在体制内工作了十年。十年的青春韶光,可谓一个人一生中最美好的年华,而我的体制内十年,一直“躬耕”在基层。“躬耕”这个词,本来出自于诸葛亮的《出师表》“...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
点击添加图片描述(最多60个字)事业单位工资及其考点事业单位工作人员实行岗位绩效工资制度。岗位绩效工资由岗位工资、薪级工资、绩效工资和津贴补贴四部分组成,其中岗位工资...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
B站在小视频功能处提供了 API 接口,今天的任务爬取Bilibili视频~B 站视频网址:https://vc.bilibili.com/p/eden/rank#/?tab=全部 此次爬取视频,我们爬取前100个~我们做好前期...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
平时浏览网站的时候,您有没有发现,每个网站都是千篇一律?左上角logo、企业名,然后导航栏分类,接着就是各种跳转链接……毫无美感可言。 为什么不建议模板建站对于用...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
要想避免爆仓,首先要要学会合理控制仓位,因为只有合理控制了仓位,你才有稳定获利的机会,不然,你的帐户纵然有过赢利,到最后也会一败涂地。爆仓是投资者非常担心出现的一种情况,指的...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
市场上有许多可用的框架。其中一些更受欢迎,例如Spark,Hadoop,Hive和Storm。Presto在效用指数上得分很高,而Flink具有巨大的潜力。另外还有一些需要提及的其他内容,例如Samza,Impa...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
睡眠障碍一般和生活工作压力有很大关系,可通过心理疗法来缓解睡眠障碍。其实生活中的一些小妙招能让人们快速的提高睡眠质量。 1、面带微笑催眠平躺在床上全身心保持放松状态...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
【你的颈椎还好吗?试试这个动作自测你的颈椎是否健康】民生视角你知道吗,吞咽不畅、视力障碍……都可能是颈椎病的潜伏症状。双手向后背手,如果能在后背双手合十,说...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
要从架构和管理决策来看正如同我们在“区块链技术是什么(什么是区块链技术?)”一文中所述,区块链与传统数据库,从架构开始就是不同的,或者说其技术如何部署便是不同的。万维网(万维...【详细内容】
2019-11-24   爬虫  点击:(0)  评论:(0)  加入收藏
作为服务端,web容器是如何解析http报文的呢?本文以jetty和undertow容器为例,来解析web容器是如何处理http报文的。...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
概述Healthd是android4.4之后提出来的一种中介模型,该模型向下监听来自底层的电池事件,向上传递电池数据信息给Framework层的BatteryService用以计算电池电量相关状态信息,Batt...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
很多小伙伴肯定会遇到想复制数据到U盘,发现U盘有写入保护的情况 那么这种情况该如何解决呢?下面我们就来分享U盘保护错误的解决方法。 1、首先检查一下U盘表面的写入保护开关...【详细内容】
2019-11-27   爬虫  点击:(0)  评论:(0)  加入收藏
相信很多小伙伴都不喜欢别人用自己的电脑,毕竟有自己的隐私,而且更重要的是怕别人误操作删除或者搞坏。小编给大家分享一个方法,只使用一个U盘就能让别人没法动你的电脑,给电脑...【详细内容】
2019-10-30   爬虫  点击:(0)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条