是否有可能通过 pyGithub 获得发布

Is there possibility to get releases with pyGithub

我还没有使用过 PyGithub,但我很好奇是否有可能从存储库中获取发布列表(例如 https://github.com/{username}/{repo-name}/releases)。我在文档 here.

中看不到任何相关信息

您可以通过向

发出 GET 请求从 GitHub 存储库中获取版本列表
https://api.github.com/repos/{user}/{repo}/releases

例如

import requests

url = 'https://api.github.com/repos/facebook/react/releases'
response = requests.get(url)

# Raise an exception if the API call fails.
response.raise_for_status()

data = response.json()

另外值得注意的是,您应该发出经过身份验证的请求,否则您会很快达到 GitHubs API 速率限制,然后返回 403s。

PyGithub 的文档没有提到它,但我相信 pygithub-1.29(截至今天在 PyPi 上发布的最新版本)确实包含这个 API:Repository.py因为 v1.29 标签包含一个 get_releases() 函数。

还有一个 open, unmerged pull request 似乎可以填写此 API 以包含资产。

这个问题有点老,但似乎没有人按照 OP 的要求回答。

PyGithub 确实有办法 return 发布 repo,这里是一个工作示例:

from github import Github

G = Github('')  # Put your GitHub token here
repo = G.get_repo('justintime50/github-archive')
releases = repo.get_releases()

for release in releases:
    print(release.title)

以上将return以下:

v4.3.0
v4.2.2
v4.2.1
v4.2.0
v4.1.1
...

希望对您有所帮助!