diff --git a/bot.py b/bot.py index 77d871e..63e9561 100755 --- a/bot.py +++ b/bot.py @@ -5,7 +5,7 @@ import os import disnake from disnake import OptionChoice, OptionType, Option from disnake.ext import commands -from __init__ import version_info +from __init__ import version_info as ver from lib import work_with_cogs from lib import preload_checks, determine_prefix from lib import logger @@ -34,7 +34,7 @@ asyncio.run(work_with_cogs('load', bot)) async def on_ready(): logger.info(f'Bot started') logger.info('We have logged in as {0.user}'.format(bot)) - logger.info('Version of bot is - v{0.major}.{0.minor}.{0.micro}-{0.releaselevel}'.format(version_info)) + logger.info(f'Version of bot is - v{ver.major}.{ver.minor}.{ver.micro}-{ver.releaselevel}') @bot.slash_command( diff --git a/cogs/audio.py b/cogs/audio.py index 677fe5b..87750e0 100644 --- a/cogs/audio.py +++ b/cogs/audio.py @@ -41,8 +41,8 @@ class Audio(commands.Cog, name='Audio'): def_audio_ls = await list_files() if def_audio_db or audio_db is not None: - if def_audio_db is None: def_audio_db = [] - if audio_db is None: audio_db = [] + if not def_audio_db: def_audio_db = [] + if not audio_db: audio_db = [] logger.info(f'Play audio from DB') full_audio = def_audio_db + audio_db await play_audio(f'audio/{random.choice(full_audio)}', self.bot, after.channel) diff --git a/cogs/info.py b/cogs/info.py index 1e98b1d..532e72d 100644 --- a/cogs/info.py +++ b/cogs/info.py @@ -4,7 +4,7 @@ import disnake import psutil from disnake.ext import commands -from __init__ import version_info as _ve +from __init__ import version_info as ver from lib import determine_prefix, determine_time from lib import logger @@ -26,6 +26,7 @@ class Bot_info(commands.Cog, name='Bot Info'): title=f"General information", description=f"General information on about bot", ) + emb.set_thumbnail(self.bot.user.avatar.url) emb.add_field(name="System info:", value=f"Memory Usage: {round(_process.memory_info().rss / 2 ** 20, 2)} Mb\n" f"CPU Usage: {_process.cpu_percent()}%\n" f'Bot ping: {round(self.bot.latency * 1000)}\n' @@ -33,7 +34,7 @@ class Bot_info(commands.Cog, name='Bot Info'): f"Max audio duration: {determine_time(inter)} sec\n" ) emb.add_field(name="Bot info:", value=f"Bot owner: <@{self.bot.owner_id}>\n" - f"Bot version: {_ve.major}.{_ve.minor}.{_ve.micro}-{_ve.releaselevel}") + f"Bot version: {ver.major}.{ver.minor}.{ver.micro}-{ver.releaselevel}") emb.set_footer(text="Information requested by: {}".format(inter.author.display_name)) await inter.response.send_message(embed=emb, ephemeral=True) diff --git a/lib/Comands.py b/lib/Comands.py index a464215..fc6b020 100644 --- a/lib/Comands.py +++ b/lib/Comands.py @@ -49,9 +49,9 @@ async def read_json(guild: int, _param: str): guild_conf = _json[f"{guild}"] try: parameter = guild_conf[f"{_param}"] - except: + except KeyError: pass - except: + except KeyError: pass return parameter @@ -83,12 +83,12 @@ def determine_prefix(bot, msg): with open(os.getenv('CONF_FILE'), 'r', encoding='utf-8') as f: # Open the JSON try: _json = json.load(f) # Load the custom prefixes - except: + except json.JSONDecodeError: _json = {} try: parameter = _json[f"{msg.guild.id}"]["prefix"] # Read prefix from json if is setted up - except: + except KeyError: pass return parameter @@ -103,11 +103,11 @@ def determine_time(msg): with open(os.getenv('CONF_FILE'), 'r', encoding='utf-8') as f: # Open the JSON try: _json = json.load(f) # Load the custom prefixes - except: + except json.JSONDecodeError: _json = {} try: parameter = _json[f"{msg.guild.id}"]["seconds"] # Read prefix from json if is setted up - except: + except KeyError: pass return parameter diff --git a/lib/ListGenerator.py b/lib/ListGenerator.py index befed08..a0892e9 100644 --- a/lib/ListGenerator.py +++ b/lib/ListGenerator.py @@ -7,27 +7,23 @@ class ListGenerator: def __init__(self, path: str = None): self.path = path self.list: list = self._lister(self.path) - self._size = len(self.list) + try: + self._size = len(self.list) + except TypeError: + pass self._current_index = 0 def __str__(self) -> str: - if self.path: - return self.name - else: - return 'Audio iter generator' - - @property - def name(self) -> str: - return self.list[self._current_index] + return 'Audio iter generator' @classmethod def _lister(cls, path) -> list: - _dict: list = [] + _list: list = [] try: - for _files in os.walk(path): - _dict.extend(_files) + for f in os.walk(path): + _list.extend(f) break - return _dict[2] + return sorted(_list[2]) except TypeError: pass @@ -40,16 +36,17 @@ class ListGenerator: class _FileAttrs: - def __init__(self, name, path, type): + def __init__(self, name, path, type, exc): self.name = name self.path = path - self.type = type + self.mimetype = type + self.exc = exc def __str__(self): return self.name def __repr__(self): - return f' >' + return f' >' class _ListGenerationIter: @@ -70,12 +67,21 @@ class _ListGenerationIter: guess = mimetypes.guess_type(f'{self._path}/{self._list[self._current_index]}')[0] return guess + @property + def _exc(self) -> str: + try: + _ret = self._list[self._current_index].split('.')[-1] + except AttributeError: + _ret = None + return _ret + def __next__(self): if self._current_index < self._size: _name = self._list[self._current_index] _path = self._path - _type = self.type + _type = self._type + _exc = self._exc self._current_index += 1 - memb = _FileAttrs(_name, _path, _type) + memb = _FileAttrs(_name, _path, _type, _exc) return memb raise StopIteration diff --git a/lib/Logger.py b/lib/Logger.py index e003e90..a117046 100644 --- a/lib/Logger.py +++ b/lib/Logger.py @@ -23,14 +23,14 @@ class _CustomFormatter(logging.Formatter): record = _CustomFormatter.old_factory(*args, **kwargs) _module = record.module _levelname = record.levelname - if len(record.module) % 2 == 0 and len(record.module) < 12: - _module = ' ' * ((12 - len(record.module)) // 2) + record.module + ' ' * ((12 - len(record.module)) // 2) - elif len(record.module) % 2 == 1 and len(record.module) <12: - _module = ' ' * ((12 - len(record.module)) // 2) + record.module + ' ' * ((12 - len(record.module)) // 2 + 1) - if len(record.levelname) % 2 == 0 and len(record.levelname) < 8: - _levelname = ' ' * ((8 - len(record.levelname)) // 2) + record.levelname + ' ' * ((8 - len(record.levelname)) // 2) + if len(_module) % 2 == 0 and len(_module) < 12: + _module = ' ' * ((12 - len(_module)) // 2) + _module + ' ' * ((12 - len(_module)) // 2) + elif len(_module) % 2 == 1 and len(_module) < 12: + _module = ' ' * ((12 - len(_module)) // 2) + record.module + ' ' * ((12 - len(_module)) // 2 + 1) + if len(_levelname) % 2 == 0 and len(_levelname) < 8: + _levelname = ' ' * ((8 - len(_levelname)) // 2) + _levelname + ' ' * ((8 - len(_levelname)) // 2) elif len(record.levelname) % 2 == 1 and len(record.module) < 8: - _levelname = ' ' * ((8 - len(record.levelname)) // 2) + record.levelname + ' ' * ((8 - len(record.levelname)) // 2 + 1) + _levelname = ' ' * ((8 - len(_levelname)) // 2) + _levelname + ' ' * ((8 - len(_levelname)) // 2 + 1) record.module = _module record.levelname = _levelname return record diff --git a/lib/__init__.py b/lib/__init__.py index 564505b..d1bbc5f 100644 --- a/lib/__init__.py +++ b/lib/__init__.py @@ -8,4 +8,4 @@ from .Logger import * from .Comands import * from .Player import * from .DB_Worker import * -from .CogsPrep import * \ No newline at end of file +from .CogsPrep import *