跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”
未分類
5 4 月 2020

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

資深大佬 : AxtonYao 51

去年年底,我突发奇想想要自己统计一番 GitHub 上存储库的一些信息。尽管 GitHub 有自己的年度统计,我还是想试着自己爬取一下,说不定能挖出什么有意思的信息。于是写了个简单的爬虫然后扔在了两台服务器上开始跑( GitHub API 真是好文明)。

从 2019.11.21 3 时到 2020.1.12 24 时的 52 天 21 小时内,我的爬虫一共爬取了与 2,024,705 个用户有关的 14,651,923 个公共存储库的基础信息,平均每秒爬取 3.2 个存储库。据 GitHub 的官方数据计算,我爬取了大约 15% 的存储库信息,但由于封禁库和私有库的数量未知,我暂时无法确定我爬取的存储库占公共库的比例。之后我做了一些统计,统计结果在这里:

> GitHub 2019 统计无垠版 <

这里放一些有意思的分析结果:

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

比较出乎我意料的是创建自 Fork 的存储库的占比。我预估这样的存储库占比不会太低,但没有想到能接近一半。此外单用户拥有最大库数量也超出了我的预期,pombredanne 这个用户名下拥有将近 24k 的存储库,不过绝大多数都是 Fork 来的,在情理之中。此外在这个数据集中拥有最多存储库的账户其实是一个组织 gitpan,这个组织拥有 36,377 个存储库。

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

从第四名开始就和 GitHub 的官方排名不太一样了,这里对于语言的优劣不做评价(逃

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

就算我缩放了横轴,这个曲线还是比我预估的陡多了。加上受爬取方式的影响,GitHub 中 Star 数较少的存储库数量远比我爬取到的多。也就是说,实际情况下曲线远比这个图表上的陡。 拿点 Star 不容易啊。

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

有意思的是,存储库名称最受欢迎的长度和用户名一样,都是 8 位。此外在超长存储库名上,有很多人充分发挥了他们的创造力,比如这几个例子:

  • testing-something-elsetesting-something-elsetesting-something-elsetesting-something-elsetesting-some
  • nyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyannyan
  • —————————————————————————————————-

爬取了 GitHub 上 1465w 个存储库,我做了个简易版“GitHub 2019 第三方统计”

由于我并没有完整爬取所有存储库,我只能以相对值来统计每月新增存储库数量的变化趋势。在这个图表中,我将 2017-09 的数据设为了 100%。 至于 2017 年 6, 7, 8 三个月的“一柱擎天”,原因正是微软收购 Github。此外,GitHub 中只有一个创建于 2008 年之前的存储库,那就是 id: 1 的 mojombo/grit,而它的创建者正是 GitHub 的创始人之一 Tom Preston-Werner。

在爬取到的所有存储库中,有 3 个奇怪的存储库是“无主”的,即它们的 owner 属性为空。这三个存储库的基本信息如下。

ID 名称 Forked Star 语言 许可证 创建于
72385291 vscode-redprl 否 10 TypeScript apache-2.0 2016-10-31 08:50:01
181218346 electron-sys 否 10 Rust other 2019-04-14 03:20:56
181391880 node-sys 否 6 Rust other 2019-04-15 09:33:08

更奇怪的是这三个存储库“无主”的情况还不一样。第一个存储库可以通过 /repositories 这个 GitHub API 找到, 这个链接中的第一个存储库就是它;而其余两个存储库甚至无法在 /repositories API 中找到。不过就算能在 API 中找到第一个存储库,它的 html_url,即 https://github.com//vscode-redprl 仍然是不可访问的。我对爬虫是如何找到这三个存储库的以及这些 Stars 是哪里来的感到好奇。

至于数据集,导出的 SQL 文件大约为 1.38GB,全部放在了 GitHub 上(在危险的边缘试探.webp

yrccondor/github-analysis-2019

此外我也提供了 MEGA 下载,链接在这里。

免责声明:我会尽可能地提供准确的信息,但我不对此文章中信息的准确性和即时性及带来的任何影响负责。我不代表 GitHub 官方,本文仅供学习之用。

大佬有話說 (2)

  • 資深大佬 : noreplay

    删除线里面的文字好骚啊(正面意义上的

  • 資深大佬 : shadeofgod

    恕我直言,微软收购 GitHub 难道不是 2018 年 6 月宣布的吗

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具