首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大数据爬虫

从大数据的百科介绍上看到,大数据想要成为信息资产,需要有两步,一是数据怎么来,二是数据处理。

数据怎么来:

在数据怎么来这个问题上,数据挖掘无疑是很多公司或者个人的首选,毕竟大部分公司或者个人是没有能力产生这么多数据的,只能是挖掘互联网上的相关数据。

网络爬虫是Python的传统强势领域,最流行的爬虫框架Scrapy,HTTP工具包urlib2,HTML解析工具beautifulsoup,XML解析器lxml,等等,都是能够独当一面的类库。

当然,网络爬虫并不仅仅只是打开网页,解析HTML怎么简单。高效的爬虫要能够支持大量灵活的并发操作,常常要能够同时几千甚至上万个网页同时抓取,传统的线程池方式资源浪费比较大,线程数上千之后系统资源基本上就全浪费在线程调度上了。

Python由于能够很好的支持协程(Coroutine)操作,基于此发展起来很多并发库,如Gevent,Eventlet,还有Celery之类的分布式任务框架。被认为是比AMQP更高效的ZeroMQ也是最早就提供了Python版本。有了对高并发的支持,网络爬虫才真正可以达到大数据规模。

数据处理:

有了大数据,那么也需要处理,才能找到适合自己的数据。而在数据处理方向,Python也是数据科学家最喜欢的语言之一,这是因为Python本身就是一门工程性语言,数据科学家用Python实现的算法,可以直接用在产品中,这对于大数据初创公司节省成本是非常有帮助的。

正是因为这些原因,才让python语言成为很多公司处理大数据的首选。加之python本身具有简单、易学、库多等原因,让越来越多的人选择转行python开发。

自从2004年以后,python的使用率呈线性增长。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。

数据就是资产。大数据工程师是现在十分火热、高薪的职位。做大数据开发和分析不仅要用到Java, Python也是较重要的语言。.

目前在不少大数据团队中,数据分析和数据挖掘工程师通常都有明确的分工,数据采集往往并不是数据分析和挖掘工程师的任务,通常做爬虫的是大数据应用开发程序员或者是数据采集工程师(使用爬虫工具)的工作任务。但是对于数据分析工程师来说,掌握爬虫技术也是一个比较普遍的现象,原因有以下几点:

第一:数据分析师往往都会使用Python,而爬虫是Python比较擅长的开发内容。不少数据分析师在学习Python开发的时候都做过爬虫开发,其实不少Python程序员都会使用Python做爬虫,这是学习Python比较常见的实验。

第二:方便。不少数据分析工程师在学习的时候都会自己找数据,而编写爬虫是找数据比较方便的方式,所以很多数据分析工程师往往都会写爬虫。我在早期学数据分析的时候就是自己写爬虫,这是一个比较普遍的情况。

第三:任务需要。现在不少团队针对小型分析任务往往会交给一两个人来完成,这个时候往往既要收集数据、分析数据,还需要呈现数据,这种情况下就必须掌握爬虫技术了。这种情况在大数据分析领域是比较常见的,当然也取决于项目的大小。看一个使用Numpy和Matplotlib做数据分析呈现的小例子: 从大数据的百科介绍上看到,大数据想要成为信息资产,需要有两步,一是数据怎么来,二是数据处理。

数据怎么来:

在数据怎么来这个问题上,数据挖掘无疑是很多公司或者个人的首选,毕竟大部分公司或者个人是没有能力产生这么多数据的,只能是挖掘互联网上的相关数据。

网络爬虫是Python的传统强势领域,最流行的爬虫框架Scrapy,HTTP工具包urlib2,HTML解析工具beautifulsoup,XML解析器lxml,等等,都是能够独当一面的类库。

当然,网络爬虫并不仅仅只是打开网页,解析HTML怎么简单。高效的爬虫要能够支持大量灵活的并发操作,常常要能够同时几千甚至上万个网页同时抓取,传统的线程池方式资源浪费比较大,线程数上千之后系统资源基本上就全浪费在线程调度上了。

Python由于能够很好的支持协程(Coroutine)操作,基于此发展起来很多并发库,如Gevent,Eventlet,还有Celery之类的分布式任务框架。被认为是比AMQP更高效的ZeroMQ也是最早就提供了Python版本。有了对高并发的支持,网络爬虫才真正可以达到大数据规模。

数据处理:

有了大数据,那么也需要处理,才能找到适合自己的数据。而在数据处理方向,Python也是数据科学家最喜欢的语言之一,这是因为Python本身就是一门工程性语言,数据科学家用Python实现的算法,可以直接用在产品中,这对于大数据初创公司节省成本是非常有帮助的。

正是因为这些原因,才让python语言成为很多公司处理大数据的首选。加之python本身具有简单、易学、库多等原因,让越来越多的人选择转行python开发。

自从2004年以后,python的使用率呈线性增长。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。

数据就是资产。大数据工程师是现在十分火热、高薪的职位。做大数据开发和分析不仅要用到Java, Python也是较重要的语言。.

目前在不少大数据团队中,数据分析和数据挖掘工程师通常都有明确的分工,数据采集往往并不是数据分析和挖掘工程师的任务,通常做爬虫的是大数据应用开发程序员或者是数据采集工程师(使用爬虫工具)的工作任务。但是对于数据分析工程师来说,掌握爬虫技术也是一个比较普遍的现象,原因有以下几点:

第一:数据分析师往往都会使用Python,而爬虫是Python比较擅长的开发内容。不少数据分析师在学习Python开发的时候都做过爬虫开发,其实不少Python程序员都会使用Python做爬虫,这是学习Python比较常见的实验。

第二:方便。不少数据分析工程师在学习的时候都会自己找数据,而编写爬虫是找数据比较方便的方式,所以很多数据分析工程师往往都会写爬虫。我在早期学数据分析的时候就是自己写爬虫,这是一个比较普遍的情况。

第三:任务需要。现在不少团队针对小型分析任务往往会交给一两个人来完成,这个时候往往既要收集数据、分析数据,还需要呈现数据,这种情况下就必须掌握爬虫技术了。这种情况在大数据分析领域是比较常见的,当然也取决于项目的大小。看一个使用Numpy和Matplotlib做数据分析呈现的小例子:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230222A01R8D00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券