Многофункциональный бот для ВКонтакте. В данный момент находится в стадии активной разработки.
poetry env use python3.12
poetry install
poetry run python kali/main.py
Work in progress.
После того, как склонировал этот проект, установи Poetry, если ещё не сделал этого:
curl -sSL https://install.python-poetry.org | python3 -
# Добавить следующую строку в ~/.zshrc или ~/.bashrc в зависимости от своего шелла:
export PATH="/home/vertex/.local/bin:$PATH"
При помощи pip:
pip install poetry
Или вручную при помощи PowerShell:
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
# Добавить в PATH следующую строку:
%APPDATA%\Python\Scripts
poetry env use python3.12
Советую также включить хранение venv в директории проекта, чтобы вдруг не потерять его и если вдруг IDE откажется резалвить импорты:
poetry config virtualenvs.in-project true
Для Visual Studio Code в репозитории лежит файл с настройками проекта, где указан путь к Python внутри venv и все модули должны адекватно отображаться, но если вдруг нет, то в настройках проекта укажи путь к Python, параметр Python: Default Interpreter Path
, значение .venv/bin/python
.
Основные установленные зависимости описываются в pyproject.toml
. Все зависимости проекта с конкретными версиями, в том числе дочерние основных, описываются внутри poetry.lock
файла. Устанавливаются и удаляются очень просто:
poetry add vkbottle
poetry add vkbottle@^4.3 # конкретная версия
poetry add vkbottle --dev # как dev зависимость (не знаю зачем нам это нужно)
poetry add vkbottle --lock # добавить в poetry.lock, но не устанавливать в среду
poetry remove vkbottle
Посмотреть дерево зависимостей можно следующей командой:
poetry show --tree
Выполнение команд внутри виртуальной среды осуществляется так:
poetry run <команда>
poetry run python kali/main.py
# или можно войти в шелл используя текущий venv:
poetry shell
Если вдруг будем публиковать релизы, то собрать проект можно при помощи следующей команды:
poetry build
Артефакты появятся в директории dist
в корне проекта.
С ними мы пока ещё не разобрались.