前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分享我的IPTV电视直播源自动更新工具

分享我的IPTV电视直播源自动更新工具

作者头像
用户1160092
发布2024-11-12 10:45:08
1900
发布2024-11-12 10:45:08
举报
文章被收录于专栏:MUM笔记

前面一篇文章我把自己折腾iptv的一些经历给分享了下,具体见:IPTV整合,实现自由观看电视

这里感谢各位观众老爷的抬爱,都纷纷留言讨论。 很多朋友留言说要直接给可用的频道链接,也有认为我是卖设备、卖会员的,也有希望我直接打包成apk提供的。

这里澄清下,

  1. 我的记录只是我自己折腾的过程。这中间受到大家的关注我很荣幸。
  2. 我不是商家,不卖设备,也不卖会员,也不会向谁收取任何费用来提供相关内容。
  3. 我也不会直接给各位提供iptv的频道信息,这些都是互联网上可以找到的。但是涉及到的技术,比如怎么找,对应打包的脚本镜像等可以直接提供给大家。大家有什么相关的问题我们也可以交流。
  4. 这个相关内容涉及的技术, 很多都是基于一些开源项目来二次整合的,如果你也感兴趣,我们可以一起交流。

回到上一篇文章,其中的背景是:我想自己定义搜索一些家里iptv没有覆盖到的频道。 所以折腾了下脚本镜像什么的。

后面看到大家的留言,我才发现,Guovin大佬做了一个更完整的工具。感兴趣的可以自行去这个地址取用:https://github.com/Guovin/TV 。Guovin大佬做的比较完整,各种平台的都有,也包括一些windows平台下带图形界面的。

这里应一些同学的要求,我把我上一篇的整个过程打包到容器镜像里面去了。如果各位观众老爷用的过程中有问题,随时给我留言。也顺带借tvbox,解释下怎么用接口怎么用。

(好像我贴网盘链接被黑了,我放第一条评论了,Emmmm..)下面是关于镜像的说明

作用和约束

先说一下作用和一些约束,如果你的环境不适用,也想用这套的,可以私信留言。这个镜像实现了自动搜索和并校验可用的iptv源。限x86环境。如果是arm的环境,有些包需要重新编译。

文件说明

对应文件的说明:压缩包目录结构如下:

代码语言:javascript
复制
├── autoupdatetv.tar
├── README.md
└── tvconfig
    ├── iptv_config.json
    ├── start.sh
    └── target.txt
  • autoupdatetv.tar 离线docker镜像
  • README.md 使用说明
  • tvconfig目录,配置文件,包括
    • iptv_config.json:运行配置文件
    • start.sh 容器运行时启动脚本
    • target.txt,运行参数文件

相关配置填写说明

拿到需要先填写配置文件

  1. 修改iptv_config.json文件

这是一个标准json格式的文件,这里定义的程序运行需要的一些必要参数。具体说明如下

配置项目

含义

填写说明

备注

ip_version_priority

协议优先版本

填写ipv4或者ipv6, 如果家里网络环境支持v6,建议填写为ipv6

source_urls

搜索的访问

这是一个数组,定义了从哪些源里面去搜索想要的频道

这里默认了一些比较全的源

url_blacklist

黑名单

这个列表里面的地址即使在source_urls定义也不会记录

epg_urls

epg信息

从这里面的信息里面获取到epg信息,

log_dir

日志目录

默认是空,表示当前目录。也可以自己定义。可以进入到容器里面的work目录看日志,日志文件是search_iptv.log

  1. 填写target.txt 这是比较重要的, 我关注什么频道,都可以在这里面定义。基本格式参考如下
代码语言:javascript
复制
分组名称,#genre#
频道名称1,
频道名称2,
...

分组名称,#genre#
频道名称1,
频道名称2,
...

在压缩包里面附带了基本所有频道的列表,根据自己的需要来选择。

  1. start.sh文件修改

这个文件是定义容器里面的一些行为的,默认不用修改。不过如果你需要自己定义更新频率,可以修改这个文件的。具体方法如下:vi打开该文件,修改第22行,默认是

代码语言:javascript
复制
0 1 * * * /usr/bin/bash /app/autostart.sh

表示每天凌晨1点更新一次。如果你想修改,参考linux定时任务的写法,修改0 1 * * *部分即可。比如你想修改为每隔两小时运行,可以改成如下

代码语言:javascript
复制
0 */2 * * * /usr/bin/bash /app/autostart.sh

启动运行

  1. 将网盘里面内容下载到你的环境上(需要提前安装好docker)
  2. 导入镜像
代码语言:javascript
复制
docker load -i autoupdatetv.tar
  1. 参考上面的步骤修改配置文件
  2. 运行 将tvconfig文件作为容器卷映射到容器里面,比如你将以上文件保存到/opt/itv这个目录下,目录结构如下
代码语言:javascript
复制
root@localhost:/opt/itv# pwd
/opt/itv
root@localhost:/opt/itv# ls -lr
drwxr-sr-x 2 root users        64 11月11日 17:34 tvconfig
-rw-r--r-- 1 root users         0 11月11日 17:13 README.md
-rw------- 1 root users 852023296 11月11日 17:11 autoupdatetv.tar

使用docker直接运行

代码语言:javascript
复制
docker run -d --restart always -p 8081:8089 -v /opt/itv/tvconfig:/app/config autoupdatetv:1.0  

其中, -p 8081:8089 表示你的服务器8081端口代理容器内部的8089端口, -v /opt/itv/tvconfig:/app/config,表示将宿主机上的 /opt/itv/tvconfig挂载到容器内部/app/config下。

当然也可以docker-compose运行 可以编写yaml文件

代码语言:javascript
复制
version: '3.9'
services:
    autoupdatetv:
        image: 'autoupdatetv:1.0'
        volumes:
            - '/opt/itv/tvconfig:/app/config'
        ports:
            - '8081:8089'
        restart: always

注意:以上端口和路径需要自己根据自己的环境自行修改

容器运行成功之后,等几分钟,首次搜索完成。就可以通过如下地址**http://yourip:8081/static/result.m3u **来查看更新的m3u文件了

关于播放器

之前的文章,很多同学在问想用什么软件,还说让我打包个apk,其实没必要。你用任何一个软件,其实都不稳定,说不定哪天就跑路了(比如之前电视家)。所以我一直用tvbox加接口的方式,tvbox本身是个开源的, 不用担心跑路。 至于接口,你都本地部署了,改改参数就可以重新运行了,真正自主可控了。

不过目前tvbox的变种很多,推荐用多仓版本的(具体差异和下载地址自行搜索吧,魔改版太多了)。因为多仓版本可以自己定义直播地址,具体方法如下:首页---设置---配置地址,具体如下:

第一行是自己找的别人做好的接口地址。

第二行是直播接口 。

第三行是epg界面信息

手机观看效果,也可以安装到电视,投影,平板上:

以上就是本期内容了,欢迎各位观众老爷点评指正。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MUM笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 作用和约束
  • 文件说明
  • 相关配置填写说明
  • 启动运行
  • 关于播放器
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档