@cornwr

Как установить нужную версии aiogram PyCharm?

Есть код для бота на питоне, который должен проверять подписку пользователя на требуемый телеграмм канал. Код написан. В части кода где импортируются библиотеки PyCharm подчеркивает Executor, который нужен для последней строчки кода ( для того чтобы бот запустился в принципе ). По моему предположению, проблема в версии Aiogram, требуемая версия которой aiogram2.25.2. Прошу помощи! Ниже укажу код, и ошибку которую бьет PyCharm при попытке установить требуемую версию Aiogram.

from aiogram import Bot, Dispatcher, executor, types
TOKEN = 'Здесь токен моего бота'

bot = Bot(token=TOKEN)
dp = Dispatcher(bot)


@dp.message_handler(commands='start')
async def start(mes):
    await mes.answer('Привет! Я бот, который проверит твою подписку на канал.')
    await check_subscribe(mes)


@dp.message_handler()
async def check_subscribe(mes):
    chat_id = 'айди канала на который нужна подписка'
    user_channel_status = await bot.get_chat_member(chat_id=chat_id,
                                                    user_id=mes.from_user.id)

    if user_channel_status['status'] != 'left':
        await mes.answer('Вы подписанны на канал, можете получать контент!')
        await send_content(mes)

    else:
        markup = types.InlineKeyboardMarkup()
        markup.add(types.InlineKeyboardButton('Подписаться',
                                              url='https://t.me/your_channel'))

        await mes.answer('Для получения контента необходимо подписаться на канал!',
                         reply_markup=markup)
        await mes.answer('После подписки напишите любое сообщение для проверки')


@dp.message_handler()
async def send_content(mes):
    await mes.answer('Контент')


if __name__ == '__main__':
    executor.start_polling(dp)

Напомню, PyCharm не дает установить Aiogram версии 2.25.2. При вводе в терминал следующей команды pip install aiogram==2.25.2 выдет ошибку:
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.41.34120\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for aiohttp
Failed to build aiohttp
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (aiohttp)

Прошу помощи!
  • Вопрос задан
  • 723 просмотра
Пригласить эксперта
Ответы на вопрос 1
Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting
$ cd /d project
$ python -m venv venv
$ venv\Scripts\activate
$ pip install aiogram==2.25.2
$ pip install aiohttp==3.8.1

Либо, попробуйте более старую версию aiohttp:
$ pip install aiogram==2.25.2
$ pip install aiohttp==3.7.4

Затем, под виртуальным окружением (как под грибами), запускаем скрипт, визуально, это будет выглядеть примерно так:
user@PC C:\project
$ venv\Scripts\activate
(venv) user@PC C:\project
$ python main.py

P.S. команды под Windows, для Linux некоторые из них будут слегка отличаться.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы