Список всех репозиториев из частной организации на github


Вот что мне нужно:

Я хочу получить список всех РЕПО в моей частной организации, получить список команд для всех РЕПО, а затем получить всех участников из каждой команды.

Я пытаюсь сделать это сейчас, используя простые запросы auth в python, передающие команды http, но это не дает мне полный список РЕПО.

Кто-нибудь делал это раньше ? Любые модули python с образцами, которые я могу попробовать ?

1 2

1 ответ:

Так что вы можете сделать это довольно красиво с github3.py (pip install github3.py):

import github3

gh = github3.login("Jason", "Jason's password")
org = gh.organization("Jason's organization with private repos")
repos = list(org.iter_repos(type="all"))  # Or type="private"

В качестве альтернативы, если вы чувствуете себя предприимчивым (pip install --pre github3.py для предварительного просмотра 1.0.0 github3.py):

import github3

gh = github3.login("Jason", "Jason's password")
org = gh.organization("Jason's organization with private repos")
repos = list(org.repositories(type="all"))  # Or type="private"

Github3.py будет обрабатывать разбиение на страницы для вас (как Джейсон упомянул в комментарии к вашему вопросу), поэтому вы можете обернуть итерацию репозиториев организации в вызов list. github3.py генерирует их 100 репозиториев за один раз (вместо стандартных 30), поэтому вы должны получить 100 из них быстро и затем подождите, может быть, секунду, чтобы запросить следующие 100.