用于“代理池”场景:把不同来源、不同格式的节点统一成一个稳定的 SOCKS5 出口。适合爬虫、批量注册(注册机)、自动化任务等需要大量/稳定出站代理的场景。
- 通过 aggregator 自动扫描与聚合可用节点
- 使用 glider 将节点统一转换为 SOCKS5 代理供外部访问
- 自定义“机场”订阅一键转换为 glider 可用的 forward= 节点
- 普通用户:使用“白嫖机场”订阅作为代理池,开箱即用。
- 有追求用户:使用自建订阅或付费机场作为代理池,更干净、更可控。
- 自动收集与定时更新
- 可用性检测与故障转移
- 支持 SS / VMess
- 统一的 SOCKS5 访问接口
- 支持自定义订阅(机场)→ glider 节点转换(单次或定时轮询)
-
依赖要求
- Python 3.7+
- glider 可执行文件
-
创建虚拟环境并安装依赖
python -m venv venv
pip install -r requirements.txt- 安装 glider(下载与放置)
- 推荐:在项目根运行以下命令,脚本会根据当前系统/架构自动下载对应的 glider 发行包,解压到
glider/目录,并生成默认的glider/glider.conf:python bootstrap.py
- 若脚本提示无法识别平台,请前往 Glider Releases 手动下载
v0.16.4对应的压缩包:- Windows:解压后将主程序重命名为
glider.exe并放入glider/目录 - macOS / Linux:解压后将
glider主程序放入glider/目录并运行chmod +x glider/glider - 验证:
./glider/glider -h(Windows 替换为glider.exe)
- Windows:解压后将主程序重命名为
- 推荐:在项目根运行以下命令,脚本会根据当前系统/架构自动下载对应的 glider 发行包,解压到
- glider 基础配置(glider/glider.conf)(此为示例,脚本会自行创建)
# Verbose mode, print logs
verbose=true
# 监听地址
listen=:10707
# 负载策略:rr(轮询)/ ha(高可用)
strategy=rr
# 健康检查
check=http://www.msftconnecttest.com/connecttest.txt#expect=200
# 健康检查间隔(秒)
checkinterval=30
此方式依赖 aggregator(作为 Git 子模块),自动聚合免费节点。
- 首次运行
python run_collector.py会自动初始化并更新 Git 子模块(等价于手动执行git submodule update --init --recursive)。如果自动初始化失败,终端会提示手动运行该命令。 - 安装 aggregator 依赖(在项目根)
pip install -r aggregator/requirements.txt- 手动跑一轮采集并写入 glider/glider.conf 的 forward= 段
python run_collector.py- 守护运行(每 30 分钟刷新并重启 glider 生效)
python scheduler.py- 默认 SOCKS5:127.0.0.1:10707
- 产物:aggregator/data/clash.yaml(聚合结果),glider/glider.conf(含 forward= 行)
此方式不需要 submodule(可忽略 aggregator)。
- 定时轮询(长期自动刷新):在项目根创建 subscriptions.txt(每行一个订阅 URL),然后运行
python subscription_scheduler.py- 行为:定时拉取 → 解析为 forward= → 写入 glider/glider.subscription.conf → 启动/重启 glider 使用该配置
- 默认 SOCKS5/http:127.0.0.1:10710
