调用Github.get_organization()时出现BadCredentialsException

4 投票
2 回答
4184 浏览
提问于 2025-04-18 16:30

我正在使用 PyGithub v1.25 来创建一个小型网页应用,让我的组织成员可以在我们的 GitHub 组织中创建私有仓库。目前,我在调用 get_organization() 方法时遇到了 BadCredentialsException 的错误。

以下是我代码中相关的部分:

from github import Github                                                                

import settings                                                                  


GIT_OBJECT = Github(login_or_token=settings.AUTH_TOKEN)                          
ORG_OBJECT = GIT_OBJECT.get_organization('My-Organization-Name')

我使用的认证令牌是从我的 GitHub 用户账户生成的,这个账户有足够的权限可以在这个组织中通过 GitHub 网页界面创建私有仓库。我在创建令牌时选择了 “user”、“repo”和“admin:org”权限。在创建 ORG_OBJECT 时出现了错误。

错误堆栈信息:

File "/local/path/to/my/code/github_console/console/org_manage.py", line 10, in <module>
  ORG_OBJECT = GIT_OBJECT.get_organization(‘My-Organization-Name’)
File "/local/path/to/my/code/github_console/lib/github/MainClass.py", line 187, in get_organization
  "/orgs/" + login
File "/local/path/to/my/code/github_console/lib/github/Requester.py", line 169, in requestJsonAndCheck
  return self.__check(*self.requestJson(verb, url, parameters, headers, input, cnx))
File "/local/path/to/my/code/github_console/lib/github/Requester.py", line 177, in __check
  raise self.__createException(status, responseHeaders, output)
BadCredentialsException: 401 {u'documentation_url': u'https://developer.github.com/v3', u'message': u'Bad credentials'}

如果有谁之前使用过 PyGithub 或 GitHub API(或者有谁比我更擅长阅读文档)能提供一些见解,我将非常感激!

这是 PyGithub 的源代码,如果有人想看看。

2 个回答

0

记得去GitHub上检查一下你的个人访问令牌/API密钥,确保它没有过期。

这刚好是我今天遇到的事情。

1

哎呀!

显然,上面的代码运行得很好,只是我在把本地设置导入到我的设置模块时搞错了,所以用了一个假冒的 AUTH_TOKEN,这当然导致了 BadCredentialsException 的错误。

不过,从好的一面看,我想上面的内容展示了如何正确使用 PyGithub。

撰写回答