因为一些原因最近统计了一下github上一些项目里中国人的贡献程度和主导情况。
贡献程度主要分为两部分:
- issue & pr
- commit与代码修改量
commit与代码修改量
首先通过github rest API获取到指定项目的commit ID及其对应的commiter, 这里可以统计到该项目中有多少commiter和他们分别的commit数量。
以smart-doc-group/smart-doc 举例,获取其commit 信息:
https://api.github.com/repos/smart-doc-group/smart-doc/commits
一页显示的数量有限,可以在请求中设置page_number
但是这样获取的commit数量总数跟本地获取的不一致(git log), 猜测与merge等原因有关
获取代码量好像没有特殊API,本来想爬取contributor页面的数值,但是其为动态加载页面,本人爬虫技术有限,没爬成功。
所以选择把仓都下载下来使用
git show commit_ID --stat
Issue & PR
这俩就比较简单了,也有对应的API,直接获取其Author然后判断是否为中国人即可。