]>
Commit | Line | Data |
---|---|---|
c76eb41b | 1 | # Unused |
2 | ||
bf3ae6a5 S |
3 | #!/usr/bin/env python |
4 | from __future__ import unicode_literals | |
5 | ||
7935926b | 6 | import itertools |
bf3ae6a5 S |
7 | import json |
8 | import os | |
9 | import re | |
10 | import sys | |
11 | ||
12 | sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | |
13 | ||
7a5c1cfe | 14 | from yt_dlp.compat import ( |
bf3ae6a5 S |
15 | compat_print, |
16 | compat_urllib_request, | |
17 | ) | |
7a5c1cfe | 18 | from yt_dlp.utils import format_bytes |
bf3ae6a5 S |
19 | |
20 | ||
21 | def format_size(bytes): | |
22 | return '%s (%d bytes)' % (format_bytes(bytes), bytes) | |
23 | ||
24 | ||
25 | total_bytes = 0 | |
26 | ||
7935926b S |
27 | for page in itertools.count(1): |
28 | releases = json.loads(compat_urllib_request.urlopen( | |
067aa17e | 29 | 'https://api.github.com/repos/ytdl-org/youtube-dl/releases?page=%s' % page |
7935926b S |
30 | ).read().decode('utf-8')) |
31 | ||
32 | if not releases: | |
33 | break | |
34 | ||
35 | for release in releases: | |
36 | compat_print(release['name']) | |
37 | for asset in release['assets']: | |
38 | asset_name = asset['name'] | |
39 | total_bytes += asset['download_count'] * asset['size'] | |
40 | if all(not re.match(p, asset_name) for p in ( | |
7a5c1cfe P |
41 | r'^yt-dlp$', |
42 | r'^yt-dlp-\d{4}\.\d{2}\.\d{2}(?:\.\d+)?\.tar\.gz$', | |
43 | r'^yt-dlp\.exe$')): | |
7935926b S |
44 | continue |
45 | compat_print( | |
46 | ' %s size: %s downloads: %d' | |
47 | % (asset_name, format_size(asset['size']), asset['download_count'])) | |
bf3ae6a5 S |
48 | |
49 | compat_print('total downloads traffic: %s' % format_size(total_bytes)) |