From 878012026e95bf7e19a13944eb0a6dd09db3dda4 Mon Sep 17 00:00:00 2001 From: Alessandro Maggio Date: Fri, 22 Jan 2021 11:55:30 +0100 Subject: [PATCH] Reduce string size with: event.bet.get_outcome and millify --- TwitchChannelPointsMiner/TwitchChannelPointsMiner.py | 5 ++--- TwitchChannelPointsMiner/classes/Bet.py | 5 +++++ TwitchChannelPointsMiner/classes/Logger.py | 2 +- TwitchChannelPointsMiner/classes/TwitchBrowser.py | 9 +++------ requirements.txt | 3 ++- 5 files changed, 13 insertions(+), 11 deletions(-) diff --git a/TwitchChannelPointsMiner/TwitchChannelPointsMiner.py b/TwitchChannelPointsMiner/TwitchChannelPointsMiner.py index 070e952..e48238c 100644 --- a/TwitchChannelPointsMiner/TwitchChannelPointsMiner.py +++ b/TwitchChannelPointsMiner/TwitchChannelPointsMiner.py @@ -98,7 +98,7 @@ class TwitchChannelPointsMiner: streamers += [fw for fw in followers_array if fw not in streamers] logger.info( - f"Loading data for {len(streamers)} streamers. This operation can take a while. Please wait ...", + f"Loading data for {len(streamers)} streamers. This operation can take a while ...", extra={"emoji": ":nerd_face:"}, ) for streamer_username in streamers: @@ -130,8 +130,7 @@ class TwitchChannelPointsMiner: self.twitch_browser = TwitchBrowser( self.twitch.twitch_login.get_auth_token(), self.session_id, - settings=self.browser_settings, - less_printing=self.logger_settings.less, + settings=self.browser_settings ) self.twitch_browser.init() diff --git a/TwitchChannelPointsMiner/classes/Bet.py b/TwitchChannelPointsMiner/classes/Bet.py index cc92f34..22cdff1 100644 --- a/TwitchChannelPointsMiner/classes/Bet.py +++ b/TwitchChannelPointsMiner/classes/Bet.py @@ -2,6 +2,7 @@ import logging import copy from enum import Enum, auto +from millify import millify logger = logging.getLogger(__name__) @@ -77,6 +78,10 @@ class Bet: def __repr__(self): return f"Bet(TotalUsers={self.total_users}, TotalPoints={self.total_points}), Decision={self.decision})\n\t\tOutcome0({self.outcomes[0]})\n\t\tOutcome1({self.outcomes[1]})" + def get_outcome(self, index): + outcome = self.outcomes[index] + return f"{outcome['title']} ({outcome['color']}), Points: {millify(outcome['total_points'])}, Users: {millify(outcome['total_users'])} ({outcome['percentage_users']}%), Odds: {outcome['odds']} ({outcome['odds_percentage']}%)" + def __clear_outcomes(self): for index in range(0, len(self.outcomes)): keys = copy.deepcopy(list(self.outcomes[index].keys())) diff --git a/TwitchChannelPointsMiner/classes/Logger.py b/TwitchChannelPointsMiner/classes/Logger.py index 032fef5..1c127eb 100644 --- a/TwitchChannelPointsMiner/classes/Logger.py +++ b/TwitchChannelPointsMiner/classes/Logger.py @@ -55,7 +55,7 @@ def configure_loggers(username, settings): fmt=( "%(asctime)s - %(levelname)s - [%(funcName)s]: %(message)s" if settings.less is False - else "%(asctime)s : %(message)s" + else "%(asctime)s - %(message)s" ), datefmt=("%d/%m/%y %H:%M:%S" if settings.less is False else "%d/%m %H:%M:%S"), print_emoji=settings.emoji, diff --git a/TwitchChannelPointsMiner/classes/TwitchBrowser.py b/TwitchChannelPointsMiner/classes/TwitchBrowser.py index 50e01f4..29bfb85 100644 --- a/TwitchChannelPointsMiner/classes/TwitchBrowser.py +++ b/TwitchChannelPointsMiner/classes/TwitchBrowser.py @@ -419,14 +419,11 @@ class TwitchBrowser: decision = event.bet.calculate(event.streamer.channel_points) if decision["choice"]: selector_index = 1 if decision["choice"] == "A" else 2 - decision_outcome = ( - event.bet.outcomes[0] - if decision["choice"] == "A" - else event.bet.outcomes[1] - ) + decision_outcome = event.bet.get_outcome(selector_index - 1) + try: logger.info( - f"Going to write: {decision['amount']} on input {decision['choice']}\n\t\t{decision_outcome}", + f"Going to write: {decision['amount']} on input {decision['choice']}: {decision_outcome}", extra={"emoji": ":wrench:"}, ) if ( diff --git a/requirements.txt b/requirements.txt index 4d16a69..d5922a8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,4 +4,5 @@ browser_cookie3 pillow selenium python-dateutil -emoji \ No newline at end of file +emoji +millify \ No newline at end of file