github 使用者 followers 分析
如何分析一個github使用者的followers。
周末手癢,用python分析了一下自己 github 的 followers 使用者,統計結果如下 問題分析
在github上,一個使用者的首頁顯示如下,主要對如下使用者資訊進行提取
- 使用者名稱稱
- 所在的位置
- 使用者倉庫、stars、Followers、Following數量
- 去年一年的貢獻度
我們需要對上圖紅框裡面的資料進行提取,最直接的方法是使用requests,通過BeautifulSoup對html中的資訊進行提取。 一些彎路
最開始沒打算用爬蟲的方式來擷取使用者資訊,因為github有公開的REST API v3可以對指定使用者的資訊進行訪問,並且已經有打包好的PyGithub方便調用。但是我實驗下來有如下問題所以放棄使用REST API v3
1. API請求頻率有限制,無法運用多線程快速擷取批量的使用者資訊
2. 不知道是不是小BUG,通過API無法獲得使用者去年一年的貢獻度contributions 工具 python 3 : 徹底告別我的py2 BeaufulSoup :從HTML或XML檔案中提取資料 Requests : 請求網頁 多進程 : 為了更快 pyecharts : 美的令人窒息的繪圖工具 操作步驟 擷取目標使用者如https://github.com/wangshub?page=1&tab=followers的所有followers; 改變page編號,遍曆所有使用者; 提取使用者關鍵資訊,儲存成csv檔案; 資料清洗,過濾; 利用pyecharts繪圖; 進行地點詞頻統計; 實驗結果
截止2018-01-15,我的github帳號一共有1214名follower,分析結果如下 使用者地點分析
排除掉沒有填寫地點資訊的使用者,將中文轉化成pinyin後,詞雲如下
使用者基本上都是來自北京、上海、深圳等地 去年一年使用者貢獻度分析
如果看使用者是否活躍,肯定是看contributions啦
可以看出超過一般多的使用者,去年的貢獻度都在都在 1~50 之間,新的一年要加油啦。其中一年貢獻最多的使用者是@dragon-yuan, 在2017年有整整 4,197 個貢獻度,不多說了,前去關注一波。 使用者followers分析
哇,有大牛,別攔著我,我要去點關注了
使用者倉庫數量分析
通過爬取使用者的倉庫數量,進行統計如下
可以看到一個有意思的現象,有少數的人倉庫數量超過了1000,開啟這幾位仁兄的github首頁,大部分是fork的項目,其中倉庫最多的使用者有13100個倉庫,叫@ProgrammerAndHacker,他是這麼介紹自己的
I follow best programmer and hacker, Do you want to hacked by them? ^_^ Best programmers and hackers are here: ...
使用者stars分析
都說點擊star是一個好習慣,
不得不說,github上面還是有點贊狂魔的,這位老鐵@chenruibin一共點擊了10100個贊,真是好習慣~ 使用者 following 分析
同樣是@ProgrammerAndHacker這位仁兄,一共follow了19600個使用者,嚴重懷疑是不是機器人。 最後
不搞了,我要去寫論文了TAT,代碼在這裡https://github.com/wangshub/who_is_following