Ошибка SyntaxError: invalid syntax у вас потому, что строка с токеном бота указана неправильно:
python
КопироватьРедактировать
bot = Bot(8001906414:AAHM0Asi0Tm_Pihavb8Bac1FWHAY780Hn** )
В Python токен должен быть передан как строка в кавычках, например:
python
КопироватьРедактировать
bot = Bot("8001906414:AAHM0Asi0Tm_Pihavb8Bac1FWHAY780Hn* *")
Кроме того, у вас есть еще пара моментов, которые стоит поправить:
- В вашем коде bot инициализируется внутри функции main(), а до этого вы уже объявили dp = Dispatcher() вне функции. Лучше объявлять Dispatcher после создания Bot, потому что Dispatcher связывается с ботом.
- Также dp.start_polling() вызывается так, что bot надо передавать в Dispatcher при его создании, а не в start_polling().
- Отступы в функции main() отсутствуют.
Вот исправленный минимальный пример кода:
python
КопироватьРедактировать
from aiogram import Bot, Dispatcher
from config import TOKEN # импортируем токен из config
import asyncio
from routers.handlers import router
async def main():
bot = Bot(TOKEN)
dp = Dispatcher(bot)
dp.include_router(router)
await dp.start_polling()
asyncio.run(main())
Обратите внимание:
- Токен передается как строка — у вас он уже должен быть в config.py в переменной TOKEN.
- Dispatcher создается с bot в качестве аргумента.
- Отступы исправлены.
- start_polling() вызывается без аргументов.
ответ чатажпт