# ITV **Repository Path**: zjdxm/itv ## Basic Information - **Project Name**: ITV - **Description**: 这是一个自用IPTV转播的仓库,主要用于内网交流学习。 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-17 - **Last Updated**: 2026-02-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 关于ITV #### 一、📚介绍 1.本项目,通过UDPXY软件,代理转发本地组播地址,用于其他设备的ITV节目观看。 2.目前仅支持IPV6协议。 #### 二、 📚组播源说明 1.组播源均来自网络 2.转播地址来自网络 http://tonkiang.us https://fofa.info/ http://121.199.57.64:8000/sunset/ #### 三、📚 txt2m3u使用说明 1. 环境准备 Python版本:3.6或更高。 <<<<<<< backup 安装依赖: bash pip install requests scikit-learn pandas jieba joblib 如果不需要AI分类功能,可跳过scikit-learn、pandas、jieba、joblib的安装,但需确保脚本中AI相关代码不会报错(已做异常处理)。 2. 文件说明 txt2m3u.py:主脚本(将txt列表转化成M3U格式)。 channel_samples.csv(可选):AI分类器的训练数据,格式为两列:name(频道名称)、category(分类标签)。若不存在,则使用内置规则分类。 输出文件: iptv_channels.m3u:生成的播放列表。 unmatched_channels.txt:未匹配到EPG的频道原始名称清单。 3. 运行脚本 在终端执行: bash python txt2m3u.py 4. 交互式配置 运行后会依次提示输入: TXT节目源URL:默认https://gitee.com/zjdxm/itv/raw/backup/cs.txt,可直接回车使用。 EPG XML源URL:默认http://vip.erw.cc/e.xml?k=6M8eTNofKZBr3v01,可直接回车使用。 内网代理模板:默认http://192.168.124.200:4200/udp/{hostport},模板中的{hostport}会被替换为rtp://后面的地址。如果输入不含{hostport},脚本会自动添加/udp/{hostport}。 5. 处理流程 从指定URL获取TXT节目源(格式:频道名称,URL,每行一个)。 获取EPG XML并解析频道ID和标准名称。 对每个频道: 标准化名称:尝试匹配EPG标准名称,若失败则保留原始名称。 提取台标名:匹配成功时使用标准名称,否则从原始名称中提取(如“CCTV-4K 超高清” → “CCTV4K”)。 内网代理转换:将rtp://地址转换为用户指定的HTTP代理地址。 分类:先尝试AI预测(若模型存在),失败则使用规则分类(优先级+关键词+排除词)。 生成M3U文件,头部包含EPG源URL,每个频道附带tvg-id(如有)、tvg-logo、group-title。 输出未匹配频道清单,供手动核对。 6. 自定义AI分类(高级) 如需使用AI分类,请准备channel_samples.csv文件,例如: csv name,category CCTV1综合,央视综合 CCTV5体育,体育频道 江苏卫视,卫视频道 江苏卫视4K-50FPS,4K高清频道 金鹰卡通,少儿动漫 ... 首次运行脚本时会自动训练并保存模型(channel_classifier.pkl和vectorizer.pkl),后续运行直接加载模型。若训练数据更新,需删除模型文件重新训练。 7. 注意事项 确保网络能访问配置的URL。 代理模板中的{hostport}必须保留,否则转换失败。 若TXT源格式非标准(如用空格分割),需自行调整parse_txt_source函数。 AI分类依赖中文分词库jieba,如未安装会自动报错并回退规则分类。 #### 四、📚 m3u2txt使用说明 1. 运行环境 Python 3.6 或更高版本 无需安装额外依赖(仅使用标准库) 2. 准备M3U文件 将需要转换的M3U文件保存到本地,例如 input.m3u。 M3U文件格式应类似于您提供的示例: text #EXTM3U x-tvg-url="https://epg.zsdc.eu.org/t.xml" #EXTINF:-1 tvg-logo="..." group-title="4K高清频道",CCTV-16 奥林匹克4K http://192.168.124.200:4200/udp/239.49.0.109:8000 ... 3. 运行脚本 在终端执行: bash python m3u2txt.py 根据提示输入: M3U文件路径:直接回车使用默认 input.m3u,或输入您的文件名。 输出TXT文件路径:直接回车使用默认 output.txt,或自定义。 4. 输出结果 生成的TXT文件格式如下: text 4K高清频道,#genre# CCTV-16 奥林匹克4K,rtp://239.49.0.109:8000 CCTV-4K 超高清,rtp://239.49.0.82:8000 ... 央视综合,#genre# CCTV-1 综合,rtp://239.49.8.19:9614 ...