Auto Update #454
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Auto Update | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: '0 1,9,17 * * *' | |
push: | |
paths-ignore: | |
- 。github | |
- 。gitignore | |
- LICENSE | |
- logo.png | |
env: | |
TZ: Asia/Shanghai | |
jobs: | |
Update: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-latest | |
branch: master | |
owner: kilvn | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Check Repository Owner | |
id: check_owner | |
run: | | |
if [ "${{ github.repository_owner }}" != "${{ matrix.owner }}" ]; then | |
echo "Repository owner is not ${{ matrix.owner }}. Cancelling the job." | |
exit 1 | |
fi | |
- name: GetTime | |
run: echo "DATE=$(date +'%Y-%m-%d %H:%M:%S CST' | sed 's/ CST$//')" >> $GITHUB_ENV | |
- name: Update Files | |
run: | | |
rm -f fanmingming.m3u && wget https://raw.githubusercontent.com/fanmingming/live/main/tv/m3u/ipv6.m3u -O fanmingming.m3u | |
# 央视源 | |
cat fanmingming.m3u > CCTV.m3u | |
sed -i -n '/央视频道/,+1p' CCTV.m3u | |
sed -i '/^\s*$/d' CCTV.m3u | |
# 卫视源、地方频道、数字频道、港澳台 | |
cat fanmingming.m3u > CNTV1.m3u && sed -i -n '/卫视频道/,+1p' CNTV1.m3u | |
cat fanmingming.m3u > CNTV2.m3u && sed -i -n '/数字频道/,+1p' CNTV2.m3u | |
rm -f zbds.m3u && wget https://raw.githubusercontent.com/vbskycn/iptv/master/tv/iptv4.m3u -O zbds.m3u | |
cat zbds.m3u > CNTV3.m3u && sed -i -n '/地方频道/,+1p' CNTV3.m3u | |
cat zbds.m3u > CHC.m3u && sed -i -n '/电影频道/,+1p' CHC.m3u && sed -i -n '/CHC/,+1p' CHC.m3u | |
# cat zbds.m3u > ZBZG.m3u && sed -i -n '/直播中国/,+1p' ZBZG.m3u | |
# wget https://raw.githubusercontent.com/yan-sheng-li/tvhub/main/tv.txt -O ZBZG.m3u && sed -i -n '/直播中国/,+1p' ZBZG.m3u | |
cat live-china.m3u > ZBZG.m3u | |
wget https://raw.githubusercontent.com/zhumeng11/IPTV/main/IPTV.m3u -O GAT.m3u && sed -i '/#港澳台/d' GAT.m3u && sed -i '/爱尔达/d' GAT.m3u && sed -i -n '/港澳台/,+1p' GAT.m3u | |
cat CNTV1.m3u >> CNTV.m3u | |
cat CNTV3.m3u >> CNTV.m3u | |
cat CHC.m3u >> CNTV.m3u | |
cat CNTV2.m3u >> CNTV.m3u | |
cat GAT.m3u >> CNTV.m3u | |
echo "" >> CNTV.m3u | |
cat ZBZG.m3u >> CNTV.m3u | |
rm -f CNTV1.m3u CNTV2.m3u CNTV3.m3u CHC.m3u GAT.m3u ZBZG.m3u fanmingming.m3u zbds.m3u | |
sed -i '/^\s*$/d' CNTV.m3u | |
# 整合源 | |
cat CCTV.m3u > iptv.m3u | |
cat CNTV.m3u >> iptv.m3u | |
sed -i '/#EXTM3U/d' iptv.m3u | |
sed -i '1i #EXTM3U x-tvg-url="https://live.kilvn.com/epg.xml.gz,https://e.erw.cc/all.xml.gz,http://epg.51zmt.top:8000/e.xml.gz" catchup="append" catchup-source="?playseek=${(b)yyyyMMddHHmmss}-${(e)yyyyMMddHHmmss}"' iptv.m3u | |
sed -i 's|"https://raw.githubusercontent.com|"https://ghproxy.kilvn.com/https://raw.githubusercontent.com|g' iptv.m3u | |
sed -i '/^\s*$/d' iptv.m3u | |
# 大人源 | |
rm -f Adult.m3u && wget http://adultiptv.net/chs.m3u -O Adult.m3u | |
sed -i -n '/XXX/,+1p' Adult.m3u | |
sed -i 's/XXX/成人频道/' Adult.m3u | |
sed -i 's/AdultIPTV.net //g' Adult.m3u | |
sed -i '/^\s*$/d' Adult.m3u | |
cat iptv.m3u > iptv+.m3u | |
echo "" >> iptv+.m3u | |
cat Adult.m3u >> iptv+.m3u | |
sed -i '/^\s*$/d' iptv+.m3u | |
rm -f CCTV.m3u CNTV.m3u Adult.m3u | |
# FM源 | |
rm -f radio.m3u && wget https://raw.githubusercontent.com/huangsuming/iptv/main/list/radio.txt -O radio.m3u | |
# 节目源 | |
rm -f epg.xml && wget https://epg.112114.xyz/pp.xml -O epg.xml | |
sed -i 's/中国教育1台/CETV-1/g' epg.xml | |
sed -i 's/中国教育2台/CETV-2/g' epg.xml | |
sed -i 's/中国教育3台/CETV-3/g' epg.xml | |
sed -i 's/中国教育4台/CETV-4/g' epg.xml | |
sed -i '/<channel id="中国教育一套">/,/<\/channel>/d; /<programme channel="中国教育一套".*>/,/<\/programme>/d' epg.xml | |
rm -f epg.xml.gz && gzip -k epg.xml | |
# README | |
sed -i "s/已于 [0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\} [0-9]\{2\}:[0-9]\{2\}:[0-9]\{2\} 自动更新/已于 ${DATE} 自动更新/g" README.md | |
- name: Commit | |
run: | | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
git checkout --orphan latest_branch | |
git add -A | |
git commit -am "${DATE} 更新." | |
git branch -D ${{ matrix.branch }} | |
git branch -m ${{ matrix.branch }} | |
- name: Push | |
run: git push -f origin ${{ matrix.branch }} |