2016-10-24 3 views
2

PyGithubを使用してすべてのユーザーのリポジトリを取得しようとしています。 わかりやすくするために、ユーザー:https://github.com/mbostockには53のpublic reposがあります。github apiですべてのユーザーリポジトリを取得するには? (固定されたリポジトリを含む)

私のコード:

import github 
con = github.Github(mylogin, pass) 
u = g.get_user('mbostock').get_repos('all') 

と、私は53を取得し、それは私がすべての受信リポジトリの中で、私はD3/D3例えば、いくつかのユーザーの釘付けリポジトリを、見つけることができないことに気づいた、正しい番号ですが、そのユーザーもこのレポに大きく貢献しますが、です。

誰かがgithub apiを知っていて、すべてのユーザーの貢献したreposを受け取る方法があれば、助けてください。

答えて

2

ないすべてのユーザーの固定リポジトリのは、そのユーザーが彼らに属しているが、ユーザーがメンバーであることを起こる組織に属しているので、GET /users/:user/repos経由ユーザーのリポジトリ用のAPIを尋ねるとき、彼らは(表示されません私はPyGithubに慣れていないので、標準のAPI URLでのみ話します)。

複数のAPIクエリを実行せずに、ユーザーが所属する組織のリストを取得して(GET /user/:user/orgs)、その組織にリポジトリを一覧表示するなど、ユーザーが寄与するリポジトリのリストを簡単に取得する方法はありませんGET /orgs/:org/repos)。ただし、このアプローチを使用すると、ユーザーが組織内の各リポジトリに提供する保証はありません。

もちろん、コミットの著者によってフィルタリングすることはできますが、この時点で多くの努力(およびレート制限)を費やしていることでしょう。

+0

ありがとうございます。私はそれについてほぼそう思った。 –

関連する問題