这次抓取了万的用户数据,数据分析结果如下:
从结果可以看到,知乎的男女分布为61.7和8.%,对于一个知识型、问答型的社区来说,已经很优秀了,女生再多一点的话,知乎差不多都可以做婚恋社区了,开个玩笑。
对了,《在爬了万QQ用户数据,挖出了花千骨*的QQ号》一文中,我们可以看到,除了没有填写姓名的用户外,QQ空间的男女比例为56%和%。这个数据可以作为一个参考。且不论女性多少,但看男性用户,知乎只比QQ空间少了5%.
从职业分布来看,知乎用户中,从事互联网行业的用户是最多的。传统行业从业者相对较少,这和知乎的定位也有很大的关系。
北上广深仍然是用户人群最多的城市。值得注意的是,杭州用户比广州用户还多,这说明杭州的互联网行业发展迅猛,有阿里巴巴的缘故?
看懂啦?还是技术宅比较多,尤其是程序员。结合男女比例来看,知乎做到这样的数据非常不易,从事互联网行业的人较多,而这群人里面,还有8.%是妹子哦。对了,女性分布为什么是8.的比例?三八……
下面是技术正文:
开发前的准备安装Linux系统(Ubuntu14.04),在VMWar虚拟机下安装一个Ubuntu;
安装PHP5.6或以上版本;
安装curl、pcntl扩展。
使用PHP的curl扩展抓取页面数据PHP的curl扩展是PHP支持的允许你与各种服务器使用各种类型的协议进行连接和通信的库。
本程序是抓取知乎的用户数据,要能访问用户个人页面,需要用户登录后的才能访问。当我们在浏览器的页面中点击一个用户头像链接进入用户个人中心页面的时候,之所以能够看到用户的信息,是因为在点击链接的时候,浏览器帮你将本地的cooki带上一齐提交到新的页面,所以你就能进入到用户的个人中心页面。因此实现访问个人页面之前需要先获得用户的cooki信息,然后在每次curl请求的时候带上cooki信息。在获取cooki信息方面,我是用了自己的cooki,在页面中可以看到自己的cooki信息:
右键点击可放大一个个地复制,以”__utma=?;__utmb=?;”这样的形式组成一个cooki字符串。接下来就可以使用该cooki字符串来发送请求。
初始的示例:
$url=
)
);$contxt=stram_contxt_crat($contxt_options);$img=fil_gt_contnts(