web scraper 抓取数据并作简单数据分析

其实 web scraper 说到底就是那点儿东西,全部的网站都是大同小异,可是都还不一样。这也是好多同窗老是遇到问题的缘由。由于没有统一的模板可用,须要理解了 web scraper 的原理而且对目标网站加以分析才能够。web

今天再介绍一篇关于 web scraper 抓取数据的文章,除了 web scraper 的使用方式外,还包括一些简单的数据处理和分析。都是基础的不能再基础了。选择这个网站一来是由于做为一个开发者在上面买了很多课,还有个缘由就是它的专栏也比较有特色,须要先滚动加载,而后再点击按钮加载。数据库

开始正式的数据抓取工做以前,先来看一下个人成果,我把抓取到的90多个专栏的订阅数和销售总价作了一个排序,而后把 TOP 10 拿出来作了一个柱状图出来。ide

web scraper 抓取数据并作简单数据分析

抓取数据

今天要抓的这个网站是一个 IT 知识付费社区,极客时间,应该互联网圈的大多数同窗都据说过,我还在上面买了 9 门课,虽然没怎么看过。学习

极客时间的首页会列出全部网课,和简书首页的加载方式同样,都是先滚动下拉加载,以后变为点击加载更多按钮加载更多。这是一种典型网站加载方式,有好多的网站都是两种方式结合的。这就给咱们用 web scraper 抓数据制造了必定的麻烦,不过也很好解决。大数据

一、建立 sitemap,设置 start url 为 https://time.geekbang.org/网站

二、建立滚动加载的 Selector,这只是个辅助,帮助咱们把页面加载到出现点击加载更多按钮出现,设置以下,注意类型选择 Element scroll down,选择整个课程列表区域做为 Element。url

web scraper 抓取数据并作简单数据分析

三、建立点击加载更多按钮的 Selector,这个才是真正要抓取内容的 Selector。以后会在它下面建立子选择器。建立以前,须要下拉记载页面,直到出现加载更多按钮。3d

web scraper 抓取数据并作简单数据分析

首先选择元素类型为 Element click 。code

Selector 选择整个课程列表,并设置为 Multiple。blog

Click 选择加载更多按钮,这里须要注意一点,以前的文章里也提到过,这个按钮没办法直接点击选中,由于点击后会触发页面加载动做,因此要勾选 Enable key events,而后按 S 键,来选中这个按钮。

Click type 设置为 Click more 类型。

Click element uniqueness 设置 unique CSS Selector。

web scraper 抓取数据并作简单数据分析

四、进入上一步建立的 Selector ,建立子选择器,用来抓取最终须要的内容。

web scraper 抓取数据并作简单数据分析

五、最后运行抓取就能够啦。

数据清洗

这里只是很简单的演示,真正的大数据量的数据清洗工做要费力耗时的多。并且也远不止一个 Excel 能完成的,还须要程序代码的配合,大多数时候还会用到数据库,固然对于比较简单的数据或者没有开发经验的同窗来讲,用 Excel 也就是最简单省事的选择了。

打开 csv 文件后,第一列信息是 web scraper 自动生成的,直接删掉便可。不知道什么缘由,有几条重复数据,第一步,先把重复项去掉,进入 Excel 「数据」选项卡,点击删除重复项便可。

第二步,因为抓下来的课时和报名人数在同一个元素下,没办法在 web scraper 直接放到两个列,因此只能到 Excel 中处理。个人操做思路是这样的,先复制一列出来,而后利用内容替换的方式,将其中一列的报名人数替换成空字符,替换的表达式为 讲 | *人已学习,这样此列就变成了课时列。将另一列的课时替换为空字符串,先替换 x讲,替换内容为*讲 |,而后再替换人已学习, 那么这列就变成了报名人数列。价格就只保留当前价格,删掉无用列,而且处理掉限时、拼团、¥这些无用字符。

数据分析

由于这里抓取的数据比较简单,也没期望能分析出什么结果。一共90几门课,也就是分析分析哪门课最受欢迎、价格最高。直接在 Excel 里排个序就行了。而后计算一下几门课程的总价格。

固然真正的商业数据分析不只仅是一个 Excel 画个图就搞定的事儿。也不是弄两个柱状图就能够的了,通常都须要多个维度、数据关联分析、深度挖掘等。

在 Excel 中作了两个柱状图,分别统计订阅人数前十名和总销售金额的前十名。下面是最后的呈现效果。

web scraper 抓取数据并作简单数据分析

若是不想用 Excel, 有一些在线的图表制做网站也能够将 Excel 上传作一些基本的图表,可是灵活性稍微差一点。我用了「图表秀(https://www.tubiaoxiu.com/)」,能够将 Excel 上传,并且还能对 Excel 进行编辑,能够删除列、删除行等操做,这也是相对其余在线图表平台的优点,好比百度的「图说」。下面是我作的一个简单的柱状图,除了柱状图外还支持好多种图表。

web scraper 抓取数据并作简单数据分析

以上仅仅是一个业余选手作数据抓取和分析的过程,请酌情参考。

相关文章
相关标签/搜索