如何获取特定团队或存储库的GitHub用户名和电子邮件

时间:2017-05-21 18:51:56

标签: python github-api github3.py

如何使用Python和GitHub API获取特定团队(或存储库)的用户详细信息(用户名,电子邮件,位置)?团队不公开,但我是我试图检查的团队的成员(为老板准备报告)。

我尝试使用像github3py这样的库,到目前为止没有运气。

import github3
g = github3.login(GH_USERNAME, GH_PASSWORD)
members = g.orgs.team(GH_TEAM)

for u in members
    print u.login
    print u.name
    print u.email

2 个答案:

答案 0 :(得分:1)

您可以使用PyGithub

安装

pip install PyGithub

让团队成员这样:

from github import Github
g = Github(GH_USERNAME, GH_PASSWORD)
org = g.get_organization(GH_ORG) //GH_ORG is organization name
teams = org.get_teams()
for t in teams:
    if t.name == GH_TEAM:
        for m in t.get_members():
            print(m.login)

希望它对你有所帮助。

答案 1 :(得分:1)

感谢您使用github3.py

您应该做的是以下内容:

  1. 登录GitHub

    import github3
    g = github3.login(GH_USERNAME, GH_PASSWORD)
    
  2. 检索您的组织

    organization = g.organization('my-organization-name')
    
  3. 找到你的团队

    for team in organization.teams():
        if team.name == 'my-team-name':
            break
    else:
        raise SystemExit('Could not find team named "my-team-name"')
    
  4. 使用团队枚举成员

    for member in team.members():
         print('{}\t{}'.format(member.login, member.name))
    

    注意,GitHub的API在枚举对象列表(例如团队成员)时不会返回所有信息。您可能需要致电member.refresh()以检索有关团队成员的完整用户信息。

  5. 如果你有团队的ID,那么第3步可以更容易:

    team = organization.team(1234)