【问题标题】:How to identify / list all of the GITHUB webhooks (URL) using Python?如何使用 Python 识别/列出所有 GITHUB webhook (URL)?
【发布时间】:2018-11-02 17:07:23
【问题描述】:

我正在使用请求和 Github python 库,主要是为了在特定条件下构建一个脚本来更新 github 中的 webhook (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 -> Setting -> Webhooks),以便使用新域更新它们。问题是我还没有找到如何获取或列出特定存储库的所有 webhook。

我一直在阅读一个名为 smartsheet 的许可库,它看起来像使用该库 我们可以处理 webhook ......但我没有在这里安装那个库:-(

是否可以使用那些 python 库(请求和/或 Github)列出/识别 URL webhook?

如果是这样,有人可以给我一个例子吗?

我会很感激的!

何塞

【问题讨论】:

    标签: python url github python-requests webhooks


    【解决方案1】:

    好像有一个 Github Webhooks API:https://developer.github.com/v3/repos/hooks/#list-hooks

    使用请求,您应该能够在 webhook 上为您的每个存储库执行 CRUD 操作。

    列出回购钩子的调用看起来像这样:

    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
    

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 您好 Ywapom,感谢您的回复。我忘了说我已经使用了那些 REST API 命令和参数(基本上是 curl 工具)。我的问题是我无法将这些命令翻译成 Python 语句(使用请求和 Github 库或其他)......正如你在我之前发送的 python 代码中看到的那样,实际上我得到了有关 Orgs 的信息,回购和用户名。但是我需要通过 python 代码列出(识别)和更新 webhook(url)......如果您有任何其他信息,请告诉我。我要看看@Dreslan 的回复.. 非常感谢!
      猜你喜欢
      • 1970-01-01
      • 2014-04-27
      • 1970-01-01
      • 2017-08-30
      • 1970-01-01
      • 2013-03-20
      • 1970-01-01
      • 1970-01-01
      • 2018-06-07
      相关资源
      最近更新 更多