Use a API Github :
/users/:user/repos
Isso lhe dará todos os repositórios públicos do usuário. Se você precisar descobrir repositórios privados, você precisará se autenticar como o usuário específico. Você pode então usar a chamada REST:
/user/repos
para encontrar todos os repositórios do usuário.
Para fazer isso em Python, faça algo como:
USER='AUSER'
API_TOKEN='ATOKEN'
GIT_API_URL='https://api.github.com'
def get_api(url):
try:
request = urllib2.Request(GIT_API_URL + url)
base64string = base64.encodestring('%s/token:%s' % (USER, API_TOKEN)).replace('\n', '')
request.add_header("Authorization", "Basic %s" % base64string)
result = urllib2.urlopen(request)
result.close()
except:
print 'Failed to get api request from %s' % url
Onde o url passado para a função é o url REST, como nos exemplos acima. Se você não precisa se autenticar, simplesmente modifique o método para remover a adição do cabeçalho de autorização. Você pode obter qualquer URL de API público usando uma simples solicitação GET.
?per_page=
developer.github.com/v3/#pagination