Files
GPA_Monitoring/setup_python.sh
ChuXun 609b2334e8 1
2026-01-18 18:48:20 +08:00

92 lines
2.3 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
#############################################
# Python版本依赖安装脚本
# 适用于 Debian 12 (WSL)
#############################################
set -euo pipefail
echo "========== 成绩监控系统 (Python版本) - 依赖安装 =========="
echo ""
# 更新软件包列表
echo "1. 更新软件包列表..."
sudo apt-get update
# 安装Python3和pip
echo ""
echo "2. 安装Python3和pip..."
sudo apt-get install -y python3 python3-pip python3-venv
# 创建虚拟环境(可选但推荐)
echo ""
echo "3. 创建Python虚拟环境..."
if [[ ! -d "venv" ]]; then
python3 -m venv venv
echo "虚拟环境创建成功"
else
echo "虚拟环境已存在,跳过创建"
fi
# 激活虚拟环境并安装依赖
echo ""
echo "4. 安装Python依赖包..."
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
echo ""
echo "5. 重命名配置文件..."
if [[ -f "config_new.ini" ]] && [[ ! -f "config.ini" ]]; then
mv config_new.ini config.ini
echo "配置文件已重命名为 config.ini"
elif [[ -f "config_new.ini" ]]; then
echo "config.ini 已存在,保留原配置"
echo "新配置保存在 config_new.ini请手动合并"
fi
# 给脚本添加执行权限
echo ""
echo "6. 添加执行权限..."
chmod +x monitor.py
# 验证安装
echo ""
echo "========== 验证安装 =========="
echo ""
python3 --version
pip --version
echo ""
echo "已安装的Python包"
pip list | grep -E "requests|beautifulsoup4"
echo ""
echo "========== 所有依赖安装成功! =========="
echo ""
echo "下一步:"
echo "1. 确认 config.ini 文件中的配置正确"
echo "2. 运行监控程序:"
echo " 方式1使用虚拟环境 - 推荐):"
echo " source venv/bin/activate"
echo " python3 monitor.py"
echo ""
echo " 方式2直接运行"
echo " ./monitor.py"
echo ""
echo " 方式3后台运行"
echo " nohup python3 monitor.py > /dev/null 2>&1 &"
echo ""
echo " 方式4使用tmux - 推荐):"
echo " tmux new -s grade_monitor"
echo " source venv/bin/activate"
echo " python3 monitor.py"
echo " # 按 Ctrl+B 然后按 D 离开会话"
echo ""
echo "提示:"
echo "- 163邮箱需要在邮箱设置中开启SMTP服务并获取授权码"
echo "- 查看日志: tail -f monitor.log"