Jackett 种子搜索代理:一次配置,让上百个站点只认一个接口
【免费下载链接】JackettAPI Support for your favorite torrent trackers项目地址: https://gitcode.com/GitHub_Trending/ja/Jackett
如果你也用过 Sonarr、Radarr 这类自动追更工具,多半被同一件事折磨过:明明每个下载站都能搜,可你的工具就是"搜不通"。站 A 要求填 cookie,站 B 的搜索框藏在第三层菜单,站 C 干脆只认会员。你配一个站,就要重新研究一遍它的脾气。
Jackett 就是为了解决这件事而生的。它本身不搜资源,而是站在你的下载工具和上百个下载站中间,把每一家的"土办法"统一成一套标准接口,让你的工具只用学会"一招"就能走遍所有站点。
Jackett 到底是什么:一个"万能转接头"
一句话定位:Jackett 是一台跑在本地的代理服务器,把不同下载站的私有搜索规则,翻译成 Sonarr、Radarr、qBittorrent 等工具通用的 Torznab 标准格式。
打个比方:出国旅行时,你的充电器插头(下载工具)只有一种形状,可每个国家的插座(各个下载站)标准都不同。Jackett 就像一个内置了上百种转接头的万能转换器——你只管插上去,它负责把每一种插座都变成你能认的那一种。
它具体干了四件事:
- 把你的搜索词,转成每个站点自己听得懂的请求
- 把站点返回的 HTML 或 JSON,解析成统一结构
- 提供类似 RSS 的最新上传订阅
- 用标准格式(Torznab / TorrentPotato)把结果交还给你的工具
💡 关键点:Jackett 自己不保存资源,也不替代下载。它只是"接线员",真正取货的还是你的下载客户端。
图:点一下 "Manual Search",多个站点的结果被合并到同一张表里
想先看看它的"接线图"长什么样,可以直接翻 站点定义目录 src/Jackett.Common/Definitions/,里面每个.yml文件就是一个站点的"转接头规格"。
十分钟从零跑起来
先让它在本地转起来,看到成果再谈原理。整个过程只有三步。
拿到代码(本仓库地址已为你备好):
git clone https://gitcode.com/GitHub_Trending/ja/Jackett编译一次(需要装好 .NET 9 SDK):
cd Jackett/src && dotnet publish Jackett.Server -f net9.0 --self-contained -r linux-x64 -c Debug启动并打开网页:
./Jackett.Server/bin/Debug/net9.0/linux-x64/jackett然后浏览器访问
http://localhost:9117,管理界面就出来了。
Windows、macOS 用户也可以直接用官方发布包,解压后双击install_service_*.sh/ 安装器即可;细节都写在 README 官方文档 里。首次进界面,你会看到一排已就绪的站点列表,每行都能单独"测试 / 启用 / 复制 Torznab 链接"。
图:已配置的索引器列表,每个站点独立标注 Public / Private / Semi-Private
到这一步你就"看到成果"了:加站点 → 测通 → 把 Torznab 链接贴给你的工具,一条链路就通了。
它是怎么做到"一个接口打天下"的
回到刚才那个"万能转接头"的比喻——为什么新站点不用改核心代码,加个文件就行?答案藏在那些.yml里。
以 1337x.yml 为例,一份站点定义大致描述四块信息:
| 字段 | 作用 | 类比 |
|---|---|---|
links/legacylinks | 站点的候选域名(主域挂了自动换备域) | 转接头上的"可插孔" |
caps.categorymappings | 站点分类 ↔ 通用分类的对照表 | 电压/制式换算表 |
request | 怎么拼出这个站自己的搜索 URL | 插头朝向与插法 |
parsers | 从返回的 HTML/JSON 里抠出标题、大小、种子链接 | 读出插座里哪根是火线 |
流程串起来就是:你发一句标准查询 → Jackett 查这个站的"接线图" → 按图拼出站点专属请求 → 拿到页面后按图解析 → 吐出标准结果。核心引擎对所有站一视同仁,差异全被关在单个 YAML 文件里。这也是它维护成本低的根本原因——坏一个站,只改一张图,不用动整机。
💡 想深入看解析逻辑,可以看 服务入口 src/Jackett.Server/ 和 通用逻辑 src/Jackett.Common/;想自己给新站写"接线图",直接照着
Definitions/下任意一份.yml抄结构即可。
三个真正用起来的场景
接口通了,到底能换来什么?下面三个是最高频的用法。
① 追剧自动化(Sonarr)把 Jackett 的 Torznab 链接和 API Key 填进 Sonarr。以后新剧集一出,Sonarr 会自动向 Jackett 发起查询,Jackett 同时去你配好的所有站找资源,把最优的一条交回去下载。你只管看,更新它来追。
② 电影入库(Radarr)同理接上 Radarr,配置好分类映射后,它按你设定的画质(如 4K / Remux)去各站挑选,自动入库。搭一次,之后全是"无感"入库。
③ 手动聚合搜索(不接工具也行)就算你不用 Sonarr/Radarr,直接点界面右上角的Manual Search也够用:输入关键词、选站点和分类,多个站的结果被合并成一张表,还能按种子数、发布时间排序。适合"今天临时想找个东西"的即时场景。
💡 经验:聚合接口
indexers/all图省事但会牺牲控制力(分类、搜索模式全被抹平,慢站会拖慢整体)。如果你的工具支持多条 feed,官方更推荐逐个站点直连,既快又好管。
老手才会在意的细节与坑
下面是踩过坑的人才总结得出来的部分,建议对照检查一遍。
| 你会遇到的情况 | 怎么应对 |
|---|---|
| 站点提示需要cookie才能搜 | 浏览器登录该站后复制 cookie 填进 Jackett,参考下图的 Chrome / Firefox 取法 |
| 站点有Cloudflare 人机验证 | 配一个 FlareSolverr 服务,把它的 API 地址填进设置 |
| 需要通过代理访问某些站 | 在设置里开启 Proxy 并填 SOCKS 地址与端口 |
| 想换个端口避免冲突 | 命令行./jackett --Port 9118,或在设置里改 Server port |
| 重复查询太频繁 | 缓存默认开着(TTL 约 35 分钟),别无限放大,频繁请求反而容易被站封 |
图:在浏览器里复制目标站点的 Cookie,再粘贴到 Jackett 对应站点配置
图:代理场景下,在 Jackett 设置中填入 SOCKS 代理地址与端口
设置页里所有改动,点Apply server settings即可生效,多数情况不用重启服务。
图:端口、缓存、代理、Blackhole 目录等关键开关都集中在这一个面板
一句话收尾
回到开头那个崩溃的瞬间:你不需要再逐一站去摸清脾气。只要给 Jackett 配好那几张"接线图",你的下载工具就只面对一个标准接口,而接口背后是上百个站点。
如果你已经受够了"一个工具配一遍",不妨现在就按第二节的三步把它跑起来——一次接线,长期省力。后续想加站点、想调缓存,翻翻 站点定义目录 和 README 官方文档 就够了。
⚠️ 提示:本文所有命令与路径均基于仓库当前结构整理,仅用于说明用途;仓库为只读,请勿在本地直接改动或新增其内容。
【免费下载链接】JackettAPI Support for your favorite torrent trackers项目地址: https://gitcode.com/GitHub_Trending/ja/Jackett
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考