繁体   English   中英

Github API 如何使用 python 语言获取具有特定扩展名(.c、.cpp、.py 等)的 git 存储库的所有文件的计数?

[英]Github API How to get a count of all the files of a git repository with a particular extension (.c, .cpp, .py etc) using python language?

我正在尝试实现一个 python 代码来计算 Github 中具有特定扩展名(存储库)的文件。 在这个方向上的任何帮助将不胜感激。

编辑:我只能列出特定语言的存储库:例如,通过请求以下 url: url=' https://api.github.com/legacy/repos/search/Go?language=Go '

但是,有什么方法可以检查具有特定扩展名和计数的所有文件。 我以前从未使用过api。

如果您的 GitHub 存储库有很多文件夹和文件,这并不容易。
您将为给定的 repo 使用Get Content API

GET /repos/:owner/:repo/contents/:path

您可以在 python 中调用它,使用 JSON 库来解码结果:请参阅此答案

但它不是递归函数,因此结果会直接列出:path下的文件和文件夹。
因此,您必须重复该调用才能进入所有子文件夹,获取所有文件并进行计数。
对于您为特定语言列出的所有存储库。

这可以使用search/code API 来完成。 文档可以在这里找到。 搜索 API 文档

下面的 URL 将显示 Angular 存储库的打字稿结果。

GitHub 搜索代码 API → Angular 存储库

这种用法的示例查询是:

q=*+扩展:py+repo:ORG/REPO

将返回一个 total_count 值,该值将给出与为 org 和 repo 提供的扩展名匹配的文件总数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM