我正在处理请求和Github python库,基本上是在某些条件下构建一个脚本来更新github中的webhooks(URL)。
使用以下代码,我得到一些信息,如GitHub组织,GitHub用户和GitHub存储库(仅举几个例子):
**from github import Github
import json
import requests
def function_example():
gh = Github('MY_TOKEN_HERE', base_url='https://MY-GITHUB-DOMAIN/api/v3')
get_users = gh.get_user().name
print("USERNAME: ", get_users)
print(" ")
# user_repos = gh.repos.list().all()
user_repos = gh.get_repos()
print("REPOS: ", user_repos)
print(" ")
orgs = gh.get_organization('MY_GITHUB_ORG_HERE')
print("ORGS: ", orgs)
print(" ")
if __name__ == '__main__':
function_example()
# Eof**
但是,我需要识别webhooks URL(位于Github - > Repo - >设置 - > Webhooks),以便使用新域更新它们。问题是我还没有找到如何获取或列出特定存储库的所有webhook。
我一直在阅读一个名为smartsheet的许可库,看起来就像使用该库一样 我们可以处理webhooks ...但是我没有安装这个库: - (
是否可以使用这些python库(请求和/或Github)列出/识别URL webhooks?
如果是这样,有人可以给我一个例子吗?
我真的很感激!
何
答案 0 :(得分:0)
有GetHooks()
电话。见https://developer.github.com/v3/repos/hooks/
答案 1 :(得分:0)
看起来有一个Github Webhooks API:https://developer.github.com/v3/repos/hooks/#list-hooks
使用请求,您应该能够在每个回购广告的webhook上执行CRUD操作。
列出repo的钩子的调用看起来像这样:
import requests
token = "YOUR_OAUTH_OR_PERSONAL_ACCESS_TOKEN"
repo = "connect4"
user = "dreslan"
url = "https://api.github.com/repos/{}/{}/hooks".format(user, repo)
headers = {"Authorization": "token {}".format(token)}
r = requests.get(url, headers=headers)
# r.content will display the result