diff options
Diffstat (limited to 'tracker.0x7c0.com/update-stats.py')
-rwxr-xr-x | tracker.0x7c0.com/update-stats.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tracker.0x7c0.com/update-stats.py b/tracker.0x7c0.com/update-stats.py new file mode 100755 index 0000000..2af62eb --- /dev/null +++ b/tracker.0x7c0.com/update-stats.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 + +import fileinput +import os +import shutil +import sys +import urllib.request + +WWW = '/var/www/tracker.0x7c0.com' + +stats = dict.fromkeys(['torrents', 'connections', 'uptime']) + +conn = urllib.request.Request( + 'http://127.0.0.1:6969/stats?format=txt&mode=conn', +) +r = urllib.request.urlopen(conn).read().decode('utf-8').split('\n') + +stats['uptime'] = int(int(r[2].split()[0]) / 3600) +stats['connections'] = r[3].split()[2] + +conn = urllib.request.Request( + 'http://127.0.0.1:6969/stats?format=txt' +) + +r = urllib.request.urlopen(conn).read().decode('utf-8').split('\n') + +stats['torrents'] = r[2].split()[2] + +s = ( + f'The tracker has been up for {stats["uptime"]} hrs, ' + f'serving {stats["torrents"]} torrents at ' + f'{stats["connections"]} requests per second.\n' +) + +for line in fileinput.input([os.path.join(WWW, 'index.html')], inplace=True): + if line.strip().startswith('The tracker has been'): + line = s + sys.stdout.write(line) + +#import code +#code.interact(local=locals()) |