爬取知乎60萬用戶信息之后的數據分析
文 |?brianway
?
使用 Java+Elasticsearch+Kibana 爬取了知乎 60 萬用戶數據,做了簡單的可視化分析。
項目源碼 GitHub – webporter
動機
在知乎上看到有個叫 @路人甲 的大神每隔一段時間就爬爬豆瓣/B站等等網站,做了很多有意思的分析,加上之前因為實驗室項目接觸過 Nutch,淺嘗輒止了,所以一直想好好玩玩爬蟲。
網上 Python 的爬蟲教程很多,而自己的主語言是 Java,本著宣傳 Java,以練促學的目的,我使用 Java 爬取了知乎 60 萬用戶信息,主要想看看知乎上妹子多不多啊/是不是都是基佬啊,標配常青藤/年薪百萬是不是真的啊,等等。
思路
為了保證數據的質量,避免爬到一些僵尸號什么的,我選擇爬取關注列表而非粉絲列表。我隨機挑選了一位粉絲過千的優秀回答者作為起始,爬取他的關注列表,再對列表中的每個人爬取其關注列表,以此類推……
下載了大概 7 個小時,爬了 40 多萬用戶的關注列表,拿到了 10G 的數據,如圖所示:
理論上有 800 多萬用戶,可惜有很多重復的,去重后將數據導入 Elasticsearch,得到 60+ 萬用戶數據:
數據驗證
接下來簡單看看下載下來的數據靠不靠譜,隨手在知乎和我的 Kibana 分別搜了下輪子哥 @vczh
可以看到,連同名的都搜出來是一樣的,數據沒啥問題。
關心的數據
然后使用 Elastichearch 的聚合查詢配合 Kibana 對數據進行可視化展示,我主要分析了下面幾個問題:
- 性別分布
- 粉絲最多的用戶top10
- 員工最多的公司top10
- 校友最多的學校top10
- 人數最多的地方top10
- top10行業分布
- top10職業分布
圖中涉及性別的, 1 表示男,0 表示女,-1 表示不男不女
性別分布
可以看到知乎男性人數過半了,比女性和未知性別加起來都多。
粉絲最多的用戶top10
粉絲數前 10 的依次是 @張佳瑋,@李開復,@黃繼新,@周源,@yolfilm,@張亮,@張小北,@李淼,@葛巾,@采銅。最多的 120 萬粉絲,第十也過 60 萬了。不過前十里好幾個都是知乎員工,有黑幕的嫌疑吧?
員工最多的公司top10
可以看到 BAT 全部上榜了(亂入了一個學生什么鬼?),僅接著是網易,華為,谷歌,微軟,美團。都是牛逼哄哄的互聯網相關企業,看來國企和實體企業比較低調,不在知乎填公司信息啊。
另外華為的男女比簡直不能看啊,妹子那么少,想去華為的單身狗們需要好好考慮一下了。
校友最多的學校top10
差強人意,校友人數排名前十的全特么是 985 啊,清北復交浙全部上榜,儼然中國大學排行榜。看來知乎標配不是常青藤,而是 985 嘛。另外可以看到,我科(倒數第三個)的男女比在這幾個里面確實感人,難怪我現在還單身…
人數最多的地方top10
北京獨領風騷,上海緊隨其后。另外知乎居然把深圳和廣州根據有沒有“市”標記為了兩個城市,簡直坑爹,我也懶得二次處理了。綜合來看,北上廣深杭,主要集中在這五個城市,基本也是我國互聯網企業分布最多的幾個城市。
top10行業分布
可以看到,互聯網和計算機軟件兩個加起來就占了半數以上,要是算上電子商務和電子游戲等基本是程序員的天下了,所以知乎上程序員偏多,IT 從業者占主流啊。
另外互聯網的男女比大概 2:1 的樣子吧,法律,信息傳媒和創意藝術的男女比比較均衡,大概五五開。
top10職業分布
將近四分之一是產品經理,創始人和 CEO 也不少,比工程師還多,學生也占一定比例。另外除了運營和編輯的男女比差不多,其它都是男多女少啊。
結語
從這 60 萬用戶數據可以看出,知乎的主要群體是程序員和學生,平均學歷 985 不是黑,是真的!雖然知乎用戶遠不止 60 萬,這些數據分析出來的結果可能有些偏差,但應該也能說明一些問題吧。
最后按照國際慣例,附上源碼, GitHub – webporter
End.