Vertex 自动化脚本实战:下载前过滤 + 限速删种规则双脚本分享
在使用 Vertex 进行 PT 自动化管理时,合理设置下载前过滤规则和删种规则可以有效控制资源利用、优化上传策略,并避免机器过载。本文分享两个实用脚本:
- ✅ 下载前过滤脚本:控制下载任务数量、种子大小和分类;
- ✅ 删种规则脚本:按分类进行上传/下载限速,并在进度达到指定百分比后标记完成。
脚本均支持日志输出,适用于 RSS 下载器或挂机盒部署,适配如 PT站点:PTHOME、BTSCHOOL 等。
🧩 一、下载前过滤脚本:任务数量 + 种子大小 + 分类控制
✅ 功能说明
- 限制目标分类(如
PTHOME); - 限制该分类下最多允许存在的任务数量;
- 限制种子大小范围(如 500MB\~30GB);
- 可选日志记录,追踪过滤原因。
📜 脚本内容
将以下内容粘贴至 Vertex 面板 →【规则设置】→【RSS规则】中:
(torrent) => {
const config = {
categoryList: "PTHOME",
downloaderId: '039fa75c',
enableLogging: false,
enableTaskCountLimit: true,
taskCountLimit: 15,
enableSizeLimit: true,
sizeLimitRange: [500 * 1024 * 1024, 30 * 1024 * 1024 * 1024]
};
const fs = require('fs');
const path = require('path');
function getLocalTimeString() {
return new Date().toLocaleString('zh-CN', { hour12: false });
}
function logFailure(message) {
if (!config.enableLogging) return;
const logFilePath = '/vertex/log22/log.txt';
const logDir = path.dirname(logFilePath);
if (!fs.existsSync(logDir)) {
fs.mkdirSync(logDir, { recursive: true });
}
fs.appendFileSync(logFilePath, `[${getLocalTimeString()}] ${message}\n`);
}
const client = global.runningClient[config.downloaderId];
if (!client) {
logFailure(`未找到下载器 ${config.downloaderId}`);
return false;
}
if (config.enableTaskCountLimit) {
const categoryCount = client.maindata.torrents.reduce(
(count, t) => t.category === config.categoryList ? count + 1 : count,
0
);
if (categoryCount > config.taskCountLimit) {
logFailure(`任务数量限制:当前${categoryCount},超过上限${config.taskCountLimit}`);
return false;
}
}
if (config.enableSizeLimit) {
const size = Number(torrent.size);
if (size < config.sizeLimitRange[0] || size > config.sizeLimitRange[1]) {
logFailure(`种子大小${size}不在允许范围 ${config.sizeLimitRange.join(' - ')}`);
return false;
}
}
return true;
};⚙️ 使用说明与建议
修改配置项:
categoryList→ 指定分类(如 PT站分类名)taskCountLimit→ 最大任务数sizeLimitRange→ 接受的种子大小范围
- 日志路径:如需开启日志,将
enableLogging设置为true,日志文件将输出至/vertex/log22/log.txt - 配合 RSS 任务自动触发下载过滤
🚀 二、删种规则脚本:限速上传下载 + 自动标记完成
✅ 功能说明
- 对特定分类(如
btschool)应用限速规则; - 下载器连接验证;
- 上传立即限速,下载进度达到阈值后才限速;
- 进度达到
90%后返回true(可作为删种条件); - 支持日志记录执行状态。
📜 脚本内容
粘贴至 Vertex 面板 →【删种规则】中使用:
const CONFIG = {
TARGET_CATEGORY: "btschool",
ENABLE_LOGGING: false,
DOWNLOADER_ID: 'b65630e1',
DOWNLOAD_LIMIT: 100 * 1024, // 100KB/s
UPLOAD_LIMIT: 22 * 1024 * 1024 // 22MB/s
};
const logger = (() => {
if (!CONFIG.ENABLE_LOGGING) return { log: () => {} };
const fs = require('fs');
const path = require('path');
const LOG_PATH = '/vertex/log22/log.txt';
!fs.existsSync(path.dirname(LOG_PATH)) &&
fs.mkdirSync(path.dirname(LOG_PATH), { recursive: true });
return {
log: (message) => {
fs.appendFileSync(
LOG_PATH,
`${new Date().toISOString()} - ${message}\n`
);
}
};
})();
module.exports = (maindata, torrent) => {
if (torrent.category !== CONFIG.TARGET_CATEGORY) return false;
const client = global.runningClient[CONFIG.DOWNLOADER_ID];
if (!client) {
logger.log(`下载器未连接: ${CONFIG.DOWNLOADER_ID}`);
return false;
}
client.setSpeedLimit(torrent.hash, 'upload', CONFIG.UPLOAD_LIMIT)
.then(() => logger.log(`上传限速成功: ${torrent.name}`))
.catch(err => logger.log(`上传限速失败: ${torrent.name} | ${err}`));
if (torrent.progress >= 0.6) {
client.setSpeedLimit(torrent.hash, 'download', CONFIG.DOWNLOAD_LIMIT)
.then(() => logger.log(`下载限速成功: ${torrent.name}`))
.catch(err => logger.log(`下载限速失败: ${torrent.name} | ${err}`));
}
return torrent.progress >= 0.9;
};📌 注意事项
| 模块 | 控制逻辑 | 默认开启 |
|---|---|---|
| 分类过滤 | 仅目标分类才生效 | ✅ |
| 下载器验证 | 下载器未连接则中止处理 | ✅ |
| 上传限速 | 立即生效 | ✅ |
| 下载限速 | 下载进度 ≥60% 时生效 | ✅ |
| 返回条件 | 进度 ≥90% 后返回 true | ✅ |
🛠 配置建议
- 修改
DOWNLOADER_ID与category为你实际环境中的参数; - 若启用日志,请确保
/vertex/log22/有权限写入; - 配合触发器(如“完成即删种”、“进度达标转存”)使用效果最佳。
🧠 总结:自动化 + 精细控制 = 高效挂机
通过这两个脚本,Vertex 用户可以实现更加智能的下载和删种策略,特别适合以下场景:
- 多站点多分类管理
- 精细控制下载任务数量与资源体量
- 刷流控制:限制上传、限制下载、暂停条件精细设定
- 高效利用资源,防止过载
你可以根据需要修改参数逻辑,甚至将两个规则合并应用,实现“能否下载 → 下载后限速 → 自动删种”这一完整闭环。
5 条评论
华纳圣淘沙开户步骤详解(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程全解析(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司账户注册指南(183-8890-9465—?薇-STS5099【6011643】
新手如何开通华纳圣淘沙公司账户(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙企业开户标准流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户:从零到一(183-8890-9465—?薇-STS5099【6011643】
官方指南:华纳圣淘沙公司开户流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程说明书(183-8890-9465—?薇-STS5099【6011643】
新盛客服电话是多少?(?183-8890-9465—《?薇-STS5099】【
新盛开户专线联系方式?(?183-8890--9465—《?薇-STS5099】【?扣6011643??】
新盛客服开户电话全攻略,让娱乐更顺畅!(?183-8890--9465—《?薇-STS5099】客服开户流程,华纳新盛客服开户流程图(?183-8890--9465—《?薇-STS5099】
华纳东方明珠客服电话是多少?(??155--8729--1507?《?薇-STS5099】【?扣6011643?】
华纳东方明珠开户专线联系方式?(??155--8729--1507?《?薇-STS5099】【?扣6011643?】
华纳东方明珠客服电话是多少?(▲18288362750?《?微信STS5099? 】
如何联系华纳东方明珠客服?(▲18288362750?《?微信STS5099? 】
华纳东方明珠官方客服联系方式?(▲18288362750?《?微信STS5099?
华纳东方明珠客服热线?(▲18288362750?《?微信STS5099?
华纳东方明珠24小时客服电话?(▲18288362750?《?微信STS5099? 】
华纳东方明珠官方客服在线咨询?(▲18288362750?《?微信STS5099?
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com