Есть ли возможность получать релизы с pyGithub
Я еще не использовал PyGithub, но мне просто интересно, есть ли возможность получить список выпусков из репозитория (например, https://github.com/{username}/{repo-name}/releases
). Я не вижу никакой информации об этом в документации здесь.
2 ответа
Вопрос немного устарел, но, похоже, никто не ответил на него так, как задал OP.
В PyGithub есть способ вернуть выпуски репо, вот рабочий пример:
from github import Github
G = Github("") # Put your GitHub token here
repo = G.get_repo("thorium-sim/thorium")
releases = repo.get_releases()
for release in releases:
print(release)
Вышеуказанное вернет следующее:
GitRelease(title="2.4.1")
GitRelease(title="2.4.0")
GitRelease(title="2.3.0")
GitRelease(title="2.2.0")
GitRelease(title="2.1.0")
GitRelease(title="2.0.0")
...
Надеюсь, это поможет!
Вы можете получить список выпусков репозитория GitHub, отправив запрос GET на
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 и просто вернетесь к 403-м.
Документация для PyGithub не упоминает об этом, но я считаю, что pygithub-1.29
(последний опубликованный на PyPi на сегодняшний день) фактически содержит этот API: Repository.py
для v1.29
тег содержит get_releases()
функция.
Существует также открытый, неотгруженный запрос извлечения, который, по-видимому, также заполняет этот API и включает ресурсы.