|
|
@@ -1,5 +1,7 @@
|
|
|
#!/bin/bash
|
|
|
-# 运行脚本
|
|
|
+# 抖音 Cookie 生成器启动脚本 - 优化版
|
|
|
+
|
|
|
+set -e # 遇到错误立即退出
|
|
|
|
|
|
echo "🎯 启动抖音 Cookie 生成器"
|
|
|
|
|
|
@@ -7,27 +9,88 @@ echo "🎯 启动抖音 Cookie 生成器"
|
|
|
if [ -d "venv" ]; then
|
|
|
echo "🔧 激活虚拟环境"
|
|
|
source venv/bin/activate
|
|
|
+else
|
|
|
+ echo "⚠️ 虚拟环境不存在,使用系统 Python"
|
|
|
fi
|
|
|
|
|
|
# 检查依赖
|
|
|
echo "📦 检查依赖..."
|
|
|
-pip install -r requirements.txt
|
|
|
+if [ -f "requirements.txt" ]; then
|
|
|
+ pip install -r requirements.txt
|
|
|
+ echo "✅ 依赖安装完成"
|
|
|
+else
|
|
|
+ echo "❌ requirements.txt 不存在"
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
|
|
|
-# 检查Playwright浏览器
|
|
|
-echo "🔍 检查浏览器..."
|
|
|
-python3 -c "from cookie_generator import CookieGenerator; exit(0 if CookieGenerator().check_playwright_browser() else 1)"
|
|
|
+# 安装必要的模块
|
|
|
+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 "🚀 启动主程序(持久化)..."
|
|
|
+echo "🚀 启动主程序(持久化运行)..."
|
|
|
nohup python3 run.py > dy_cookie.log 2>&1 &
|
|
|
|
|
|
-# 显示进程信息
|
|
|
-echo "📝 进程已启动,PID: $!"
|
|
|
-echo "📄 日志文件: app.log"
|
|
|
-echo "🔍 查看日志: tail -f dy_cookie.log"
|
|
|
-echo "🛑 停止进程: kill $!"
|
|
|
+# 保存进程 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
|