AI 生成: IPTV直播源自动采集、检测、去重工具,支持从多个公开源采集直播源,自动检测可用性,去重后输出干净的M3U播放列表。

This commit is contained in:
admin
2026-10-03 08:31:56 +08:00
commit 90d1272210
9 changed files with 781 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
# IPTV 直播源自动采集检测去重
一个实用的 IPTV 直播源工具,自动从多个公开源采集直播源,检测可用性,去重后生成干净的 M3U 播放列表。
## 功能特性
- **自动采集**:从多个公开 IPTV 源采集直播源
- **并发检测**:多线程并发检测直播源可用性
- **智能去重**:基于 URL 和频道名称去重
- **分类整理**:自动按频道类型分类
- **M3U 输出**:生成标准 M3U 播放列表
- **Web 界面**:提供简单的 Web 界面查看结果
## 目录结构
```
iptv-source-collector/
├── README.md
├── requirements.txt
├── config.py # 配置文件
├── collector.py # 采集模块
├── checker.py # 检测模块
├── deduplicator.py # 去重模块
├── main.py # 主程序入口
├── app.py # Flask Web 应用
├── templates/
│ └── index.html # Web 界面
└── output/ # 输出目录(自动创建)
```
## 安装依赖
```bash
pip install -r requirements.txt
```
## 使用方法
### 命令行模式
```bash
# 完整流程:采集 -> 检测 -> 去重 -> 输出
python main.py
# 只采集不检测(快速获取所有源)
python main.py --no-check
# 指定输出文件
python main.py --output my_playlist.m3u
# 设置并发数
python main.py --threads 50
```
### Web 界面模式
```bash
python app.py
```
然后访问 http://127.0.0.1:5000 查看结果。
## 配置说明
编辑 `config.py` 可以自定义:
- `SOURCE_URLS`:采集源地址列表
- `CHECK_TIMEOUT`:检测超时时间(秒)
- `MAX_WORKERS`:并发线程数
- `MIN_SPEED`:最低下载速度要求(KB/s)
## 输出格式
生成的 M3U 文件格式:
```
#EXTM3U
#EXTINF:-1 tvg-name="CCTV-1" group-title="央视",CCTV-1
http://example.com/cctv1.m3u8
```
## 注意事项
- 本工具仅供学习和研究使用
- 请遵守相关法律法规,不要用于非法用途
- 采集源均来自公开网络,如有侵权请联系删除