入坑知乎三年有余,數(shù)月前靈光閃現(xiàn),做個(gè)網(wǎng)頁爬蟲,專爬知乎下的精華回答,作統(tǒng)計(jì)分析。
以下,即是此項(xiàng)目的分析結(jié)果,希望能從另一個(gè)角度呈現(xiàn)出不一樣的知乎。
代碼
"talk is cheap, show me the code!" --屁話少說,放碼過來。心急的朋友可以直接戳鏈接看源碼,用的是Python3:
https://github.com/SmileXie/zhihu_crawler
算法簡(jiǎn)述
1.爬蟲算法
以根話題的話題樹為啟始,按廣度優(yōu)先遍歷各子話題。話題的遍歷深度為3。解析各話題下的精華回答。

2.收集數(shù)量
目前收集的信息共計(jì)50539個(gè)精華回答。
3.分析內(nèi)容
- 精華回答的點(diǎn)贊數(shù),答案長(zhǎng)度等;
- 答題用戶的id,點(diǎn)贊數(shù),地區(qū),性別,學(xué)歷,學(xué)校,專業(yè)等;
統(tǒng)計(jì)結(jié)果
1.匿名答主
50539篇精華回答中,有3308篇的回答者選擇了匿名發(fā)布答案。

2.答主性別
男15740,女5749.是否從一個(gè)側(cè)面印證了知乎上程序員占了很大的比例.

3.答主受教育情況
按答主的所在(畢業(yè))學(xué)校統(tǒng)計(jì),TOP10的學(xué)校是:

可以看出,中國(guó)的頂尖高校對(duì)知乎的精華回答貢獻(xiàn)頗多。
按答主所在的專業(yè)統(tǒng)計(jì),TOP10專業(yè)是:

果然是程序猿的天堂。(上面的數(shù)據(jù),我針對(duì)“計(jì)算機(jī)”和“金融”的數(shù)據(jù)做了處理,把“計(jì)算機(jī)”“計(jì)算機(jī)科學(xué)”“計(jì)算機(jī)科學(xué)與技術(shù)”合并為“計(jì)算機(jī)”,把“金融”和“金融學(xué)”合并為“金融”)
4.精華回答的贊同數(shù)
按精華回答所獲得的贊同數(shù)落在的區(qū)間,做統(tǒng)計(jì)

| 贊同數(shù)區(qū)間 | 此區(qū)間內(nèi)的精華回答數(shù)量 |
|---|---|
| 0~4999 | 46546 |
| 5000~9999 | 2623 |
| 10000~14999 | 713 |
| 15000~19999 | 305 |
| 20000~24999 | 154 |
| 25000~29999 | 94 |
| 30000~34999 | 44 |
| 35000~39999 | 22 |
| 40000~44999 | 16 |
| 45000~49999 | 8 |
| 50000~54999 | 4 |
| 55000~59999 | 3 |
| 60000~64999 | 3 |
| 65000~69999 | 0 |
| 70000~74999 | 2 |
| 75000~79999 | 1 |
| 80000~84999 | 0 |
| 85000~89999 | 0 |
| 90000~94999 | 1 |
| 95000~99999 | 0 |
可見,大多數(shù)精華回答獲得的贊同數(shù)是處于0~4999范圍內(nèi)的。
目前統(tǒng)計(jì)到的最高票回答是這篇:《哪些素質(zhì)很重要,卻是讀書學(xué)不來的》中肥肥貓的回答,共獲得了91433個(gè)贊同。
5.回答字?jǐn)?shù)
如果按以下標(biāo)準(zhǔn)將精華回答按字?jǐn)?shù)分類:
| 字?jǐn)?shù) | 分類 |
|---|---|
| 0~99 | 短篇 |
| 100~999 | 中篇 |
| 1000~9999 | 長(zhǎng)篇 |
| 10000以上 | 超長(zhǎng)篇 |
那么,精華回答的字?jǐn)?shù)分布如下:

看來各位答主對(duì)沒少在知乎上碼字。長(zhǎng)篇的數(shù)量甚至超越了短篇和中篇。
目前收集到的最長(zhǎng)字?jǐn)?shù)回答是:《人究竟能摳到什么程度》中郭永年的回答,答主揚(yáng)揚(yáng)灑灑寫了98904字,敢情是在知乎上寫小說了啊。
后記
作為一個(gè)對(duì)Python和C都有使用的程序員,在開發(fā)的過程中不斷地領(lǐng)略著這兩種語言的巨大差異。
Python把對(duì)開發(fā)者友好做到了極致,犧牲了性能。
C把性能做到了極致,犧牲了對(duì)開發(fā)者的友好。
這個(gè)項(xiàng)目只用了500行Python,如果換作500行C,估計(jì)只能完成上述功能的1/10吧。
最后再貼一遍源碼:
https://github.com/SmileXie/zhihu_crawler