master
Ernest Litvinenko 2024-03-12 12:27:57 +03:00
parent e18f8b26e4
commit b0963a396e
2 changed files with 5 additions and 3 deletions

Binary file not shown.

View File

@ -47,6 +47,7 @@ class Parser:
if not PARSER_ALIVE: if not PARSER_ALIVE:
raise KeyboardInterrupt("Бот остановлен по запросу") raise KeyboardInterrupt("Бот остановлен по запросу")
return func(self, *args, **kwargs) return func(self, *args, **kwargs)
return wrapper return wrapper
def __init__(self): def __init__(self):
@ -260,7 +261,7 @@ def parse_runner():
time.sleep(60) time.sleep(60)
parser_thread = threading.Thread(target=parse_runner, daemon=True) parser_thread = None
@dp.message(CommandStart()) @dp.message(CommandStart())
@ -292,7 +293,8 @@ async def message_handler(message: Message):
await bot.send_message(chat_id, await bot.send_message(chat_id,
f"Пользователь {message.from_user.full_name} запускает бот", f"Пользователь {message.from_user.full_name} запускает бот",
reply_markup=markup_shutdown) reply_markup=markup_shutdown)
if not parser_thread.is_alive(): if not parser_thread or not parser_thread.is_alive():
parser_thread = threading.Thread(target=parse_runner, daemon=True)
parser_thread.start() parser_thread.start()
return return
if message.text == "Остановить Бот": if message.text == "Остановить Бот":
@ -317,6 +319,6 @@ async def main():
disable_notification=True) disable_notification=True)
await dp.start_polling(bot) await dp.start_polling(bot)
if __name__ == "__main__": if __name__ == "__main__":
asyncio.run(main()) asyncio.run(main())