抓取并解析福建电信 IPTV 源

date
Mar 18, 2022
slug
export-fjtelcom-iptv
status
Published
tags
Technology
summary
其实我不怎么看电视
type
Post
最近时(网)间(课)充(摸)裕(鱼),打算试试给 IPTV 抓包提取直播源,解决下网上公开直播源稳定性差的问题
提示
1. 抓包
上手前还是得先查查现有教程,自己抓由于包数量多,很慢还容易找不准
直到看到这个教程:
相见恨晚,而且十分可靠,所以本部分略过直接看上面链接就行
2. 处理节目列表
notion image
如图定位节目列表位置,从 ChannelCount 的下一行开始复制直到最后一个 jsSetConfig('Channel',xxx) 为止
然后复制以下代码,插入复制的内容,存为 .html 文件
<html><body><script>
    var m3uOutput = "#EXTM3U\n";
    const blackList = ['购物', '直播室', '党建', '乡村', '测试1', '测试2']
    function jsSetConfig(type, data) {
        if(type=='Channel') {
            var name = data.split(',')[1].match(/\"(.*)\"/)[0].replaceAll('"','');
            var src = data.split(',')[5].match(/\"(.*)\"/)[0].replaceAll('"','').split('|')[1];
            if(src.includes('rtsp')) {
                for (key of blackList) {
                    if (name.includes(key)) {
                        return;
                    }
                }
            }
            m3uOutput+="#EXTINF:-1 tvg-name=\"" + name + "\"," + name + "\n";
            m3uOutput+=src+"\n"
            console.log('['+name+'] src='+src);
        }
    }
    setTimeout(function(){
    var downObj = window.document.createElement('a');
    downObj.href = window.URL.createObjectURL(new Blob([m3uOutput], {type: 'application/x-mpegURL'}));
    downObj.download = 'Output.m3u';
    downObj.click();
    },1000);

// 此处粘贴复制的内容

</script></body></html>
可以根据需要编辑/清空 blackList 中关键词,以过滤不需要的节目,编辑完成后打开 .html 文件,1s 之后将自动下载生成的 Output.m3u 节目源文件
3. (可选) 加入EPG电子节目指南
51ZMT 提供了加EPG和台标的工具,只需上传 .m3u 文件即可自动处理
4. 最后测试
使用 Potplayer 打开 .m3u 文件,正常播放
notion image
在电视播放可使用 Kodi(Tivimate 界面更加美观但可惜内置播放器暂不支持 RTSP 源)

© huangtao728 2022