IPTV Explorer一款IPTV 直播源探索与检测工具
IPTV Explorer 📡
IPTV 直播源探索与检测工具 — 自动搜索、智能过滤、批量检测、导出播放列表
IPTV Explorer 是一款基于 Electron 构建的桌面工具,专为 IPTV 直播源爱好者设计。它能够自动从多个在线来源搜索直播源,通过内置的频道白名单进行智能过滤,并使用 ffprobe 引擎进行批量连通性检测,最终生成高质量的播放列表。
✨ 功能特点
🔍 多源探索
自动从以下来源搜索 IPTV 直播源:
- iptv-org — 全球最大的 IPTV 源仓库,覆盖数千个频道
- 恩山论坛 — 中文 IPTV 爱好者社区,持续更新国内源
- GitHub — 扫描 GitHub 上的公开 IPTV 源项目
✅ 智能检测
采用两阶段检测引擎确保源质量:
- HTTP HEAD 探测 — 快速检查 URL 是否可达(非阻塞,高并发)
- ffprobe 流分析 — 深度探测流媒体信息,获取:
- 延迟(连接时间)
- 分辨率(清晰度)
- 码率(传输质量)
- 编码格式(H.264/H.265 等)
🎯 综合评分
基于多项指标自动评分(满分 100):
| 指标 | 权重 | 说明 |
|---|---|---|
| 延迟 | 30分 | 连接速度越快分数越高 |
| 分辨率 | 30分 | 1080p 满分,720p 次之 |
| 编码格式 | 10分 | H.265 优于 H.264 |
| 码率 | 15分 | 码率越高画质越好 |
| 连通性 | 15分 | 源稳定可用性 |
📋 频道白名单
内置 全国电视节目频道列表(1084 个频道),覆盖:
- 央视系列(CCTV-1 ~ CCTV-17、CCTV-5+、CGTN 等)
- 省级卫视(湖南卫视、浙江卫视、江苏卫视、东方卫视等)
- 地级市频道(覆盖全国主要城市)
- 支持自定义关键词过滤(白名单/黑名单)
🌐 IP 归属地识别
自动根据 URL 解析频道归属地:
- DNS 域名关键词匹配(如
cztv.com→ 浙江) - IP 前缀库匹配(预先解析的 37 个 IP 段)
- 覆盖 130+ 域名映射
🖥️ 界面预览




