Files
bot_vk_ikp_prodagi/start_bot.bat
T
Kenik 06847fa87e start_bot.bat: запуск бота на Python 3.11 (py -3.11)
Переустановлен Python 3.11 (в прежней установке пропал python.exe), зависимости
поставлены в него. .bat теперь использует py -3.11 для запуска и pip, чтобы бот
стабильно работал на 3.11 независимо от того, куда указывает системный python.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 18:07:48 +03:00

49 lines
1.9 KiB
Batchfile

@echo off
chcp 65001 >nul
cd /d "%~dp0"
title Бот БАЗА (VK)
REM === Подготовка окружения при первом запуске ===
REM 1) Бот работает на Python 3.11 (через launcher py -3.11)
py -3.11 --version >nul 2>&1
if errorlevel 1 (
echo [ОШИБКА] Python 3.11 не найден. Установите Python 3.11 и запустите снова.
pause
exit /b
)
REM 2) Нет .env — создаём из шаблона и открываем на заполнение
if not exist ".env" (
if exist ".env.example" (
copy /Y ".env.example" ".env" >nul
echo.
echo Создан файл .env из шаблона. Впишите VK_TOKEN, VK_GROUP_ID, ADMIN_IDS и др.,
echo сохраните файл и запустите бота снова.
notepad ".env"
pause
exit /b
) else (
echo [ОШИБКА] Нет ни .env, ни .env.example. Настройте конфигурацию вручную.
pause
exit /b
)
)
REM 3) Устанавливаем зависимости в Python 3.11 (если уже стоят — быстро)
echo Проверка зависимостей...
py -3.11 -m pip install -r requirements.txt >nul 2>&1
REM 4) Защита от нескольких экземпляров: глушим старые процессы бота перед стартом
powershell -NoProfile -Command "Get-CimInstance Win32_Process | Where-Object { $_.Name -eq 'python.exe' -and $_.CommandLine -like '*bot.py*' } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force }" >nul 2>&1
:loop
echo.
echo [%date% %time%] Запуск бота БАЗА...
py -3.11 bot.py
echo.
echo [%date% %time%] Бот остановился (код %errorlevel%). Перезапуск через 5 секунд...
echo Нажмите Ctrl+C, чтобы выйти полностью.
timeout /t 5 /nobreak >nul
goto loop