Python爬取并简单分析鱼油数据
本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
本文转载至知乎ID:Charles(白露未晞)知乎个人专栏
下载W3Cschool手机App,0基础随时随地学编程>>戳此了解
导语
利用Python爬取并简单分析鱼C论坛的鱼油数据。因为不想影响论坛的正常运作,给论坛服务器带来不必要的压力,所以爬虫代码里写了很多sleep语句,花了大概一个星期的时间凑了40万条数据(然后数据清洗的时候发现大部分数据是无效的T_T)。因为数据都在相关文件里提供了,所以就不要自己重新爬了,因为论坛仿佛没有什么反爬措施,所以爬虫代码并没有什么学习价值,随便瞟一眼就行了。
OK,让我们愉快地开始吧~
相关文件
开发工具
Python版本:3.6.4
相关模块:
requests模块;
fake_useragent模块;
pyechart模块;
以及一些python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
原理简介
其实爬虫的文章我一般写的比较水,然后偶尔瞅了瞅别人的文章,发现基本是数据获取,清洗,最后可视化分析这个流程,于是打算稍微模仿一下,虽然我可能还是会写的比较随意and极其不专业。
数据获取:
这部分很简单,鱼C论坛每个鱼油的个人主页除了uid不同,其他都是一样的:
挨个请求每个鱼油个人主页的url,然后把返回的内容保存起来就可以了:
最后获得的数据大概这么多,一共40万条左右吧,虽然大部分是无效的。
数据清洗:
接下来我们从每个鱼油的个人主页中提取一些有用的数据,例如性别、生日、出生地、学历等内容,具体代码实现如下:
最后剩下的数据大概这么多:
他喵的这也太真实了吧,最后大概只剩下了1万多条数据,简直了。然后我去看了下,发现很多鱼油的主页是这样的:
还有很多uid是无效用户:
本来想重新爬的,后来感觉还得拖几天太麻烦了,算了,就这样吧,1万条数据也是数据啊,反正估计全爬完也没多少数据。
数据可视化分析:
首先,让我们来看看鱼C论坛鱼油们的男女比例吧:
Emmmm,原来论坛里还是有女生的,我一直以为是没有女生的。
OK,接下来我们来看看论坛里的鱼油学历分布情况吧:
竟然有将近200个博士,惊讶ing。
OK,接下来我们来看看论坛鱼油们的省份分布吧,这里只统计了国内的鱼油:
看了鱼C论坛的鱼油们来自五湖四海,当然在广东省的鱼油是最多的,目测论坛的坛主小甲鱼应该是广东人吧。
再接下来,我们来看看鱼C论坛鱼油的年龄分布吧:
估计论坛里的鱼油大部分还是90后的学生党吧,虽然90后大多应该已经毕业了。
最后,我们再来看看论坛里哪个鱼油比较土豪吧,也就是鱼币和C币最多的鱼油,统计结果如下图所示:
本来想再分析分析技术值最高的鱼油之类的,不过饭点到了,那就算了吧T_T。感兴趣的同学可以自己下载数据继续分析分析。
嗯,就这样吧,至少这类文章的写作步骤应该模仿对了,完整源代码和数据详见相关文件。
更多
代码在2018年9月14日前测试无误