我正在使用以下内容获取组织的存储库。
requests.get('https://api.github.com/orgs/ORG/repos', {'org': 'microsoft', 'per_page': 100})
但是对于像Google这样的组织来说,有1.9k个存储库,我希望前500个存储库具有最高的分支。我该怎么做??
P.S:
这个
requests.get('https://api.github.com/orgs/ORG/repos', {'org': 'microsoft', 'per_page': 500})
仅提供100个存储库(最大为100个)。
答案 0 :(得分:0)
Github限制这些请求的速率是有原因的。他们声称对他们提出这类大要求很昂贵。有关其原因,请参见以下链接:https://github.community/t/github-api-v3-pagination-limit/14106
但是,有一种方法可以使其他存储库的数量超过100。让我们在这里查看文档:{{3}}
响应中的Link标头包含分页信息:
链接:Github API v3; rel =“ next”,
https://api.github.com/user/repos?page=3&per_page=100; rel =“ last”
响应头为您提供下一页和最后一页。您可以解析响应标题,以找出存在100个项目的页面数。然后,您可以提出其他要求。在上面的示例中,有50页,每页100页。
以下答案使用javascript解决了问题,但python的代码与之类似:https://api.github.com/user/repos?page=50&per_page=100