多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
入坑知乎三年有余,数月前灵光闪现,做个网页爬虫,专爬知乎下的精华回答,作统计分析。 以下,即是此项目的分析结果,希望能从另一个角度呈现出不一样的知乎。 # 代码 "talk is cheap, show me the code!" --屁话少说,放码过来。心急的朋友可以直接戳链接看源码,用的是Python3: [https://github.com/SmileXie/zhihu_crawler](https://github.com/SmileXie/zhihu_crawler) # 算法简述 ### 1.爬虫算法 以[根话题的话题树](https://www.zhihu.com/topic/19776749/organize/entire)为启始,按广度优先遍历各子话题。话题的遍历深度为3。解析各话题下的精华回答。 ![](https://box.kancloud.cn/2016-05-29_574a961d1d4ef.jpg) 知乎的话题树.png ### 2.收集数量 目前收集的信息共计50539个精华回答。 ### 3.分析内容 * 精华回答的点赞数,答案长度等; * 答题用户的id,点赞数,地区,性别,学历,学校,专业等; # 统计结果 ### 1.匿名答主 50539篇精华回答中,有3308篇的回答者选择了匿名发布答案。 ![](https://box.kancloud.cn/2016-05-29_574a961d30b69.jpg) 精华回答答主匿名情况.png ### 2.答主性别 男15740,女5749.是否从一个侧面印证了知乎上程序员占了很大的比例. ![](https://box.kancloud.cn/2016-05-29_574a961d42428.jpg) 精华回答答主性别.png ### 3.答主受教育情况 按答主的所在(毕业)学校统计,TOP10的学校是: ![](https://box.kancloud.cn/2016-05-29_574a961d53467.jpg) 答主学校TOP10.png 可以看出,中国的顶尖高校对知乎的精华回答贡献颇多。 按答主所在的专业统计,TOP10专业是: ![](https://box.kancloud.cn/2016-05-29_574a961d64bfa.jpg) 答主专业TOP10.png 果然是程序猿的天堂。(上面的数据,我针对“计算机”和“金融”的数据做了处理,把“计算机”“计算机科学”“计算机科学与技术”合并为“计算机”,把“金融”和“金融学”合并为“金融”) ### 4.精华回答的赞同数 按精华回答所获得的赞同数落在的区间,做统计 ![](https://box.kancloud.cn/2016-05-29_574a961d766f2.jpg) 各精华回答获得的赞同数落在的区间.png | 赞同数区间 | 此区间内的精华回答数量 | | --- | --- | | 0~4999 | 46546 | | 5000~9999 | 2623 | | 10000~14999 | 713 | | 15000~19999 | 305 | | 20000~24999 | 154 | | 25000~29999 | 94 | | 30000~34999 | 44 | | 35000~39999 | 22 | | 40000~44999 | 16 | | 45000~49999 | 8 | | 50000~54999 | 4 | | 55000~59999 | 3 | | 60000~64999 | 3 | | 65000~69999 | 0 | | 70000~74999 | 2 | | 75000~79999 | 1 | | 80000~84999 | 0 | | 85000~89999 | 0 | | 90000~94999 | 1 | | 95000~99999 | 0 | 可见,大多数精华回答获得的赞同数是处于0~4999范围内的。 目前统计到的最高票回答是这篇:[《哪些素质很重要,却是读书学不来的》中肥肥猫的回答](https://www.zhihu.com/question/28626263/answer/41992632),共获得了91433个赞同。 ### 5.回答字数 如果按以下标准将精华回答按字数分类: | 字数 | 分类 | | --- | --- | | 0~99 | 短篇 | | 100~999 | 中篇 | | 1000~9999 | 长篇 | | 10000以上 | 超长篇 | 那么,精华回答的字数分布如下: ![](https://box.kancloud.cn/2016-05-29_574a961d8a344.jpg) 精华回答的字数分布.png 看来各位答主对没少在知乎上码字。长篇的数量甚至超越了短篇和中篇。 目前收集到的最长字数回答是:[《人究竟能抠到什么程度》中郭永年的回答](https://www.zhihu.com/question/31963067/answer/54079066),答主扬扬洒洒写了98904字,敢情是在知乎上写小说了啊。 # 后记 作为一个对Python和C都有使用的程序员,在开发的过程中不断地领略着这两种语言的巨大差异。 Python把对开发者友好做到了极致,牺牲了性能。 C把性能做到了极致,牺牲了对开发者的友好。 这个项目只用了500行Python,如果换作500行C,估计只能完成上述功能的1/10吧。 最后再贴一遍源码: [https://github.com/SmileXie/zhihu_crawler](https://github.com/SmileXie/zhihu_crawler)