爬取11088個知乎專欄,打破發現壁壘

2021-09-11 10:18:23 字數 1581 閱讀 5423

去uc是不可能去uc的,這輩子都不可能去uc的。——deserts_x

上回我用gephi繪製了知乎374名10萬+關注的大v間相互關注情況,因為涉及25090條關注資料,最後成果圖不算理想,但也能簡單窺見大v生態圈的面貌,詳情見於:《374名10萬+知乎大v(一):相互關注情況》

論理這回應該繼續對374名10萬+大v、4151名1萬+小v進行研究,寫作(二)、(三)等系列文章,那到底為什麼不填坑,而搞了這個爬知乎專欄的專案呢?

本專欄data analysis & viz開通50來天,關注人數不知不覺也快有666人了,很好奇關注我或專欄的使用者都有誰,他們有哪些共同點,還關注了哪些類似主題的專欄......

前兩個問題倒是很好解決,只需爬取關注列表,分析下使用者資訊,也就心裡有數了;但知乎上有多少類似主題的優質專欄,卻是個不好回答的問題。

原先一直以為知乎有搜尋專欄的地方,找了半天發現下面的網頁後,以為撿到寶了,立馬寫個爬蟲,翻頁10000次,美滋滋地等著拿資料,卻發現最後到手的有效專欄數才313個用《紅樓夢》的話說,這個**「原來苗而不秀,是個銀樣鑞槍頭」,是個中看不中用的主。

繼續尋尋覓覓後,發現個人主頁有兩處專欄相關的入口:乙個是自己的專欄,乙個是關注的專欄。於是決定以後者為入口,用上回獲取的30多萬使用者id,爬取各自關注的專欄,從而得到知乎專欄的資料

有了入口和思路,之後就是寫**和爬取的事了,不在話下。

@ricky,2023年在《知乎都有哪些值得推薦的專欄?》 話題下提到:「專欄除了在時間線被關注使用者點讚或者關注的情況外,是沒有乙個發現頻道的。也就是說知乎團隊希望專欄還是以一種去中心化的形態去發展。

現在依舊如此,去中心化的形式就是上述痛點的**。

最終得到11088條知乎專欄資料,格式如下,作者為機構號的專欄特別標註出來

粉絲數排名top100專欄的門檻為40814人(「如何認真地活著」)。top100專欄總計8261681人次關注,佔全部11088個專欄總關注31262218人次的26.4%,而top27專欄的關注人次佔到top100的一半

全部專欄的平均粉絲數為2819人(拖後腿了),中位數為432人。前393個專欄總計關注人次超過全部專欄的一半。

「資料冰山」專欄兩個月前曾對top20專欄進行分析:《知乎top20專欄使用者的那些事》、上文提到的《知乎都有哪些值得推薦的專欄?》一文也有2023年的top20專欄名單,三者比較後,發現部分專欄地位穩固,「你大爺依舊是你大爺!」

在上萬的專欄裡有191個系機構號所建立,請下圖的相關人員支付廣告費!否則,我將用三十年修煉的、集一陽指和獅吼功於一體的神功,give you color to see see!頂部和底部沒顯示完整的可以半折。

原本以為上文資料一覽裡時間欄是專欄的開通時間,於是繪製了下各年份的情況。之後才發現這部分應該是爬蟲入口的使用者關注專欄的時間,似乎啥也說明不了......不管了,聰明的人看不到這張圖!

有興趣做個「搜尋知乎專欄」功能的小夥伴也可以搞一下哈。

爬取知乎所有專欄文章

一般來說爬取乙個 就是那麼幾步走 1.先使用瀏覽器逛一逛想爬取的 找找規律 2.直接發乙個傻瓜式請求,試一下能不能獲取到想要的資料,萬一就得到了呢 3.不行的話,換一下請求頭中的user agent欄位 這邊推薦大家乙個模組 fake useragent 安裝 pip install fake us...

python動態爬取知乎 python爬取微博動態

在初學爬蟲的過程中,我們會發現很多 都使用ajax技術動態載入資料,和常規的 不一樣,資料是動態載入的,如果我們使用常規的方法爬取網頁,得到的只是一堆html 沒有任何的資料。比如微博就是如此,我們可以通過下滑來獲取更多的動態。對於這樣的網頁該如何抓取呢?我們以微博使用者動態為例,抓取某名使用者的文...

知乎資料爬取及儲存

import requests from pymysql conn import mysql connect url 分析所有請求後發現上面的url可以直接獲取所需資料的json檔案,兩個引數分 別為offset,limit。其中offset控制起始資料序號,limit控制本次資料數量 經測試off...