Ответы пользователя по тегу Асинхронное программирование
  • Проверка бд каждую минуту без блокировки бота aiogram?

    @Niksssan
    Подобный вопрос

    import asyncio
    
    from aiogram import Bot, types
    from aiogram.dispatcher import Dispatcher
    from aiogram.utils import executor
    
    DELAY = 7200
    
    bot = Bot(token='BOT TOKEN HERE')
    dp = Dispatcher(bot)
    
    @dp.message_handler(commands=['start', 'help'])
    async def send_welcome(message: types.Message):
        await message.reply("Hi!\nI'm EchoBot!\nPowered by aiogram.")
    
    
    async def update_price():
        ...
    
    
    def repeat(coro, loop):
        asyncio.ensure_future(coro(), loop=loop)
        loop.call_later(DELAY, repeat, coro, loop)
    
    
    if __name__ == '__main__':
        loop = asyncio.get_event_loop()
        loop.call_later(DELAY, repeat, update_price, loop)
        executor.start_polling(dp, loop=loop)
    Ответ написан
    Комментировать