refactor: add ConfigError and Lolz error handling
Build and Push (dev) / build (push) Successful in 10m53s

This commit is contained in:
2026-08-07 05:08:46 +05:00
parent b7a7508654
commit 76e6659c00
5 changed files with 208 additions and 83 deletions
+18 -6
View File
@@ -325,7 +325,7 @@ class TelegramStarsBot:
except Exception as e:
logger.exception(f"Критическая ошибка в цикле поднятия темы: {e}")
await asyncio.sleep(self.config.check_interval)
await asyncio.sleep(self.config.bump_check_interval)
async def start(self):
is_first_login = not os.path.exists(f"{self.SESSION_NAME}.session")
@@ -341,9 +341,15 @@ class TelegramStarsBot:
api_hash=self.config.api_hash,
)
await self.client.start()
await self.parse_existing_posts()
await self.client.stop()
try:
await self.client.start()
await self.parse_existing_posts()
except Exception as e:
logger.error(f"Ошибка при парсинге существующих постов: {e}")
raise
finally:
if self.client and self.client.is_connected:
await self.client.stop()
logger.info(
"Парсинг завершен. Все существующие посты добавлены в обработанные."
@@ -372,11 +378,17 @@ class TelegramStarsBot:
logger.info("Бот в работе. Для остановки нажмите Ctrl+C.")
# _main_loop - Основной цикл для остлеживания темы
# _bump_look - Цикл для авто-поднятия темы
# _bump_loop - Цикл для авто-поднятия темы
await asyncio.gather(self._main_loop(), self._bump_loop())
except Exception as e:
logger.error(f"Ошибка в главном процессе бота: {e}")
raise
finally:
if self.client and self.client.is_connected:
await self.client.stop()
try:
await self.client.stop()
except Exception as e:
logger.error(f"Ошибка при остановке клиента: {e}")
logger.info("Бот остановлен.")