Есть ли возможность получать релизы с 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 и включает ресурсы.

Другие вопросы по тегам