MENU

爬取知乎用户数据

August 20, 2017 • Read: 585 • Spring

最近一直想写个爬虫项目,刷知乎的时候看见很多知乎用户爬虫的文章,而且都放了GitHub地址;不过大都是代码量比稍大的项目,看那一大片一大片的python代码有点晕。直到昨天发现了一个相当简洁的爬虫项目,四个文件加起来大概四五百行代码。不用cookie、不用MySQL,直接将用户信息JSON存到csv,相当简单粗暴。自己写代码的事可以先放一放了,直接站在巨人的肩膀上吧(直接clone下来跑)。

目前(2017年8月),知乎已经有8400万+注册用户,1700万+问题,6300万+回答;可以看出大部分都是像我这样的小透明用户,甚至有很大一部分是三无用户,把所有用户都爬下来几乎是不可能的。爬取思路都是将一个或者多个大V用户作为起点,读取大V的关注列表,然后读取每个被关注用户的关注列表,像这样一直爬下去直到不想爬了为止;一定要使用关注列表,而不是粉丝列表,这样能更好的避开小透明用户而更大程度上优先爬取影响力大的用户。

设置好代理,开始爬数据;机器还算给力,运行了一段时间各项指标都很平稳;就是代理不太稳定,平均一秒钟爬取3个用户信息。

image

程序运行一天,总共才爬取了25W用户的数据(大概1Gb);主要瓶颈在代理上,下次得把代理这个坑填上,不然效率太低。接下来,向大佬学习简单搞一些数据分析。

爬取的cvs文件如下:

image

项目地址:https://github.com/moranzcw/Zhihu-Spider

高校TOP25
职业TOP10
公司TOP10
性别统计
点赞TOP15
关注TOP15
城市TOP10

Last Modified: January 26, 2019