From e5a330c01cfcfb7bfc13fb0dd644a5bb761e1bfb Mon Sep 17 00:00:00 2001 From: Stefan Behnel Date: Sat, 25 Mar 2023 21:24:46 +0100 Subject: Print download totals in pypistats. --- tools/pypistats.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/tools/pypistats.py b/tools/pypistats.py index c5528970..4ba7a5c3 100644 --- a/tools/pypistats.py +++ b/tools/pypistats.py @@ -43,8 +43,7 @@ def system_sorter(name_and_count): return len(order) -def print_agg_stats(counts, sort_key=None): - stats = aggregate(counts) +def print_agg_stats(stats, sort_key=None): total = sum(stats.values()) max_len = max(len(category) for category in stats) agg_sum = 0.0 @@ -58,13 +57,19 @@ def main(): package_name = sys.argv[1] if len(sys.argv) > 1 else PACKAGE counts = get_stats("python_minor", package=package_name) + stats = aggregate(counts) print("Downloads by Python version:") - print_agg_stats(counts, sort_key=version_sorter) + print_agg_stats(stats, sort_key=version_sorter) print() counts = get_stats("system", package=package_name) + stats = aggregate(counts) print("Downloads by system:") - print_agg_stats(counts, sort_key=system_sorter) + print_agg_stats(stats, sort_key=system_sorter) + + total = sum(stats.values()) + days = {"month": 30, "week": 7, "day": 1} + print(f"Total downloads: {total * days['month']:-12,.1f}") if __name__ == '__main__': -- cgit v1.2.1