Files
dy/install.bat
2026-07-23 17:56:25 +08:00

141 lines
3.2 KiB
Batchfile

@echo off
setlocal EnableExtensions
cd /d "%~dp0"
echo ========================================
echo 抖音客服系统 - 依赖安装 (Windows)
echo ========================================
echo.
REM --- 查找 Python 3.10+ ---
set "PY_CMD="
for %%P in (python py) do (
if not defined PY_CMD (
%%P -c "import sys; sys.exit(0 if sys.version_info>=(3,10) else 1)" >nul 2>&1
if not errorlevel 1 set "PY_CMD=%%P"
)
)
if not defined PY_CMD (
for %%V in (3.11 3.10) do (
py -%%V -c "import sys" >nul 2>&1
if not errorlevel 1 if not defined PY_CMD set "PY_CMD=py -%%V"
)
)
if not defined PY_CMD (
echo [错误] 需要 Python 3.10 或更高版本
echo 请从 https://www.python.org/downloads/ 安装并勾选 Add to PATH
pause
exit /b 1
)
for /f "tokens=*" %%v in ('%PY_CMD% --version 2^>^&1') do echo [OK] %%v
REM --- Node.js ---
node --version >nul 2>&1
if errorlevel 1 (
echo [警告] 未找到 Node.js,私信签名将无法工作,请安装 Node 18+ LTS
) else (
for /f "tokens=*" %%v in ('node --version 2^>^&1') do echo [OK] Node %%v
)
echo.
REM --- 1. venv ---
echo [1/6] Python 虚拟环境...
cd backend
if not exist ".venv\Scripts\python.exe" (
echo 创建 .venv ...
%PY_CMD% -m venv .venv
if errorlevel 1 (
echo [错误] 创建虚拟环境失败
cd ..
pause
exit /b 1
)
)
call .venv\Scripts\python.exe -m pip install -U pip -q
call .venv\Scripts\pip install -r requirements.txt
if errorlevel 1 (
echo [错误] pip install 失败
cd ..
pause
exit /b 1
)
echo Python 依赖完成
echo.
REM --- 2. Playwright ---
echo [2/6] Playwright Chromium...
set "PLAYWRIGHT_BROWSERS_PATH=%LOCALAPPDATA%\ms-playwright"
call .venv\Scripts\playwright install chromium
if errorlevel 1 (
echo [警告] playwright install 失败
) else (
echo Chromium 完成
)
echo.
REM --- 3. IM ---
echo [3/6] IM 签名依赖...
cd rpa_engine\douyin_im\static
if exist package.json (
call npm install --no-fund --no-audit
if errorlevel 1 (
echo [错误] IM npm install 失败
cd ..\..\..\..
pause
exit /b 1
)
echo jsrsasign 完成
)
cd ..\..\..\..
echo.
REM --- 4. 前端 ---
echo [4/6] 前端依赖...
cd frontend
if exist package.json (
call npm install --no-fund --no-audit
if errorlevel 1 (
echo [错误] frontend npm install 失败
cd ..
pause
exit /b 1
)
echo 前端 npm 完成
)
cd ..
echo.
REM --- 5. 构建 ---
echo [5/6] 构建前端...
cd frontend
if exist package.json (
call npm run build
if errorlevel 1 (
echo [警告] 前端构建失败,可稍后手动 npm run build
) else (
echo -^> frontend\dist
)
)
cd ..
echo.
REM --- 6. 校验 ---
echo [6/6] 校验...
cd backend
call .venv\Scripts\python.exe -c "import fastapi, uvicorn, playwright, execjs; print(' 核心包 OK')"
if exist "..\frontend\dist\index.html" (
echo 前端静态 OK
) else (
echo [警告] 未找到 frontend\dist\index.html
)
cd ..
echo.
echo ========================================
echo 安装完成
echo.
echo 启动 Web: start_web.bat
echo 启动 API: start_backend.bat
echo 开发前端: cd frontend ^&^& npm run dev
echo ========================================
pause