什么是网络爬虫,网络爬虫有什么用?

news/2024/7/5 7:23:18

什么是网络爬虫,网络爬虫有什么用?

简单地说,就是把网页所展示数据通过非人工的手段获取下来。

现在是大数据时代,数据分析是解决各行各业相关问题重要的依据。数据分析结果的准确性有很大一部分取决于数据量是否足够大。如果是几十条数据,我们当然可以让人来一条条地复制粘贴。但就像我们前面说的,数据量要足够大分析出来的结果才是有意义的,所以我们需要的数据量通常比较大,往往不可能通过人力来完成数据采集的工作(因为效率低,而且容易出错,重复枯燥的工作也使人失去耐心)。这时候网络爬虫就起到非常重要的作用。

网络爬虫在数据采集方面有好的优势,比如采集速度快,比人来操作可能要快一千倍一万倍都不止;方便将获取的数据进行相关的清洗加工以及储存工作;代码可重复使用,或者说是“一劳永逸”。举个例子来体现一下:

有一天,你的老板让你做关于某个城市的近五年的天气变化的数据分析与展示来决定公司不同季节的衣服应该在什么时候开始铺货,打折促销等。经过思考,你觉得需要做以下的工作:

1、找到某个天气查询网站,找到所需城市的历史天气网页。

2、获取某个城市近五年的全部数据也就是365*5=1825条数据(每条数据包含天气状况、风力风向、温度湿度、PM2.5等)

3、将获取的数据进行清洗(也就是数据是否有重复,或者明显不符合实际情况的(比如温度数值显示为90°),将这些错误数据删除)

4、将数据保存成相关格式(比如Excel)

5、对数据进行相关的分析展示工作

前四步数据获取的工作而言,如果我们靠人力来赋值粘贴这些数据,看上去也才1825条,不是特别多,靠单身多年的手速应该可以搞一波。但是,这些网页通常是按月来分的,也就说每一页都只是某一年中某一个月(比如2018年8月)的数据,那你在复制粘贴的时候,还要点击切换网页12*5=60次。

你在重复的工作中,也许还会失去耐心,变得狂躁,进而变得麻木。网页上出现了某天的温度为90°这样非常严重的常识性错误数据,你都一并复制粘贴了;当你用好不容易将1825条数据复制粘贴到Excel中并反复确认已经保存成功了,这时候,你的老板一通电话对你说:“小x啊,搞错了,不是那个城市,是另外一个地方。你应该还没开始做吧?好好干,小伙子我是很看好你的!”这时候,你恨不得沿着电话线爬过去把老板打一顿,也忍不住开始感叹这种重复性高工作要是交给计算机来做该多好

如果这时候,你看了我其他文章,懂网络爬虫。别说一个城市了,就算是全国所有城市地区的天气数据都给你老板安排得明明白白。到时你就可以拿着一份漂亮的数据分析报告对老板说:“老板,我觉得你叫我去分析那个城市不行。我分析了全国所有城市几十万条数据,根据我们公司的实际情况我觉得这些城市更加符合我们公司的发展情况”。老板一听,立刻就觉得你这个小伙子确实不错,有能力踏实能干,值得培养,升职加薪年终奖就都有了。

而且网络爬虫,也不仅仅只是获取数据,有时候也能方便我们的生活,比如免费下载一些需要付费的视频歌曲(当然,我们还是要尊重版权,我绝对不提倡你这样做)。

最后,我希望以后不管你是从事什么行业的,都可以学一些程序设计方面的技术。学会一门程序设计语言(比如Python、Java,但我建议不是从事计算机行业的朋友学一学Python,以后我的博客也会有Python和Java相关教程),能让你的工作变得更加有效率,能让你的生活变得更加便捷。

原文地址https://blog.csdn.net/qq_29750277/article/details/82119274


http://lihuaxi.xjx100.cn/news/237182.html

相关文章

aws fargate_我如何在AWS Fargate上部署#100DaysOfCloud Twitter Bot

aws fargateAfter passing my last certification, I asked myself how much time I spent studying cloud computing.通过上一份认证后,我问自己自己花了多少时间研究云计算。 More than 100 days!超过100天! It also made me realize two things:这也…

玉蟾宫

题目链接:https://www.luogu.org/problemnew/show/P4147 题目背景 有一天,小猫rainbow和freda来到了湘西张家界的天门山玉蟾宫,玉蟾宫宫主蓝兔盛情地款待了它们,并赐予它们一片土地。 题目描述 这片土地被分成N*M个格子&#xff0…

EOS技术知识介绍

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 EOS 简介 EOS:EOS可以理解为Enterprise Operation System,即为商用分布式应用设计的一款区块链操作系统。EOS是EOS软件引入…

自学成才翁_作为一名自学成才的开发者从“我的旅程”中吸取的教训

自学成才翁The path of the self-taught developer is tough and filled with uncertainty. There is no straight line from newbie to career programmer. Because of this, I believe all self-taught developers have a unique story to tell.自学成才的开发者之路艰难而充…

虚拟机配置参数

标准参数:保证所有JVM的实现都可以支持-client设置Hotspot client jvm,64位jdk会忽略该参数并设置-server-Dpropertyvalue用于设置系统属性,如果value中有空格,则需要设置-Dproperty"value value"-server选择Hotspot Se…

网站重构?

网站重构:在不改变外部行为的前提下,简化结构、添加可读性,而在网站前端保持一致的行为。也就是说是在不改变 UI 的情况下,对网站进行优化,在扩展的同时保持一致的 UI。对于传统的网站来说重构通常是:1. 表…

分布式系统的时间顺序

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 分布式系统的时间顺序 区块链被认为是分布式的系统,分布式系统中由于多节点,通讯、物理位置等的问题,各节点间时…

helm部署仓库中没有的包_Kubernetes的Helm软件包管理器简介

helm部署仓库中没有的包Before we dive into the Helm package manager, Im going to explain some key concepts to deploying any application anywhere. Ill also give you a brief introduction to Kubernetes terminology.在深入研究Helm软件包管理器之前 ,我将…