手把手教你零成本部署自己的IPTV直播源

还在为IPTV源失效而烦恼?借助这个开源项目,结合Cloudflare的免费服务,你能轻松搭建一个永不失效的直播源,还自带电子节目单!

📺 为什么需要自己部署IPTV源?

很多喜欢看电视的朋友都遇到过这些烦心事:

  • 网上找的直播源,用不了几天就失效
  • 各种付费软件价格高,还常卡顿
  • 想用TVBox看节目,却找不到好用的EPG(电子节目单)

其实,自己动手搭建一个永久免费、自动更新、带EPG的IPTV源,完全可行。今天介绍的这款开源项目——iptv-sources,正是为了解决这些问题而生。

项目亮点

  • ✅ 全自动更新:每2小时自动抓取最新源,永不过时
  • ✅ 零成本运行:基于GitHub Actions和Cloudflare Pages,完全免费
  • ✅ 多格式支持:M3U、TXT、TVBox JSON,兼容各种播放器
  • ✅ 自带EPG:提供两种电子节目单格式,预告信息已备好
  • ✅ 全球节点加速:借助Cloudflare CDN,速度快如闪电

🛠️ 准备工作

你只需要三样物品:

  1. 一个GitHub账号(免费注册)
  2. 一个Cloudflare账号(免费注册)
  3. 一个域名(免费注册)

无需服务器,无需域名(有域名的更好),所有操作都在浏览器中完成。

🚀 一键部署指南

第一步:Fork项目到你的GitHub

  1. 打开项目地址:https://github.com/yunnysunny/iptv-sources
  2. 点击右上角的 Fork 按钮,将项目复制到你的账户下

第二步:在Cloudflare Pages创建应用

  1. 登录Cloudflare控制台,进入 Workers & Pages
  2. 点击 Create application → Pages → Connect to Git
  3. 授权GitHub,选择你刚才Fork的项目
  4. 构建设置如下:
配置项 填写内容
生产分支 main
构建命令 pnpm build:static
输出目录 m3u
  1. 点击 Save and Deploy,等待第一次部署完成(约1-2分钟)

第三步:配置自动更新(关键步骤)

为了实现源的自动更新,需要给GitHub配置几个“钥匙”:

在Cloudflare创建API令牌

  • 登录Cloudflare,点击右上角头像 → My Profile → API Tokens
  • 点击 Create Token,选择 Edit Cloudflare Workers 模板
  • 在 Permissions 中,将 Account → Cloudflare Pages 设为 Edit
  • 点击 Continue to summary → Create Token,复制生成的令牌(只显示一次,务必保存好)

获取你的Account ID

  • 在Cloudflare控制台首页,右侧就能看到 Account ID,复制下来

在GitHub仓库添加Secrets

  1. 回到你Fork的项目,点击 Settings → Secrets and variables → Actions → New repository secret
  2. 依次添加以下三个:
Secret名称
CLOUDFLARE_API_TOKEN 刚才创建的API令牌
CLOUDFLARE_ACCOUNT_ID 你的Account ID
PROJECT_NAME 你的Pages项目名称(即刚才创建的)

添加完成后,GitHub Actions的定时任务就会每2小时自动抓取最新源,并发布到你的Cloudflare Pages上。

📱 如何使用你的直播源

部署完成后,你的直播源地址为:

  • https://你的项目名.pages.dev/youhun.m3u # 国内源
  • https://你的项目名.pages.dev/zbds.m3u # 备用源
  • https://你的项目名.pages.dev/all.m3u # 汇总源

使用方法:

  • Perfect Player / Kodi:在设置里直接添加M3U地址
  • TVBox:将上述地址填入“直播源”一栏
  • 手机/电视:用支持M3U的播放器打开即可

📺 EPG电子节目单配置

这个项目贴心地内置了两种节目单格式:

  1. 标准XMLTV格式(适合Kodi、Perfect Player等)
    https://你的项目名.pages.dev/epg/51zmt.xml
    在播放器里填入这个地址,就能看到央视、卫视的节目预告。

  2. TVBox专用JSON格式(零成本方案)
    在你的TVBox配置文件中,加入:

    {
     "epg": "https://你的项目名.pages.dev/epg/51zmt/{date}/{name}.json"
    }

    TVBox会自动替换当天日期和频道名,实现自动匹配节目单。

常见问题

Q:部署后打开链接是404怎么办?
A:GitHub Actions还没跑完,等待2小时左右自动更新一次即可。或者手动去Actions页面触发工作流。

Q:我的免费额度够用吗?
A:完全够用!Cloudflare Pages免费版每月500次构建,GitHub Actions每月2000分钟免费时长,这个项目每月只占用不到10分钟。

Q:可以换成自己的域名吗?
A:当然可以。在Cloudflare Pages的 Custom domains 里添加你的域名,并解析CNAME到Pages域名即可。

Q:我不想用GitHub,能直接部署到服务器吗?
A:可以,项目还提供了Docker镜像,运行 docker pull yunnysunny/iptv-sources 即可一键部署到自己的服务器上。

🎉 总结

通过以上步骤,你已拥有一个永久免费、全自动更新的IPTV源。不仅自己能使用,还能分享给家人朋友。以后再也不用到处找源、担心失效了。

如果你觉得这篇文章有用,欢迎分享给更多需要的人。如果使用中遇到任何问题,可以在项目GitHub仓库提issue,作者非常热情。

快去试试吧,享受无忧看电视的快乐! 🎬

本文介绍的IPTV源仅用于学习交流,请勿用于商业用途。直播内容版权归各电视台所有,请遵守当地法律法规。

0 0

评论区 (2)

发表评论

共有 2 条评论

avatar
搞机老法师1 个月前

作为搞过类似自动化部署的,提一句:GitHub Actions有免费额度限制,公共仓库虽然不限时长但并发有限,频繁更新记得留意用量,建议把抓取间隔调成4小时更稳妥。

avatar
追剧小能手1 个月前

终于有人把这套流程讲清楚了!之前老担心源失效,跟着教程用GitHub Actions部署完,现在看电视再也不用到处翻新源了,省心不少。