Cron job and english translation. #2

Closed
mwoolweaver wants to merge 30 commits from cron-job into master
Showing only changes of commit 7c16fbf119 - Show all commits

View File

@ -3,8 +3,12 @@
import sys
from configparser import ConfigParser
from datetime import datetime
import psutil
import os
from hurry.filesize import size
from uptime import uptime
import tweepy
import platform
from requests import get
config = ConfigParser()
@ -28,6 +32,19 @@ if not (api_path, consumer_key, consumer_key, consumer_secret, access_token, acc
print('2 Please check your config.ini.')
sys.exit(1)
def pretty_time_delta(seconds):
seconds = int(seconds)
days, seconds = divmod(seconds, 86400)
hours, seconds = divmod(seconds, 3600)
minutes, seconds = divmod(seconds, 60)
if days > 0:
return '%dd %dh %dm %ds' % (days, hours, minutes, seconds)
elif hours > 0:
return '%dh %dm %ds' % (hours, minutes, seconds)
elif minutes > 0:
return '%dm %ds' % (minutes, seconds)
else:
return '%ds' % (seconds,)
def comma_value(num):
"""Helper function for thousand separators"""
@ -63,15 +80,16 @@ def get_pihole_data():
return data
print(platform.system())
def construct_tweet(data):
today = datetime.today().strftime("%m/%d/%Y")
tweet = 'Pi-hole statistics for {date}:\n'.format(date=today)
tweet = '#ComputeHole: The @The_Pi_Hole on @GoogleCompute\n'
tweet += 'Ads Blocked: ' + str(comma_value(data['ads_blocked_today']))
tweet += ' (' + str(round(data['ads_percentage_today'], 2)).replace('.', '.') + ' %)\n'
tweet += ' (' + str(round(data['ads_percentage_today'], 2)).replace('.', '.') + '%)\n'
tweet += 'Total DNS Queries: ' + str(comma_value(data['dns_queries_today'])) + '\n'
tweet += 'Domains on Blocklist: ' + str(comma_value(data['domains_being_blocked'])) + '\n'
tweet += '#SkyHole: The @The_Pi_Hole on @GoogleCompute.'
tweet += 'Uptime: ' + pretty_time_delta(uptime()) + '\n' + 'Load Avg: ' + str(os.getloadavg()) + '\n' + 'Ram Usage: ' + str(psutil.virtual_memory()[2]) + '% ' + str(size(psutil.virtual_memory()[3])) + '/' + str(size(psutil.virtual_memory()[1])) + '\n'
tweet += 'Kernel/OS: ' + str(platform.platform())
return tweet