#!/bin/bash # 抖音 Cookie 生成器启动脚本 - 优化版 set -e # 遇到错误立即退出 echo "🎯 启动抖音 Cookie 生成器" # 检查虚拟环境 if [ -d "venv" ]; then echo "🔧 激活虚拟环境" source venv/bin/activate else echo "⚠️ 虚拟环境不存在,使用系统 Python" fi # 检查依赖 echo "📦 检查依赖..." if [ -f "requirements.txt" ]; then pip install -r requirements.txt echo "✅ 依赖安装完成" else echo "❌ requirements.txt 不存在" exit 1 fi # 安装必要的模块 echo "📦 安装必要模块..." pip install redis loguru schedule playwright # 检查环境 echo "🔍 检查环境..." python3 -c " from cookie_generator import CookieGenerator try: generator = CookieGenerator() if generator.check_environment(): print('✅ 环境检查通过') exit(0) else: print('❌ 环境检查失败') exit(1) except Exception as e: print(f'❌ 环境检查异常: {e}') exit(1) " if [ $? -ne 0 ]; then echo "🔄 安装 Playwright 浏览器..." playwright install chromium playwright install-deps # 再次检查环境 echo "🔍 重新检查环境..." python3 -c " from cookie_generator import CookieGenerator generator = CookieGenerator() if generator.check_environment(): print('✅ 环境检查通过') exit(0) else: print('❌ 环境检查仍然失败') exit(1) " if [ $? -ne 0 ]; then echo "❌ 环境检查失败,请手动排查问题" exit 1 fi fi # 创建日志目录 mkdir -p logs # 使用 nohup 持久化运行主程序 echo "🚀 启动主程序(持久化运行)..." nohup python3 run.py > dy_cookie.log 2>&1 & # 保存进程 ID PID=$! echo $PID > pid.txt # 等待片刻确认进程启动 sleep 2 # 检查进程是否在运行 if ps -p $PID > /dev/null 2>&1; then echo "✅ 进程已启动,PID: $PID" echo "📄 主程序日志: dy_cookie.log" echo "📊 任务调度日志: logs/cookie_task_scheduler.log" echo "🔍 查看实时日志: tail -f dy_cookie.log" echo "📈 查看任务日志: tail -f logs/cookie_task_scheduler.log" echo "🛑 停止服务: kill $PID 或执行 ./stop.sh" else echo "❌ 进程启动失败,请检查日志: dy_cookie.log" exit 1 fi