一条命令跑通 iptv-checker:从 Docker 镜像到批量频道检测结果的最简路径
【免费下载链接】iptv-checkerIPTV checker tool for Docker && CMD, check your playlist is available项目地址: https://gitcode.com/GitHub_Trending/ip/iptv-checker
上周六想在大屏上看球,打开收藏的 M3U 列表,前 20 个频道一半黑屏,哪条还能用全凭感觉。手动逐个点开测试,光一轮就要两三个小时。iptv-checker 就是干这个的:把 M3U / M3U8 / TXT 播放列表里的频道批量检测一遍可用性,检测任务可以挂在家里 NAS 的 Docker 里,跑完直接把可用列表导出来给播放器用。
选它的三个理由
- Rust 构建的后端,单个镜像里就打包好了 Web 服务和 FFmpeg(见 dockerfile),拉下来不用装任何依赖
- Docker、CLI 二进制、桌面端三种形态共用一套检测逻辑,换场景不用重学
- MIT 协议,放进自己的维护脚本没有授权顾虑
最简部署路径
Docker 单行启动
docker pull zmisgod/iptvchecker docker run -d -p 8081:8089 --name iptv-checker zmisgod/iptvchecker第一行拉镜像,第二行把容器后台跑起来,并把本机 8081 端口映射到服务监听的 8089。
或者用 Compose
仓库根目录已经备好了 docker-compose.yaml,自带restart: always,执行下面这条就行:
docker-compose up -d验证动作:浏览器打开http://127.0.0.1:8081,看到欢迎页上「定时检查任务 / 想看的频道 / 设置」三张卡片,就说明服务起来了。
五张能力卡片
批量检测→ 对播放列表里的每个频道并发发起探测,判断链接是否可用 → 任务里可以调并发数和超时时间,500 个频道一任务搞定。
FFmpeg 强制检测→ HTTP 连通只是第一关,再让 FFmpeg 实际拉流验证能不能播 → 开关在检查设置里,勾上后假阳性明显变少。
定时任务→ 后台按周期自动跑检测,到期任务并发执行 → 单源检查有强制超时,运行超 2 小时会自动复位,不会永久卡在列表里(5.0.0 修复)。
分开导出→ 结果导出为 M3U / TXT,IPv4 与 IPv6 的可用频道可以分别输出 → 双栈网络下两个列表各喂给不同设备。
EPG 与名称治理→ 自动规范化 tvg-name / tvg-id,去掉 4K 这类质量后缀,配合字符替换配置统一格式 → 导出的列表直接进电视盒子也不乱。
| 功能 | 说明 | 适合谁 |
|---|---|---|
| 批量检测 | M3U / M3U8 / TXT 并发探测 | 手上有一两百个频道起 |
| FFmpeg 校验 | 排除"能连不能播"的假阳性 | 在意实际可播性的人 |
| 定时任务 | 后台按周期检测、并发执行 | NAS 长期在线的场景 |
| IPv4/IPv6 分开导出 | 双栈结果分列表输出 | 开了 IPv6 的家庭网络 |
| EPG 管理 | 节目单源配置、同步与分组映射 | 想要干净节目单的人 |
我是这么操作的
- 进「定时检查任务」,新建任务,把 M3U 地址贴进去(本地文件也可以)。
- 并发设 10、超时 8 秒,点开始,频道状态一条条刷出来。
- 检测完看结果页,失效的链接被明确标出,可用的自然浮上来。
- 点导出,拿到只含可用频道的新列表,需要的话按 IPv4 / IPv6 拆两份。
- 把任务频率设成每 2 小时一次,之后就不用再管它。
让检测更值钱的四个旋钮 ⚡
检测一轮太久→ 并发从 5~8(家庭宽带)拉到 10~15(服务器),超时配 5~10 秒 → 500 个频道、并发 10,理论上限约 500÷10×10s≈8 分钟,多数频道 1~2 秒就返回,实际更快。
能连上但播放花屏→ 打开 FFmpeg 强制检测,配合视频清晰度筛选 → 导出的列表贴近播放器里的真实表现,少踩"假可用"的坑。
频道名一堆[HD]、4K 后缀→ 用字符替换配置清掉多余字符,靠 EPG 规范化 tvg-name,频道名显示模式追加分辨率标签 → 列表进设备后名称整齐,分组不乱。
抓公共源被限流→ 在系统配置里填github_token,GitHub API 配额从 60 次/小时提到 5000 次/小时,保存时会自动验证 token 是否有效。
耗时到底差多少
| 方式 | 500 频道耗时 | 准确率 | 人力成本 |
|---|---|---|---|
| 手动逐个点开测试 | 3~5 小时 | 80%~90%,看人状态 | 高,每轮都要盯 |
| curl 循环脚本 | 1~3 小时 | 受单线程等待限制 | 中,脚本要自己维护 |
| iptv-checker | 3~10 分钟 | 叠加 FFmpeg 校验后更高 | 低,配一次自动跑 |
它把几百个频道的维护成本从"隔几天操心一次"压到"配一次就自动跑"。仓库地址:git clone https://gitcode.com/GitHub_Trending/ip/iptv-checker,clone 下来按上面的命令走,5 分钟后 8081 端口就能看到检测结果。
【免费下载链接】iptv-checkerIPTV checker tool for Docker && CMD, check your playlist is available项目地址: https://gitcode.com/GitHub_Trending/ip/iptv-checker
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考