如何根据星星数量列出2022年9月之后创建的所有Python存储库?

问题描述 投票:0回答:1

我正在寻找一种方法来获取 GitHub 上 2022 年 9 月之后创建的所有 Python 存储库的列表,并按星数排序。我想以编程方式获取此列表,可能使用 GitHub API 或任何可用的 Python 库。

我的目标是清楚地了解 2022 年 9 月以来的 Python 存储库趋势。

到目前为止我尝试过的:

  1. 手动浏览 GitHub(由于显而易见的原因,效率低下)。
  2. 使用此 API https://api.github.com/repos/hpcaitech/ColossalAI
  3. 查看 GitHub API 文档,但我无法确定如何设置确切的日期范围并按语言过滤。
  4. 有人可以提供有关如何实现此目标的指南或代码片段吗?

提前谢谢您!

python github repository github-api
1个回答
0
投票

您可以使用 GitHub CLI 的搜索功能。需要注意的是,排序并不适用于匹配存储库的整个列表,而仅适用于查询返回的存储库,因此过滤器必须足够严格,以便我们可以处理整个响应。 1000+ 颗星返回大约 430 个存储库,所以这可行:

gh search repos --created '>=2022-10-01' --language python \
    --stars '>=1000' --limit 500 --sort stars

要以编程方式处理响应,将格式设置为 JSON 可能是最简单的:

gh search repos --created '>=2022-10-01' --language python \
    --stars '>=1000' --limit 500 --sort stars \
    --json name,description,createdAt,url,stargazersCount

返回

[
  {
    "createdAt": "2023-03-16T09:21:07Z",
    "description": "An experimental open-source attempt to make GPT-4 fully autonomous.",
    "name": "Auto-GPT",
    "stargazersCount": 146894,
    "url": "https://github.com/Significant-Gravitas/Auto-GPT"
  },
  {
    "createdAt": "2022-10-17T02:58:36Z",
    "description": "⚡ Building applications with LLMs through composability ⚡",
    "name": "langchain",
    "stargazersCount": 59388,
    "url": "https://github.com/langchain-ai/langchain"
  },
  // ...
]
© www.soinside.com 2019 - 2024. All rights reserved.