打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
爬取 100 万条 StackOverflow 问答后,我得出的结论
爬虫的具体操作流程是,打开 StackOverflow 主页,在 questions 页面下选择按 vote 排序,爬取前 20000 页,每页将问题数量设置为 50,共 100 万条,实际上用数据库去重后只有 999654 条问答信息。
他分别对votes、answers、views进行了分析,咱们来看一下他的分析结果吧。
一、votes 分析
降序排列了 votes 数,生成折线图
2k 后的问题的 votes 数基本上就已经在 400 以下了,接着后面的就基本上是贴地飞行了。
votes 数最多 : Why is it faster to process a sorted array than an unsorted array?
votes 数的连续分布情况:
可见最多的还是集中在 1-2K 之间,从 6k 开始基本上就断层了
descriptioncount
votes >= 5001630
votes >= 4002325
votes >= 3003782
votes >= 2007062
votes >= 10019781
如果以 100 为分界线的话,会得到这样的一个饼图。
大于 100 的连 %2 都不到。
再来看看底层的数据。
descriptioncount
1 211804
6 430935
11 136647
16 64541
votes 843927
可见 votes 小于 20 的,数量高达 84m。看看总体的比例吧。
二、answer 分析
降序排列了 answers 数,生成折线图。
很明显 3k 之后的 answers 数基本上就小于 20 了。
answers 数最多: What is the best comment in source code you have ever encountered?
answer数的连续分布情况。
150 后也就断层了,实际上能达到这样的回答数极少。
具体数据。
descriptioncount
answers >= 5218059
answers >= 1034500
answers >= 203808
answers >= 30968
大于 30 的确实少的可怜,看看总体情况。
三、views 分析
降序排列了 views 数,生成折线图。
最高达到了 4.5m,100000 以后的基本上就不足 28000 了。
views 数最多: How to undo last commit(s) in Git?
views 数的连续分布情况。
具体数据。
descriptioncount
views >= 5000486466
views >= 10000315576
views >= 20000171873
views >= 5000059363
views >= 10000022224
views >= 2000007030
大部分问答的 views 数还是集中在 20000 以内。还是得看看总体分布。
四、综合分析
再看看 votes,views,answers 三者的散点图对应情况。
votes - views
votes - answers
views - answers
views-answers散点图
总的来说,这三者对应关系类似于一个金字塔。三个图基本上都是左下角靠近原点的区域被填满,也就是说绝对大部分的问题的 votes,answers 和 views 都是属于最下层的。高质量活跃的问题是处于金字塔顶端的。三者的最高数好像也没特别明显的对应关系,且三者的最高数都不是同一个问题。
根据所有问题的 tags 提取出总量前 200 的关键词(前 50 条如下),java 排在第 2 名。
('c#', 94614),('java', 93244),('javascript', 76722),('android', 69321),('python', 62502),('c++', 58173),('php', 42596),('ios', 37773),('jquery', 37405),('.net', 36180),('html', 28536),('css', 26174),('c', 24699),('objective-c', 23253),('iphone', 22171),('ruby-on-rails', 20143),('sql', 19171),('asp.net', 18060),('mysql', 17559),('ruby', 16397),('r', 15670),('git', 13139),('linux', 13080),('asp.net-mvc', 12857),('angularjs', 12606),('sql-server', 12473),('node.js', 12212),('django', 11576),('arrays', 11006),('algorithm', 10959),('wpf', 10631),('performance', 10619),('xcode', 10613),('string', 10426),('windows', 10132),('eclipse', 10117),('scala', 9942),('regex', 9685),('multithreading', 9601),('json', 9266),('swift', 8950),('c++11', 8939),('haskell', 8823),('osx', 8159),('visual-studio', 8140),('html5', 7627),('database', 7567),('xml', 7478),('spring', 7464),('unit-testing', 7253),('bash', 6825)
这样看好像不太直观,所以就把它根据词频生成了词云。
传送门地址:https://github.com/chenjiandongx/stackoverflow-spider
作者:chenjiandongx
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Newest 'indoor
(569) What answers on Quora have the most upvotes?
栈溢出
20171123 ECA新闻:追踪与追溯:EU发布新问答
StackOverflow 上关于JS 的热门问答
Word问答:Office Word制作完表格后,怎样让它按照降幂排序,并算出平均数?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服