爬取QQ空间3000万用户,玩玩大数据分析
这是我近期使用C#写的一个QQ空间蜘蛛网爬虫程序。程序断断续续的运行了两周,目前总共爬了3000万QQ数据,其中有300万包含用户(QQ号,昵称,空间名称,头像,最新一条说说内容,最新说说的发表时间,空间简介,性别,生日,所在省份,城市)的详细数据。
目前已经爬到我的第7圈好友(depth=7)共3000万数据。
爬虫主程序运行界面:
爬虫程序设计:
大致设计思路是模仿工厂的生产车间,使用三大独立循环线程组(GetWaitList,CrawlerQQInfos,SaveData)。
详细设计图:
再看看,我根据这份数据生成的一些有趣的统计图吧!
1、大家一般都在啥时候发说说呢?
从图中看出一天最冷门的时候是凌晨4点,这时全国正在睡觉的人最多。 大家最亢奋的是晚上10点到11点,人们都喜欢睡前看看别人的空间,发条说说。中午12点左右也有一波小高峰。
2、中国人都喜欢在几月生小孩呢?
从图中可看出1月和10月出生的人最多,4月的最少。总体来说上半年的出生率比下半年的低。分析可得,1月多是因为很多人填的是默认的1月1号。4月少,是因为中国人不喜欢4这个数字。10月出生率最高,是因为那时天气不冷不热,秋收后也不是太忙了的原因。(所以我是11月11日?注孤独)。
3、这是我目前爬取的数据人群地区分布
4、数据人群的年龄分布。
上两张图,整好和我的信息相吻合。我是湖南人,在江苏读的书,而湖南大部分人都在广东打工。所以地区分布中,这三个省整好排在前四名当中。而我又是1990年出生的,对应年龄分布图1990年的用户最多。从目前的数据来看,无论是分布地区以及年龄阶段与我的关联还非常大,随着数据量的不断增加这种关联会逐渐变小,统计图也会逐渐接近全国用户的真实情况。(这都是博主的话啊,我是河南人,不过人群年龄应该是差不多的,90和91年的比较多。)
点评下:
你说我91年的也不能接触的都是81年的人吧?肯定是同龄的人比较多,其实如果博主能分析下在TX上面投资多少钱,根据用户秀恩爱的程度,这样的数据,我觉得还听可以的。(吐槽下。)
5、数据人群性别分布
6、下面系列图是根据一些“关键字”在说说中出现的频率统计出来的,相当有意思。
单个用户的行为是很难看出规律的,大数据的意义在于它会不断矫正那个平衡点,从而得出反应宏观现象最真实的情况。数据量越大,平衡点动荡的幅度便越小。进而能够根据当前的数据趋势预测后续的发展,为决策提供有力依据
6.1 图说股市。
现在我们拥有海量的互联网社交数据,如QQ的说说,sina的微博数据。我觉得这些数据拥有惊人的利用价值,这非常值得我们去研究,去挖掘。我想,用它们来做一些股市或者其它方面的分析预测是可行的,准确度应该也是非常高的。
将股票中的关键字做海量数据分析,比如会得出当日讨论股票热度排行榜。进而能得到海量讨论股票的用户,再通过市场的实际反馈找出股票上涨及下跌的正相关因子,再对这些海量数据进行分析计算得出最靠谱股票推荐大神排行榜。对这些用户分级,分优先度及抓取密度来拿数据。用这些数据分析出哪些是靠谱的股票肯定靠谱!
6.2 群众讨论最多的明星排行榜,还是很靠谱的。(我爱汪峰哥,我也爱Jay! —信仰在空中飘扬)
插播汪峰头条:素不相识,光听新闻的片面之词就断下结论,那是完整的真相吗?背后的故事又有谁了解多少?实在反感那些破口大骂的,更是可恶一些媒体就事三番五次的戏谑。
祝峰哥幸福,我很喜欢你的歌!
6.3 最为用户喜爱的手机品牌
6.4 人们最喜欢谈论的互联网公司,阿里之所以这么低估计是大家都喜欢叫它淘宝或者天猫吧。
6.5 QQ空间中讨论的最为频繁的社交平台排行榜。
6.6 生活的统计图
爱>恨; 开心>伤心; 笑声>叹气声; 吃货很多
谁特么说中国不幸福了,这满满的都是正能量数据啊。
好了,其实还可以做很多其它的分析。如果大家有什么有趣的数据分析想知道的,那就给我留言吧。
技术不多说了,程序不难,多线程数据库操作却是把我搞苦了。还好,现在程序差不多稳定了。过程也是很有意思的,有空我再写个程序升级过程中的那些趣事吧。我觉得一个美妙的程序一定是高度模拟现实的,就像飞机模仿蜻蜓,雷达模仿蝙蝠一样。这次的程序设计就是模拟的工厂的生产线。
*投稿:妇科圣手,原文地址: http://www.cnblogs.com/marktoy/p/4546217.html