导航
简洁的四页导航布局:
| 页面 | 功能 |
|---|---|
| 直播源探索 | 在线搜索直播源、实时日志、结果导出 |
| 直播源检测 | 批量连通性检测、评分筛选、状态统计 |
| 源管理 | 统一管理所有频道、搜索/筛选/批量操作 |
| 设置 | 白名单管理、爬虫参数、检测参数配置 |
主要操作流程
1️⃣ 探索 → 2️⃣ 检测 → 3️⃣ 导出
🚀 快速开始
下载安装
从附件中下载最新版本的安装包 IPTV_Explorer_Setup_1.0.0.exe,双击安装即可使用。
从源码运行
# 克隆仓库
git clone https://github.com/yourname/iptv-explorer.git
cd iptv-explorer
# 安装依赖
npm install
# 启动开发模式
npm start
# 构建安装包
npm run build
系统要求
- 操作系统:Windows 10/11 64位
- 磁盘空间:安装包 135MB,解压后约 500MB(含 ffprobe 引擎)
- 网络连接:探索功能需要互联网访问
📖 使用指南
第一步:探索直播源
- 打开软件,进入 直播源探索 页面
- 配置搜索参数:
- 频道白名单:输入关键词过滤(如
CCTV, 卫视, 湖南) - 来源选择:勾选要搜索的来源(iptv-org / 恩山论坛 / GitHub)
- 并发数:控制搜索速度(建议 3-10)
- 频道白名单:输入关键词过滤(如
- 点击 开始探索,实时查看日志
- 探索完成后,结果会显示在左侧表格中
第二步:检测直播源
- 点击 送入检测 将探索结果导入检测页面
- 或直接点击 导入文件 加载已有的播放列表
- 配置检测参数:
- 并发检测数:同时检测的频道数(建议 10-20)
- 超时时间:单次检测最大等待时间(建议 10-30秒)
- 最低评分:仅保留评分高于此值的频道
- 点击 开始检测,进度条实时显示检测进度
- 检测完成后可查看各频道的延迟、分辨率、码率等信息
第三步:导出播放列表
支持两种导出格式:
- TXT 格式:
频道名,URL(每行一个) - M3U 格式:标准播放列表,兼容 VLC、PotPlayer 等播放器
源管理
在 源管理 页面可以:
- 浏览所有已保存的频道
- 搜索特定频道
- 手动添加频道(支持自定义名称和 URL)
- 批量选中进行检测或删除
- 导出选中频道
⚙️ 配置说明
频道过滤
| 配置 | 说明 |
|---|---|
| 白名单 | 只有名称包含白名单关键词的频道才会保留 |
| 黑名单 | 排除名称包含黑名单关键词的频道 |
| 内置白名单 | 随应用打包的 1084 个中文频道列表 |
爬虫设置
| 配置 | 说明 |
|---|---|
| 恩山论坛最大页面数 | 搜索的论坛页数(默认 10) |
| GitHub 最低 Star 数 | 筛选 GitHub 项目的最低星数(默认 5) |
检测设置
| 配置 | 说明 |
|---|---|
| 默认并发数 | 检测阶段的并发连接数(默认 10) |
| 默认超时时间 | 单次检测超时秒数(默认 10 秒) |
🛠️ 技术架构
┌─────────────────────────────────────────────┐
│ Electron (主进程) │
│ ┌─────────┐ ┌──────────┐ ┌────────────┐ │
│ │ main.js │ │ probe.js │ │ validator │ │
│ │ (IPC) │ │ (ffprobe)│ │ .js (检测) │ │
│ └─────────┘ └──────────┘ └────────────┘ │
│ ┌──────────┐ ┌──────────┐ ┌────────────┐ │
│ │database │ │ http.js │ │geo-location│ │
│ │ .js(持久)│ │(网络请求) │ │ .js (归属) │ │
│ └──────────┘ └──────────┘ └────────────┘ │
├─────────────────────────────────────────────┤
│ Electron (渲染进程) │
│ ┌──────────┐ ┌──────────┐ ┌────────────┐ │
│ │app.js │ │index.html│ │ style.css │ │
│ │(UI逻辑) │ │(界面结构) │ │ (样式) │ │
│ └──────────┘ └──────────┘ └────────────┘ │
├─────────────────────────────────────────────┤
│ preload.js │
│ (contextBridge 安全桥接) │
└─────────────────────────────────────────────┘
技术栈
| 组件 | 技术 |
|---|---|
| 桌面框架 | Electron 42 |
| 运行环境 | Node.js + Chromium |
| 流检测引擎 | ffprobe(FFmpeg 套件) |
| 网络请求 | axios + cheerio(HTML 解析) |
| 并发控制 | p-limit |
| 数据持久化 | JSON 文件存储 |
| 安装程序 | NSIS(Nullsoft Scriptable Install System) |
核心模块
- main.js — Electron 主进程入口,IPC 通信中枢
- probe.js — ffprobe 包装器,负责流媒体探测与信息提取
- validator.js — 检测引擎,两阶段验证 + 综合评分
- database.js — 数据持久层,使用 JSON 文件存储频道和配置
- http.js — HTTP 工具集,HEAD/GET 探测与重试逻辑
- geo-location.js — IP 归属地识别模块
- preload.js — 安全的进程间通信桥接
- app.js — 渲染进程 UI 逻辑
📁 项目结构
iptv-explorer/
├── main.js # 主进程入口
├── preload.js # 预加载脚本(contextBridge)
├── package.json # 项目配置
├── start.bat # 快捷启动脚本
├── sources.json # 在线来源配置
├── bin/ # ffprobe 引擎
│ ├── ffprobe.exe
│ ├── ffmpeg.exe
│ ├── avcodec-60.dll
│ ├── avformat-60.dll
│ └── ... (其他 DLL)
├── assets/
│ └── 全国电视节目频道列表.txt # 内置频道白名单
├── src/
│ ├── main/
│ │ ├── main.js # IPC 处理、窗口管理
│ │ ├── database.js # 数据持久化
│ │ ├── probe.js # ffprobe 探测
│ │ ├── validator.js # 检测引擎
│ │ └── discover.js # 搜索引擎
│ ├── renderer/
│ │ ├── app.js # 渲染进程 UI
│ │ ├── index.html # 界面结构
│ │ └── style.css # 暗色主题样式
│ └── utils/
│ ├── http.js # HTTP 工具
│ ├── geo-location.js # IP 归属地
│ ├── geo-location.json # 归属地映射数据
│ └── whitelist.js # 白名单过滤器
└── build/ # 构建输出
└── IPTV_Explorer_Setup_1.0.0.exe
❓ 常见问题
搜索不到直播源?
- 检查网络连接是否正常
- 尝试增加恩山论坛的搜索页数
- 调整频道白名单关键词,使用更宽泛的关键词
- GitHub 来源可能需要代理访问
检测结果为空/全部离线?
- 检查 ffprobe 引擎是否正确加载(查看日志)
- 降低并发数,避免被服务器限流
- 增加超时时间
- 部分 IPTV 源有时效性,建议重新探索
安装包被杀毒软件拦截?
- 因打包了 ffprobe 等可执行文件,部分杀毒软件可能误报
- 请放心使用,本项目为开源软件
- 可添加信任或从源码自行构建
如何迁移数据?
- 数据文件位于软件安装目录下的
iptv-data.json和iptv-config.json - 重装前备份这两个文件即可
📝 更新日志
v1.0.0
- 🎉 首个正式版本
- 🔍 多来源直播源探索(iptv-org / 恩山论坛 / GitHub)
- ✅ 两阶段流检测引擎(HTTP + ffprobe)
- 🎯 综合评分系统(延迟 / 分辨率 / 码率 / 编码 / 连通性)
- 📋 内置 1084 个频道白名单
- 🌐 IP 归属地自动识别
- 📥 TXT / M3U 格式导出
- ⚙️ 可自定义的过滤与检测参数
- 📦 完整的 Windows 安装程序
🙏 致谢
- iptv-org — 全球 IPTV 源仓库
- 恩山无线论坛 — 中文网络技术社区
- FFmpeg — 强大的多媒体处理工具
- 一个橙子pro工具箱 — 流检测方案参考
- Electron — 跨平台桌面框架
⚖️ 许可声明
本项目仅供学习和研究使用。使用者应遵守当地法律法规,不得将本项目用于任何非法用途。
- IPTV 直播源均来自公开网络资源,版权归原作者所有
- 项目仅提供工具,不存储或分发任何受版权保护的内容
- 如果使用本工具侵犯了您的权益,请联系我们删除相关内容
免责声明:本工具仅用于技术研究和学习目的。请勿将其用于侵犯他人权益或违反法律法规的活动。
资源下载
0
0
IPTV Explorer一款IPTV 直播源探索与检测工具
风花雪夜 · 717058319@qq.com
本文为原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
评论区 (2)
发表评论
共有 2 条评论
之前为了找稳定点的CCTV源,手动测了一下午,眼睛都快瞎了。这工具自带评分和ffprobe检测,直接省了80%的功夫,真该早点看到。
这工具太实用了,之前我都是手动一个个试源,累得够呛。那个综合评分机制挺科学的,延迟和分辨率权重给得合理,省了不少筛选时间。