以下一共4种安装运行方式,选择一种适合您的即可。
工作流部署(自动更新)
一.进入Github
https://github.com
登录或注册你的Github账户
二.进入IPTV-API项目
https://github.com/Guovin/iptv-api
点击Star收藏该项目(您的Star是我持续更新的动力)
三.Fork项目
将本仓库的源代码复制至个人账号仓库中
1.首页点击 Fork:
2.Fork 创建个人仓库:
1.个人仓库命名,可按您喜欢的名字随意命名(最终直播源结果链接取决于该名称),这里以默认iptv-api 为例
2.确认信息无误后,点击确认创建
四.更新源代码
由于本项目将持续迭代优化,如果您想获取最新的更新内容,可进行如下操作
1.Watch
关注该项目,后续更新日志将以releases发布,届时您将收到邮件通知
2.Sync fork
正常更新:
回到您Fork后的仓库首页,如果项目有更新内容,点击Sync fork,Update branch确认即可更新最新代码
没有Update branch按钮,更新冲突:
这是因为某些文件与主仓库的默认文件冲突了,备份个人配置文件后,点击Discard commits即可更新最新代码
五.修改模板
当您在步骤一中点击确认创建,成功后会自动跳转到您的个人仓库。这个时候您的个人仓库就创建完成了,可以定制个人的直播源频道菜单了!
1.点击config 文件夹内 demo.txt 模板文件:
您可以复制并参考默认模板的格式进行后续操作。
2.config文件夹内创建个人模板user_demo.txt:
1.点击config目录
2.创建文件
3.模板文件命名为user_demo.txt
4.模板文件需要按照(频道分类,#genre#),(频道名称,频道接口)进行编写,注意是英文逗号。如果需要将该接口设为白名单(不测速、保留在结果最前),可在地址后添加$!即可,例如http://xxx$!。后面也可以添加额外说明信息,如:http://xxx$!白名单
5.点击Commit changes...进行保存
六.修改配置
跟编辑模板一样,修改运行配置
1.点击config 文件夹内的 config.ini 配置文件:
2.复制默认配置文件内容:
3.config文件夹内新建个人配置文件 user_config.ini:
1.创建文件
2.配置文件命名为user_config.ini
3.粘贴默认配置
4.修改模板和结果文件配置:
source_file = config/user_demo.txt
final_file = output/user_result.txt
5.点击Commit changes...进行保存
按照您的需要适当调整配置,以下是默认配置说明:
https://github.com/Guovin/iptv-api?tab=readme-ov-file#%E9%85%8D%E7%BD%AE
Tips:
1.对于开启显示接口信息,由于部分播放器(如PotPlayer)不支持解析接口补充信息,导致无法正常播放,可修改配置:
open_url_info =False
(GUI:取消勾选显示接口信息)关闭该功能
2.如果你的网络确定支持IPv6,可修改配置:
ipv6_support =True
(GUI:勾选跳过IPv6检测)跳过支持性检查
3.开启关键字搜索(默认关闭)会大幅增加更新耗时,不推荐开启
同理你可以自定义订阅源、黑名单、白名单(建议复制文件重命名添加user_前缀)
订阅源(config/subscribe.txt):
支持txt和m3u地址作为订阅,程序将依次读取其中的频道接口数据
黑名单(config/blacklist.txt):
符合黑名单关键字的接口将会被过滤,不会被收集,比如含广告等低质量接口
白名单(config/whitelist.txt):
白名单内的接口或订阅源获取的接口将不会参与测速,优先排序至结果最前。
填写频道名称会直接保留该记录至最终结果,如:CCTV-1,接口地址,只填写接口地址则对所有频道生效,多条记录换行输入。
组播数据(config/rtp):
此外,对于组播源数据你也可以自行维护,文件位于config/rtp目录下,文件命名格式为:地区_运营商.txt
七.运行更新
如果您的模板和配置修改没有问题的话,这时就可以配置 Actions 来实现自动更新
1.进入Actions:
2.开启Actions工作流:
由于 Fork 的仓库 Actions 工作流是默认关闭的,需要您手动确认开启,点击红框中的按钮确认开启
开启成功后,可以看到目前是没有任何工作流在运行的,别急,下面开始运行您第一个更新工作流
3.运行更新工作流:
(1)启用 update schedule:
1.点击 Workflows 分类下的update schedule
2.由于 Fork 的仓库工作流是默认关闭的,点击Enable workflow按钮确认开启
(2)根据分支运行 Workflow:
这个时候就可以运行更新工作流了
1.点击Run workflow
2.这里可以切换您要运行的仓库分支,由于 Fork 默认拉取的是 master 分支,如果您修改的模板和配置也在 master 分支,这里选择master就好了,点击Run workflow确认运行
(3)Workflow 运行中:
稍等片刻,就可以看到您的第一条更新工作流已经在运行了!
(注意:由于运行时间取决于您的模板频道数量等配置,也很大程度取决于当前网络状况,请耐心等待,默认模板与配置一般需要 15分钟左右。)
(4)Workflow 取消运行:
如果您觉得这次的更新不太合适,需要修改模板或配置再运行,可以点击Cancel run取消本次运行
(5)Workflow 运行成功:
如果一切正常,稍等片刻后就可以看到该条工作流已经执行成功(绿色勾图标)
此时您可以访问代理文件链接,查看最新结果有没有同步即可:
https://ghgo.xyz/raw.githubusercontent.com/您的github用户名/仓库名称(对应上述Fork创建时的iptv-api)
/master/output/user_result.txt
或
https://cdn.jsdelivr.net/gh/您的github用户名/仓库名称(对应上述Fork创建时的iptv-api)@
master/output/user_result.txt
如果访问该链接能正常返回更新后的接口内容,说明您的直播源接口链接已经大功告成了!将该链接复制粘贴到TVBox等软件配置栏中即可使用。
注意:除了首次执行工作流需要您手动触发,后续执行(默认北京时间每日6:00 与 18:00)将自动触发。如果您修改了模板或配置文件想立刻执行更新,可手动触发(2)中的Run workflow即可。
4.修改工作流更新频率(可选)
如果您想修改更新频率(默认北京时间每日 6:00 与 18:00),可修改 on:schedule:- cron 字段:
如果您想每2天执行更新可以这样修改:
- cron: '0 22 */2 * *'
- cron: '0 10 */2 * *'
1.强烈不建议修改更新频率过高,因为短时间内的接口内容并无差异,过高的更新频率与高耗时运行的工作流都有可能被判定为资源滥用,导致仓库与账户被封禁的风险。
2.请留意您的工作流运行时长,若发现执行时间过长,需要适当删减模板中频道数量、修改关于数量等配置,以达到合规的运行要求。
命令行(本地运行)
1.安装Python
请至官方下载并安装 Python,安装时请选择将 Python 添加到系统环境变量Path中
2.运行更新
安装依赖:
pip install pipenv
pipenv install--dev
启动更新:
pipenv run dev
启动服务:
pipenv run service
GUI软件(本地运行)
1.下载IPTV-API软件
https://github.com/Guovin/iptv-api/releases,打开软件,点击开始更新,稍等片刻即可完成更新
2.或者在项目目录下运行以下命令,即可打开GUI 软件:
pipenv run ui
如果你看不懂软件的配置项,不要动,直接点开始更新即可
Docker(服务器部署)
- iptv-api(完整版本):性能要求较高,更新速度较慢,稳定性、成功率高;修改配置 open_driver = False 可切换到 Lite版本运行模式(推荐酒店源、组播源、关键字搜索使用此版本)
- iptv-api:lite(精简版本):轻量级,性能要求低,更新速度快,稳定性不确定(推荐订阅源使用此版本)
1.拉取镜像:
- iptv-api
docker pull guovern/iptv-api:latest
- iptv-api:lite
docker pull guovern/iptv-api:lite
2.运行容器:
- iptv-api
docker run -d -p 8000:8000 guovern/iptv-api
- iptv-api:lite
docker run -d -p 8000:8000 guovern/iptv-api:lite
卷挂载参数(可选,推荐):
实现宿主机文件与容器文件同步,修改模板、配置、获取更新结果文件可直接在宿主机文件夹下操作以宿主机路径/etc/docker为例:
- iptv-api
docker run -v /etc/docker/config:/iptv-api/config -v /etc/docker/output:/iptv-api/output -d -p 8000:8000 guovern/iptv-api
- iptv-api:lite
docker run -v /etc/docker/config:/iptv-api-lite/config -v /etc/docker/output:/iptv-api-lite/output -d -p 8000:8000 guovern/iptv-api:lite
注意:如果重新拉取镜像进行更新版本后,涉及到配置文件变更或增加新配置时,务必覆盖主机的旧配置文件(config目录),因为主机的配置文件是无法自动更新的,否则容器还是以旧配置运行。
端口环境变量:
-e APP_PORT=8000
3.更新结果:
接口地址:ip:8000
M3u 接口:ip:8000/m3u
Txt 接口:ip:8000/txt
接口内容:ip:8000/content
测速日志:ip:8000/log
上传更新文件至Github仓库(可选)
如果您没有自己的域名地址,接口更新完成后,可将user_result.txt上传至Github个人仓库,即可使用
https://ghgo.xyz/raw.githubusercontent.com/您的github用户名/仓库名称(对应上述Fork创建时的iptv-api)
/master/output/user_result.txt
或
https://cdn.jsdelivr.net/gh/您的github用户名/仓库名称(对应上述Fork创建时的iptv-api)@
master/output/user_result.txt
如果您不想折腾,可以直接使用以下接口,永久自动更新
接口源:
https://ghgo.xyz/raw.githubusercontent.com/Guovin/iptv-api/gd/output/result.m3u
(m3u地址支持频道图标)
或
https://ghgo.xyz/raw.githubusercontent.com/Guovin/iptv-api/gd/output/result.txt
若失效可使用:
https://cdn.jsdelivr.net/gh/Guovin/iptv-api@gd/output/result.m3u
或
https://cdn.jsdelivr.net/gh/Guovin/iptv-api@gd/output/result.txt
数据源(首页数据):
https://ghgo.xyz/raw.githubusercontent.com/Guovin/iptv-api/gd/source.json
若失效可使用:
https://cdn.jsdelivr.net/gh/Guovin/iptv-api@gd/source.json
~
更新时间:2025-05-30
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-=date("Y",time());?> All Rights Reserved. Powered By 61893.com 闽ICP备11008920号
闽公网安备35020302035593号