diff --git a/analyze.py b/analyze.py index 304db5d..e56d899 100644 --- a/analyze.py +++ b/analyze.py @@ -1,6 +1,12 @@ import sys import requests +def sorted_dict(d: dict, reverse=True) -> dict: + return { + key: d[key] + for key in sorted(d, key=d.get, reverse=reverse) + } + def main(filename: str): validnames = { 'wp-login.php', @@ -32,7 +38,7 @@ def main(filename: str): } hitfiles = {}.fromkeys(validnames, 0) requesters = {} - ips = {} + locations = {} for ip, date, time, timezone, status, method, file in filterwords(filename, validnames): hitfiles[file] += 1 @@ -42,14 +48,13 @@ def main(filename: str): requesters[ip] = 1 latlon = get_ip_latlon(ip) if latlon is not None: - ips[ip] = latlon + locations[ip] = latlon + hitfiles = sorted_dict(hitfiles) print(f'{hitfiles = }') + requesters = sorted_dict(requesters) print(f'{requesters = }') - print(f'{ips = }') - req_list = list(requesters) - req_list.sort(key=req_list.count) - print(f'{req_list = }') + print(f'{locations = }') def get_ip_latlon(ip: str) -> (int, int): # make a reqest to ip-api.com to associate an ip to a