Последний шаг подготовки: завести папку для бота и поставить в неё библиотеки. Для этого есть виртуальное окружение: у проекта своя отдельная «полка» с библиотеками, и они не мешают ничему другому на компьютере.
Папка проекта
- Создай папку, например
expense-bot, в Documents. - В VS Code: File, Open Folder, выбери её.
- Открой терминал в VS Code (Terminal, New Terminal): он сразу окажется в этой папке.
Виртуальное окружение
Создаём (одна команда, один раз):
Windows
python -m venv .venvMac
python3 -m venv .venvВ папке появится .venv. Теперь окружение надо включить.
Windows
.venv\Scripts\activateMac
source .venv/bin/activateЕсли получилось, в начале строки терминала появится (.venv). Окружение включают каждый раз, когда открываешь новый терминал.
[скриншот: терминал с (.venv) в начале строки]
Библиотеки
Создай в папке файл requirements.txt с таким содержимым:
python-telegram-bot[job-queue]>=22,<23
python-dotenv>=1.0
# Часовые пояса (Europe/Moscow) на Windows
tzdatapython-telegram-bot[job-queue]— общается с Телеграмом; частьjob-queueнужна для ежедневного напоминания;python-dotenv— читает секретный токен из файла.env, чтобы он не лежал в коде;tzdata— база часовых поясов. Бот считает время по Москве, а на Windows своей такой базы у Python нет. На Mac пакет просто не пригодится, вреда от него нет.- Строка с
#— комментарий для тебя,pipеё пропускает.
Установи их (в включённом окружении python и pip работают и на Mac):
pip install -r requirements.txtПодожди, пока закончится установка. Проверка:
pip listВ списке должны быть python-telegram-bot, python-dotenv и tzdata.
Где застревают
Windows: «выполнение сценариев отключено» при активации. PowerShell блокирует скрипты. Выполни один раз:
Set-ExecutionPolicy -Scope CurrentUser RemoteSignedСогласись, закрой терминал, открой заново и активируй ещё раз.
Нет
(.venv)в начале строки. Окружение не включено. Повтори команду активации из папки проекта.pipне найден. Скорее всего, окружение выключено. Включи и повтори.Ошибка сети при установке. Повтори команду. Если не помогает, проверь интернет.
Дальше
Библиотеки на месте. В следующем уроке проверим всё вместе: нейронка напишет первую программу, а ты её запустишь.
Проверено: —