通用爬虫系统 v1.0.0: 批量/定时/自动爬取 + Web管理界面 + 图片/通知/热更新
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
# 通用爬虫系统 - 启动/停止脚本 (PID 文件管理)
|
||||
cd "$(dirname "$0")"
|
||||
PY=/home/hz1/miniconda3/envs/openclaw/bin/python
|
||||
PORT=${CRAWLER_PORT:-16062}
|
||||
PIDFILE=logs/app.pid
|
||||
|
||||
get_pid() {
|
||||
if [ -f "$PIDFILE" ]; then
|
||||
cat "$PIDFILE" 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
is_running() {
|
||||
local pid=$(get_pid)
|
||||
[ -n "$pid" ] && kill -0 "$pid" 2>/dev/null
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
stop)
|
||||
if is_running; then
|
||||
kill $(get_pid) && rm -f "$PIDFILE" && echo "已停止"
|
||||
else
|
||||
rm -f "$PIDFILE"; echo "未在运行"
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
if is_running; then kill $(get_pid); sleep 1; fi
|
||||
rm -f "$PIDFILE"
|
||||
mkdir -p logs
|
||||
nohup $PY app.py > logs/app.log 2>&1 &
|
||||
echo $! > "$PIDFILE"
|
||||
sleep 1
|
||||
echo "已重启, PID $(get_pid) (端口 $PORT)"
|
||||
;;
|
||||
status)
|
||||
if is_running; then
|
||||
echo "运行中, PID $(get_pid) (端口 $PORT)"
|
||||
else
|
||||
echo "未运行"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
if is_running; then
|
||||
echo "已在运行, PID $(get_pid) (端口 $PORT)"; exit 0
|
||||
fi
|
||||
mkdir -p logs
|
||||
nohup $PY app.py > logs/app.log 2>&1 &
|
||||
echo $! > "$PIDFILE"
|
||||
sleep 1
|
||||
echo "已启动, PID $(get_pid) (端口 $PORT)"
|
||||
echo "管理界面: http://$(hostname -I | awk '{print $1}'):$PORT/"
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user