Извиняюсь за некропостинг, но возможно кому-то это пригодится. Искал подобное решение, но для startup (хотя там и on_shutdown есть) -
https://docs.aiogram.dev/en/latest/dispatcher/webh...
У объекта dp вызвать метод startup.register (или shutdown.register)
async def on_startup(bot: Bot) -> None:
await print('it's working!')
def main() -> None:
dp = Dispatcher()
dp.include_router(router)
dp.startup.register(on_startup)
bot = Bot(TOKEN, parse_mode=ParseMode.HTML)
app = web.Application()
webhook_requests_handler = SimpleRequestHandler(
dispatcher=dp,
bot=bot,
secret_token=WEBHOOK_SECRET,
)
webhook_requests_handler.register(app, path=WEBHOOK_PATH)
setup_application(app, dp, bot=bot)
web.run_app(app, host=WEB_SERVER_HOST, port=WEB_SERVER_PORT)
if __name__ == "__main__":
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
main()