【PyGithub】複数のGitHubリポジトリに対して最終更新日を取得する

はじめに

AIによる画像生成、動画生成に関するプログラムは日々新しいものが公開されています。

それらをフォローするためにGitHubリポジトリを開いて更新をチェックすることがたまにあります。

複数のリポジトリをいちいち開くのは面倒くさいので最終更新日を取得するプラグラムを書きました。

書いたといっても半分以上はBing Chatに書いてもらいました。

「GitHubリポジトリの最終更新日をPythonで取得したい」みたいなプロンプトを投げかけるとスクリプトを返してくれました。

自分はその結果を少しアレンジしただけです。

すごい時代です。

Pythonスクリプト

from github import Github
import pytz
from datetime import datetime

universaltimezon = pytz.timezone("Universal")

repository_list = [
    "huggingface/diffusers",
    "guoyww/AnimateDiff",
    "tencent-ailab/IP-Adapter"
]

now = datetime.now(universaltimezon)
g = Github()

for repository in repository_list:
    repo = g.get_repo(repository)
    commits = repo.get_commits()
    latest_commits = commits[0]
    update_time = latest_commits.commit.committer.date

    print(f"https://github.com/{repository}")
    print(now - update_time)
    print("\n")

input("press any key to terminate")

出力

このような結果が返ってきます。

https://github.com/huggingface/diffusers
2:25:54.446838


https://github.com/guoyww/AnimateDiff
21 days, 0:46:24.446838


https://github.com/tencent-ailab/IP-Adapter
1 day, 20:16:04.446838

アドレスのところは「Ctrl」を押しながらマウスで左クリックするとリポジトリを開くことができます。

Python環境

pip install pygithub
pip install pytz




このエントリーをはてなブックマークに追加