两周前,做的一个项目需要模拟一批用户评价数据,如果想让数据看着真实点,那就得使用随机的用户昵称和头像啊。要是头像或者昵称全都差不多,那别人一看就看出来这是做的数据了。
于是乎我就写了个从我QQ空间开始的蜘蛛网式的爬虫程序,程序断断续续的运行了两周。总共爬到了腾讯3000万QQ数据,其中有300万包含用户(QQ号,昵称,空间名称,会员级别,头像,最新一条说说内容,最新说说的发表时间,空间简介,性别,生日,所在省份,城市,婚姻状况)的详细数据。
目前已经爬到我的第7圈好友(depth=7)共3000万数据,目前的瓶颈在家里的网速和电脑的配置上。 最快的时候爬取速度达到一天500W新Q数据。
没图,我说个毛线啊!
目前数据量为2G左右。
再看看,我根据这份数据生成的一些有趣的统计图(数据量太大了一次加载到内存中直接报内存不够了,所以下面的统计数据只取了depth值小数据较完整约80W的数据):
内存已经爆了,不能怪我。 谁赞助台服务器吧~~
大家一般都在啥时候发说说呢?
从图中看出一天最冷门的时候是凌晨4点,这时全国正在睡觉的人最多。 大家最亢奋的是晚上10点到11点,人们都喜欢睡前看看别人的空间,发条说说。中午12点左右也有一波小高峰
一会我再统计张中国人习惯几点起床,几点吃饭,几点睡觉的图吧
中国人都喜欢在几月生小孩呢?
最热门的是1月份和10月份,最冷门的是4月份。10月份生小孩的多好理解,一年忙差不多了,天气也不冷不热正是生小孩的好时候。 但1月份最高且和2月落差很大有点不好理解,那么冷的天生不怕冻吗? 我估计是1月份也快过年了,以前没聚一起的好不容易聚一起了,就容易冲动,冲动就啪啪啪。 4月份生日的最少也好理解,中国人不喜欢4这个数字呗。 大数据有意思吧!! 我觉得太好玩了,后面还有很多呢。
这是我目前爬取的用户所在地分布
你能猜出我是哪的了吗?前四名分别为:广东,湖南,四川,江苏。 没错,我就是湖南的! 湖南人在广东打工的超级多,这也能理解为什么广东排名第一了。江苏是我上学的地方,有点琢磨不透的是四川和我非情非故的居然排第3名,我的朋友们,你们是谁播的种?站出来! 还有一种可能,四川人交际能力全国第一,我平时在重庆小面吃饭,四川人确实特别,说话语速那个快啊,声调那个高啊。受不了!
数据人群的年龄分布
一不小心就暴漏了我的年龄,没错。我就是那个最高值的1990年;从目前的数据来看,无论是分布地区以及年龄阶段与我的关联还非常大,随着数据量的不断增加这种关联会逐渐变小,统计图也会逐渐接近全国用户的真实情况。真想弄几台服务器分布式搞起,估计一周就能爬上亿的简单数据。 单靠我的笔记本和家里超烂的网速达到这个目标还很远。