-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfetch_release_asset_downloads.py
More file actions
34 lines (28 loc) · 1.22 KB
/
Copy pathfetch_release_asset_downloads.py
File metadata and controls
34 lines (28 loc) · 1.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import requests
# GitHub token for authentication
token = 'YOUR_GITHUB_TOKEN'
# Function to fetch release assets download counts for a repository
def fetch_release_asset_downloads(owner, repo):
url = f'https://api.github.com/repos/{{owner}}/{{repo}}/releases'
headers = {'Authorization': f'token {{token}}'}
response = requests.get(url, headers=headers)
releases = response.json()
result = {}
for release in releases:
release_name = release['name']
result[release_name] = []
for asset in release['assets']:
asset_name = asset['name']
downloads = asset['download_count']
result[release_name].append({'asset_name': asset_name, 'downloads': downloads})
return result
# Fetch downloads for the specified repositories
repos = ['Aryeah86/Multi-Renamer', 'Aryeah86/SamplySync']
for repo in repos:
owner, repo_name = repo.split('/')
downloads = fetch_release_asset_downloads(owner, repo_name)
print(f'\nDownload counts for repository: {repo_name}')
for release, assets in downloads.items():
print(f'Release: {release}')
for asset in assets:
print(f' Asset: {asset['asset_name']} - Downloads: {asset['downloads']}')