-
GitHubのAPIアクセストークンの取得:
- GitHubのウェブサイトにアクセスし、アカウントにログインします。
- 「Settings」(設定)ページに移動し、「Developer settings」(開発者設定)を選択します。
- 「Personal access tokens」(パーソナルアクセストークン)を選択し、新しいトークンを生成します。必要なスコープ(権限)を選択してトークンを作成し、トークンを安全な場所に保存します。
-
Pythonのリクエストライブラリを使用してAPIにアクセスするコードの作成:
import requests def get_closed_issues(repo_owner, repo_name, api_token): headers = { 'Authorization': f'token {api_token}', 'Accept': 'application/vnd.github.v3+json' } url = f'https://api.github.com/repos/{repo_owner}/{repo_name}/issues?state=closed' response = requests.get(url, headers=headers) return response.json() repo_owner = "octocat" repo_name = "hello-world" api_token = "YOUR_API_TOKEN" closed_issues = get_closed_issues(repo_owner, repo_name, api_token) print(closed_issues)
上記のコードでは、
get_closed_issues
関数を使用してクローズドイシューのデータを取得しています。repo_owner
とrepo_name
には対象のリポジトリの所有者と名前を指定し、api_token
には先ほど取得したAPIトークンを設定します。取得したデータはJSON形式で返されます。 -
クローズドイシューの総数を取得する:
total_closed_issues = len(closed_issues) print("Total closed issues:", total_closed_issues)
-
クローズドイシューのラベルと数を表示する:
label_counts = {} for issue in closed_issues: labels = issue["labels"] for label in labels: label_name = label["name"] if label_name in label_counts: label_counts[label_name] += 1 else: label_counts[label_name] = 1 print("Label counts:") for label, count in label_counts.items(): print(label, ":", count)
for issue in closed_issues:
issue_title = issue["title"]
created_at = issue["created_at"]
print("Issue:", issue_title)
print("Created at:", created_at)
このように、GitHubのAPIを使用してリポジトリのクローズドイシューを分析する方法を説明しました。これにより、リポジトリの問題や傾向を把握し、開発プロセスの改善に役立ったります。