run.sh 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #!/bin/bash
  2. # 抖音 Cookie 生成器启动脚本 - 优化版
  3. set -e # 遇到错误立即退出
  4. echo "🎯 启动抖音 Cookie 生成器"
  5. # 检查虚拟环境
  6. if [ -d "venv" ]; then
  7. echo "🔧 激活虚拟环境"
  8. source venv/bin/activate
  9. else
  10. echo "⚠️ 虚拟环境不存在,使用系统 Python"
  11. fi
  12. # 检查依赖
  13. echo "📦 检查依赖..."
  14. if [ -f "requirements.txt" ]; then
  15. pip install -r requirements.txt
  16. echo "✅ 依赖安装完成"
  17. else
  18. echo "❌ requirements.txt 不存在"
  19. exit 1
  20. fi
  21. # 安装必要的模块
  22. echo "📦 安装必要模块..."
  23. pip install redis loguru schedule playwright
  24. # 检查环境
  25. echo "🔍 检查环境..."
  26. python3 -c "
  27. from cookie_generator import CookieGenerator
  28. try:
  29. generator = CookieGenerator()
  30. if generator.check_environment():
  31. print('✅ 环境检查通过')
  32. exit(0)
  33. else:
  34. print('❌ 环境检查失败')
  35. exit(1)
  36. except Exception as e:
  37. print(f'❌ 环境检查异常: {e}')
  38. exit(1)
  39. "
  40. if [ $? -ne 0 ]; then
  41. echo "🔄 安装 Playwright 浏览器..."
  42. playwright install chromium
  43. playwright install-deps
  44. # 再次检查环境
  45. echo "🔍 重新检查环境..."
  46. python3 -c "
  47. from cookie_generator import CookieGenerator
  48. generator = CookieGenerator()
  49. if generator.check_environment():
  50. print('✅ 环境检查通过')
  51. exit(0)
  52. else:
  53. print('❌ 环境检查仍然失败')
  54. exit(1)
  55. "
  56. if [ $? -ne 0 ]; then
  57. echo "❌ 环境检查失败,请手动排查问题"
  58. exit 1
  59. fi
  60. fi
  61. # 创建日志目录
  62. mkdir -p logs
  63. # 使用 nohup 持久化运行主程序
  64. echo "🚀 启动主程序(持久化运行)..."
  65. nohup python3 run.py > dy_cookie.log 2>&1 &
  66. # 保存进程 ID
  67. PID=$!
  68. echo $PID > pid.txt
  69. # 等待片刻确认进程启动
  70. sleep 2
  71. # 检查进程是否在运行
  72. if ps -p $PID > /dev/null 2>&1; then
  73. echo "✅ 进程已启动,PID: $PID"
  74. echo "📄 主程序日志: dy_cookie.log"
  75. echo "📊 任务调度日志: logs/cookie_task_scheduler.log"
  76. echo "🔍 查看实时日志: tail -f dy_cookie.log"
  77. echo "📈 查看任务日志: tail -f logs/cookie_task_scheduler.log"
  78. echo "🛑 停止服务: kill $PID 或执行 ./stop.sh"
  79. else
  80. echo "❌ 进程启动失败,请检查日志: dy_cookie.log"
  81. exit 1
  82. fi