small tweaks
This commit is contained in:
12
data.py
12
data.py
@@ -122,18 +122,6 @@ class MsgData:
|
||||
|
||||
return res
|
||||
|
||||
def biggest_daddy(self, days, top: int = None):
|
||||
df = self.emoji_totals('daddy', days)
|
||||
if top is not None:
|
||||
df = df.iloc[:top]
|
||||
width = max(list(map(lambda s: len(str(s)), df.index.values)))
|
||||
res = f'Daddy totals, past {days} days\n'
|
||||
res += '\n'.join(
|
||||
f"`{name.ljust(width + 1)}with {row['total']:<2.0f} total`"
|
||||
for name, row in df.iterrows()
|
||||
)
|
||||
return res
|
||||
|
||||
async def biggest_single(self, client: discord.Client, emoji: str, days: int) -> str:
|
||||
data = self.emoji_totals(emoji_name=emoji, days=days)
|
||||
username = data.index[0]
|
||||
|
||||
8
msg.py
8
msg.py
@@ -5,6 +5,7 @@ from typing import Dict, Iterable
|
||||
|
||||
import discord
|
||||
import pandas as pd
|
||||
import pandas.errors
|
||||
from dotenv import load_dotenv
|
||||
|
||||
LOGGER = logging.getLogger(__name__)
|
||||
@@ -89,8 +90,11 @@ def emoji_messages(msg_df, react_df, emoji_name: str, days: int = 10) -> pd.Data
|
||||
LOGGER.info(
|
||||
f'Found {reacted_msgs.shape[0]} messages for the leaderboard, {reactions["count"].sum():.0f} reactions total')
|
||||
|
||||
reacted_msgs['count'] = reacted_msgs.index.to_series().apply(
|
||||
lambda idx: reactions.loc[pd.IndexSlice[idx, emoji_name], 'count'])
|
||||
try:
|
||||
reacted_msgs['count'] = reacted_msgs.index.to_series().apply(
|
||||
lambda idx: reactions.loc[pd.IndexSlice[idx, emoji_name], 'count'])
|
||||
except pandas.errors.InvalidIndexError as e:
|
||||
LOGGER.error(f'{e}\n{reacted_msgs[reacted_msgs.index.duplicated()]}')
|
||||
|
||||
reacted_msgs = reacted_msgs[
|
||||
reacted_msgs['created'] >= (datetime.today() - timedelta(days=days)).astimezone()]
|
||||
|
||||
@@ -41,7 +41,7 @@ class RoboPage(discord.Client):
|
||||
client=self,
|
||||
limit=3000,
|
||||
# limit=20,
|
||||
days=14,
|
||||
days=30,
|
||||
)
|
||||
self.data.to_sql('messages.db')
|
||||
LOGGER.info(f'{self.data.msgs.shape[0]} messages total')
|
||||
|
||||
Reference in New Issue
Block a user