专栏名称: Python新手营
数据,算法,人工智能
目录
相关文章推荐
爱可可-爱生活  ·  【[68星] Generative ... ·  昨天  
爱可可-爱生活  ·  【DeepSeek如何训练最前沿的推理模型】 ... ·  昨天  
爱可可-爱生活  ·  【[86星]Awesome MCP ... ·  3 天前  
宝玉xp  ·  据说百科上的 AI 生成的内容 ... ·  3 天前  
51好读  ›  专栏  ›  Python新手营

爬取知乎60万用户信息之后的简单分析

Python新手营  · 公众号  · AI  · 2017-04-16 19:17

正文

我  相  信  这  么  优秀  的  你 

 已  经  置 顶  了  我

来源|Brian 选文|小象  

禁止二次转载


项目源码 GitHub - webporter  https://github.com/brianway/webporter

(点击文末阅读原文可查看)


动机


在知乎上看到有个叫 @路人甲 的大神每隔一段时间就爬爬豆瓣/B站等等网站,做了很多有意思的分析,加上之前因为实验室项目接触过 Nutch,浅尝辄止了,所以一直想好好玩玩爬虫。


网上 Python 的爬虫教程很多,而自己的主语言是 Java,本着宣传 Java,以练促学的目的,我使用 Java 爬取了知乎 60 万用户信息,主要想看看知乎上妹子多不多啊/是不是都是基佬啊,标配常青藤/年薪百万是不是真的啊,等等。


思路


为了保证数据的质量,避免爬到一些僵尸号什么的,我选择爬取关注列表而非粉丝列表。我随机挑选了一位粉丝过千的优秀回答者作为起始,爬取他的关注列表,再对列表中的每个人爬取其关注列表,以此类推……


下载了大概 7 个小时,爬了 40 多万用户的关注列表,拿到了 10G 的数据,如图所示:



理论上有 800 多万用户,可惜有很多重复的,去重后将数据导入 Elasticsearch,得到 60+ 万用户数据:



数据验证

接下来简单看看下载下来的数据靠不靠谱,随手在知乎和我的 Kibana 分别搜了下轮子哥 @vczh



可以看到,连同名的都搜出来是一样的,数据没啥问题。


然后使用 Elastichearch 的聚合查询配合 Kibana 对数据进行可视化展示。

本文主要放技术分析这一块,具体数据情况可以点击阅读原文。源码链接也能在原文内找到[GitHub - webporter]: https://github.com/brianway/webporter