通过github.api

时间:2018-09-04 15:30:16

标签: python python-3.x github-api

我的任务是使用github.api获取未解决问题的数量。不幸的是,当我解析任何存储库时,我得到相同的数字-30。

import requests


r = requests.get('https://api.github.com/repos/grpc/grpc/issues')
count = 0
for item in r.json():
    if item['state'] == 'open':
        count += 1

print(count)

有什么办法可以得到真正的问题?

2 个答案:

答案 0 :(得分:0)

请参阅有关Link响应标头的文档,也可以传递statefilter

您必须分页浏览。

http://.../issues?page=1&state=open
http://.../issues?page=2&state=open

答案 1 :(得分:0)

/issues/端点是分页的:这意味着您必须遍历多个页面才能获得所有问题。

但是有一种更好的方法来获取您想要的东西。 GET /repos/:owner/:repo直接给出存储库中未解决问题的数量。

例如,在https://api.github.com/repos/grpc/grpc上,您可以看到:

  "open_issues_count": 1052,

单击here以查看此端点的文档。