一个完整的python数据分析流程是怎样的?使用python从网站抓取数据,将数据保存到SQLite数据库中,然后进行数据清洗,最后对数据进行可视化分析。但是熟悉的应该都知道,python爬取虽然简单,但是分析起来却非常困难。SQL语句,Pandas和Matplotlib很繁琐,一般人都不知道。于是想到了一种更简单的数据分析方式,就是python爬取+BI分析。什么是BI我就不用多介绍了。Python强大的数据采集能力,结合AgileBI简单快速的数据可视化操作,分析效果一定很赞!那我们就来看看《人均985,年薪知乎百万知乎背后的秘密是什么?话不多说,我们开始爬!首先,我们要什么数据?知乎用户的学校和企业首当其冲我想看看这些人是不是编辑还是真的哈哈哈。二是性别,职业,地理位置,活跃度等等,统统捡起来。2,知乎现在的爬取过程是用https的请求和数据加密,不过问题不大,重要的是网页数据发生了变化,请求时后台会对爬虫做一些判断,所以每次请求总是需要加一个请求头,如尽量接近浏览器的要求,拿到列表页的源码后,可以从中得到每个问题的链接:每个页面有20个问题,所以可以得到20个问题的链接,然后你可以处理每个问题:y你可以实现这一步,剩下的就是循环、判断和一些细节。代码最后部分如下:importrequestsimportpandasaspdimporttimeheaders={'authorization':'',#这里填写你自己的认证信息'User-Agent':''#这里填写你浏览器的User-Agent}user_data=[]defget_user_data(page):foriinrange(page):#pageturningurl='https://www.zhihu.com/api/v4/members/excited-vczh/followees?include=data%5B*%5D.answer_count%2Carticles_count%2Cgender%2Cfollower_count%2Cis_followed%2Cis_following%2Cbadge%5B%3F(type%3Dbest_answerer)%5D.topics&offset={}&limit=20'.format(i*20)response=requests.get(url,headers=headers)。json()['data']user_data.extend(response)#添加响应数据到user_dataprint('抓取页面%s'%str(i+1))time.sleep(1)#设置抓取网页的时间间隔是1秒if__name__=='__main__':get_user_data(10)df=pd.DataFrame.from_dict(user_data)#将数据保存到字典中df.to_csv('zhihu.csv',encoding='utf_8_sig')#保存到用户名为zhihu的csv文件,encoding='utf_8_sig'参数是为了解决打印中文乱码问题(df)更多源码见文末!在Python代码中,我没有使用线程池,而是采用启动10个main()方法进行爬取,即10个进程,历时4小时,爬取了57w+数据。3、用BI做数据可视化分析既然已经到了最后一步,开始用BI做数据可视化了,揭秘知乎的时候到了。市场上有很多种BI工具。国外的Tableau和国内的FineBI都是BI领域的佼佼者。不过早就听说Tableau适合基础数据分析师,对小白不太友好。另外前天偶然看到了IDC的报告,发现帆软的市场份额是第一。为了避免返工,我选择了FineBI这个敏捷工具,事实证明我的选择是对的。首先在官网下载FineBI。虽然是企业级数据分析平台,但对个人永久免费。文末为大家准备了下载链接~然后直接通过FineBI提供的数据配置终端功能添加SQL数据集(或者直接添加表也行),查看验证数据是否正确刚刚抓取并存储到数据库中,实际上已经成功存储到MySQL中了。忘了说了,FineBI的一大特色就是自助分析。什么是自助服务分析?就是说我可以自己拖拽数据,可以和Matplotlib一样的效果。大家可能还会想到Excel,但是一般情况下,数据几万多行,Excel基本无能为力,很卡。但是,FineBI仍然可以流畅地处理大数据,效率可能要高出几十倍、几百倍。同时,VBA的一个致命弱点是它只能基于excel内部进行自动化,除此之外别无他法。写这篇文章之前,我对房价和销量进行了分析,特意做成动图供大家参考:4.知乎的数据可视化FineBI的dashboard可以自行拖拽调整组件位置,有多种类型的直方图、饼图、雷达图、数据可视化就是这么简单,只有你想不到,没有你做不到。1、哪个城市的知乎用户最多?从词云图可以看出,城市越繁华,知乎用户越多(文字越大,占比越大)。所以大家也可以看到,以北上广深四个一线城市为中心,其次是新一线城市。换句话说:知道知乎的人大多在一线城市或者新一线城市。给个具体的排名吧:杭州第三。果然,互联网的发源地之一不是吹牛的地方。阿里网易起了不小的作用。你为什么这么说?看到职业就明白了。2.他们都属于哪些学校?你看,你看,这学历真高。谁说人均985只是吹牛?但这并不奇怪,知乎的主要关注点是高级知识分子的聚集地,而学生们玩手机的时间比上班族多。分析完学校,我们就要看看各高校玩知乎的男女比例:不用我说你也能猜到,蓝色代表男生,女生不是逛街就是读书,鞠躬他们的脑袋肯定是个玩手机的男生哈哈哈(虽然我也是男的)。下面我们来看看各地区有哪些高校是知乎的重度用户。颜色越深,学校的知乎用户越多:别说了,知乎人均985是实锤。我流下了羡慕的泪水。请问同学,你是怎么兼顾玩和学的?如果你教我,我的高考可能会更接近清华的录取分数线……3。从知乎的职业比例中剔除学生后,我们发现知乎上的人……最多的是产品经理。这是近几年最火的专业,可是你的文书都写了?要求是怎么画的?对知乎的页面交互不满意?否则,你为什么不去上班?可以看出,除了一些互联网公司的常见职位外,教师和律师在知乎用户中也占有很大比重。我们再用一张热图观察一下知乎主流职业(前四)在各个地区的分布情况。颜色越深,那个职业的人越多:总结,我分析了这么多,不是说你知道用户是什么样的,而是你要说,如果你要做数据分析,FineBI是确实是一个非常有用的工具,无论是对个人还是对企业。当然以上只是FineBI的冰山一角,更多的东西还需要大家自己去探索。
