mirror of
https://github.com/cluntop/tvbox.git
synced 2026-01-12 23:58:42 +08:00
Compare commits
21 Commits
05f9453dc1
...
46cddeff43
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46cddeff43 | ||
|
|
837853f949 | ||
|
|
0dc23cf940 | ||
|
|
24cfd50d0d | ||
|
|
b42aa3a59b | ||
|
|
69afe1ce36 | ||
|
|
fe968dc0f2 | ||
|
|
1300ef7076 | ||
|
|
f6cb47a735 | ||
|
|
533e701f9e | ||
|
|
0da506dfc7 | ||
|
|
412827f42c | ||
|
|
6845db2085 | ||
|
|
c21da91754 | ||
|
|
16f24d2748 | ||
|
|
4c21838421 | ||
|
|
44371b59af | ||
|
|
ded3438fc8 | ||
|
|
5ea1ed6050 | ||
|
|
1601477a55 | ||
|
|
cb74b12fa6 |
77
js/聚合短剧.js
77
js/聚合短剧.js
@ -22,14 +22,12 @@ const aggConfig = {
|
|||||||
软鸭: { host: 'https://api.xingzhige.com', url1: '/API/playlet', search: '/API/playlet' },
|
软鸭: { host: 'https://api.xingzhige.com', url1: '/API/playlet', search: '/API/playlet' },
|
||||||
七猫: { host: 'https://api-store.qmplaylet.com', url1: '/api/v1/playlet/index', url2: 'https://api-read.qmplaylet.com/player/api/v1/playlet/info', search: '/api/v1/playlet/search' },
|
七猫: { host: 'https://api-store.qmplaylet.com', url1: '/api/v1/playlet/index', url2: 'https://api-read.qmplaylet.com/player/api/v1/playlet/info', search: '/api/v1/playlet/search' },
|
||||||
围观: { host: 'https://api.drama.9ddm.com', url1: '/drama/home/shortVideoTags', url2: '/drama/home/shortVideoDetail', search: '/drama/home/search' },
|
围观: { host: 'https://api.drama.9ddm.com', url1: '/drama/home/shortVideoTags', url2: '/drama/home/shortVideoDetail', search: '/drama/home/search' },
|
||||||
碎片: { host: 'https://free-api.bighotwind.cc', url1: '/papaya/papaya-api/theater/tags', url2: '/papaya/papaya-api/videos/info', search: '/papaya/papaya-api/videos/page' },
|
|
||||||
甜圈: { host: 'https://mov.cenguigui.cn', url1: '/duanju/api.php?classname', url2: '/duanju/api.php?book_id', search: '/duanju/api.php?name' }
|
甜圈: { host: 'https://mov.cenguigui.cn', url1: '/duanju/api.php?classname', url2: '/duanju/api.php?book_id', search: '/duanju/api.php?name' }
|
||||||
},
|
},
|
||||||
platformList: [
|
platformList: [
|
||||||
{ name: '甜圈短剧', id: '甜圈' }, { name: '七猫短剧', id: '七猫' }, { name: '锦鲤短剧', id: '锦鲤' },
|
{ name: '甜圈短剧', id: '甜圈' }, { name: '七猫短剧', id: '七猫' }, { name: '锦鲤短剧', id: '锦鲤' },
|
||||||
{ name: '番茄短剧', id: '番茄' }, { name: '星芽短剧', id: '星芽' }, { name: '西饭短剧', id: '西饭' },
|
{ name: '番茄短剧', id: '番茄' }, { name: '星芽短剧', id: '星芽' }, { name: '西饭短剧', id: '西饭' },
|
||||||
{ name: '软鸭短剧', id: '软鸭' }, { name: '百度短剧', id: '百度' }, { name: '围观短剧', id: '围观' },
|
{ name: '软鸭短剧', id: '软鸭' }, { name: '百度短剧', id: '百度' }, { name: '围观短剧', id: '围观' }
|
||||||
{ name: '碎片剧场', id: '碎片' }
|
|
||||||
],
|
],
|
||||||
search: { limit: 30, timeout: 6000 }
|
search: { limit: 30, timeout: 6000 }
|
||||||
};
|
};
|
||||||
@ -43,7 +41,6 @@ const ruleFilterDef = {
|
|||||||
软鸭: { area: '战神' },
|
软鸭: { area: '战神' },
|
||||||
七猫: { area: '0' },
|
七猫: { area: '0' },
|
||||||
围观: { area: '' },
|
围观: { area: '' },
|
||||||
碎片: { area: '' },
|
|
||||||
甜圈: { area: '推荐榜' }
|
甜圈: { area: '推荐榜' }
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -238,25 +235,6 @@ async function category(tid, pg, filter, extend) {
|
|||||||
if (res?.data) videos.push(...res.data.map(i => ({
|
if (res?.data) videos.push(...res.data.map(i => ({
|
||||||
vod_id: `围观@${i.oneId}`, vod_name: i.title, vod_pic: i.vertPoster, vod_remarks: `集数:${i.episodeCount} 播放:${i.viewCount}`
|
vod_id: `围观@${i.oneId}`, vod_name: i.title, vod_pic: i.vertPoster, vod_remarks: `集数:${i.episodeCount} 播放:${i.viewCount}`
|
||||||
})));
|
})));
|
||||||
} else if (tid === '碎片') {
|
|
||||||
let openId = (await md5(guid())).substring(0, 16);
|
|
||||||
let body = JSON.stringify({ openId });
|
|
||||||
let key = CryptoJS.enc.Utf8.parse("p0sfjw@k&qmewu#w");
|
|
||||||
const encrypted = CryptoJS.AES.encrypt(body, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }).ciphertext.toString(CryptoJS.enc.Hex);
|
|
||||||
const tokenRes = JSON.parse(await request("https://free-api.bighotwind.cc/papaya/papaya-api/oauth2/uuid", {
|
|
||||||
method: 'POST', headers: { 'Content-Type': 'application/json', 'key': encrypted }, body
|
|
||||||
}));
|
|
||||||
if (tokenRes?.data?.token) {
|
|
||||||
const headers = { ...aggConfig.headers.default, 'Authorization': tokenRes.data.token };
|
|
||||||
const url = `${plat.host}${plat.search}?type=5&tagId=&pageNum=${page}&pageSize=24`;
|
|
||||||
const res = JSON.parse(await request(url, { headers }));
|
|
||||||
if (res?.list) videos.push(...res.list.map(i => ({
|
|
||||||
vod_id: `碎片@${i.itemId}@${i.videoCode}`,
|
|
||||||
vod_name: i.title,
|
|
||||||
vod_pic: `https://speed.hiknz.com/papaya/papaya-file/files/download/${i.imageKey}/${i.imageName}`,
|
|
||||||
vod_remarks: `集数:${i.episodesMax} 播放:${i.hitShowNum}`
|
|
||||||
})));
|
|
||||||
}
|
|
||||||
} else if (tid === '甜圈') {
|
} else if (tid === '甜圈') {
|
||||||
const url = `${plat.host}${plat.url1}=${encodeURIComponent(area)}&offset=${page}`;
|
const url = `${plat.host}${plat.url1}=${encodeURIComponent(area)}&offset=${page}`;
|
||||||
const res = JSON.parse(await request(url));
|
const res = JSON.parse(await request(url));
|
||||||
@ -340,8 +318,8 @@ async function detail(id) {
|
|||||||
} else if (platId === '软鸭') {
|
} else if (platId === '软鸭') {
|
||||||
const didDecoded = decodeURIComponent(did);
|
const didDecoded = decodeURIComponent(did);
|
||||||
const [title, img, author, type, desc, book_id] = didDecoded.split('@');
|
const [title, img, author, type, desc, book_id] = didDecoded.split('@');
|
||||||
const detailUrl = `${plat.host}${plat.url1}/?book_id=${book_id}`;
|
const detailUrl = `${plat.host}${plat.url1}/?book_id=${book_id || did.split('@')[5]}`;
|
||||||
const res = JSON.parse(await request(detailUrl));
|
const res = JSON.parse(await request(detailUrl, { headers: aggConfig.headers.default }));
|
||||||
const u = (res.data?.video_list || []).map(e => `${e.title}$${e.video_id}`).join('#');
|
const u = (res.data?.video_list || []).map(e => `${e.title}$${e.video_id}`).join('#');
|
||||||
vod = { ...vod, vod_name: title, vod_pic: img, vod_remarks: type, vod_content: desc, vod_play_from: '软鸭短剧', vod_play_url: u };
|
vod = { ...vod, vod_name: title, vod_pic: img, vod_remarks: type, vod_content: desc, vod_play_from: '软鸭短剧', vod_play_url: u };
|
||||||
} else if (platId === '围观') {
|
} else if (platId === '围观') {
|
||||||
@ -350,29 +328,8 @@ async function detail(id) {
|
|||||||
const d = res.data;
|
const d = res.data;
|
||||||
vod = { ...vod, vod_name: d[0].title, vod_pic: d[0].vertPoster, vod_remarks: `共${d.length}集`, vod_play_from: '围观短剧', vod_play_url: d.map(e => `${e.title}第${e.playOrder}集$${e.playSetting}`).join('#') };
|
vod = { ...vod, vod_name: d[0].title, vod_pic: d[0].vertPoster, vod_remarks: `共${d.length}集`, vod_play_from: '围观短剧', vod_play_url: d.map(e => `${e.title}第${e.playOrder}集$${e.playSetting}`).join('#') };
|
||||||
}
|
}
|
||||||
} else if (platId === '碎片') {
|
|
||||||
const [itemId, videoCode] = did.split('@');
|
|
||||||
let openId = (await md5(guid())).substring(0, 16);
|
|
||||||
let body = JSON.stringify({ openId });
|
|
||||||
let key = CryptoJS.enc.Utf8.parse("p0sfjw@k&qmewu#w");
|
|
||||||
const encrypted = CryptoJS.AES.encrypt(body, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }).ciphertext.toString(CryptoJS.enc.Hex);
|
|
||||||
const tokenRes = JSON.parse(await request("https://free-api.bighotwind.cc/papaya/papaya-api/oauth2/uuid", {
|
|
||||||
method: 'POST', headers: { 'Content-Type': 'application/json', 'key': encrypted }, body
|
|
||||||
}));
|
|
||||||
if (tokenRes?.data?.token) {
|
|
||||||
const headers = { ...aggConfig.headers.default, 'Authorization': tokenRes.data.token };
|
|
||||||
const res = JSON.parse(await request(`${plat.host}${plat.url2}?videoCode=${videoCode}&itemId=${itemId}`, { headers }));
|
|
||||||
if (res) {
|
|
||||||
const d = res.data || res;
|
|
||||||
const pic = `https://speed.hiknz.com/papaya/papaya-file/files/download/${d.imageKey}/${d.imageName}`;
|
|
||||||
const u = (d.episodesList || []).map(e => {
|
|
||||||
const best = e.resolutionList?.sort((a, b) => b.resolution - a.resolution)[0];
|
|
||||||
return best ? `第${e.episodes}集$https://speed.hiknz.com/papaya/papaya-file/files/download/${best.fileKey}/${best.fileName}` : null;
|
|
||||||
}).filter(Boolean).join('#');
|
|
||||||
vod = { ...vod, vod_name: d.title, vod_pic: pic, vod_remarks: `共${d.episodesMax || 0}集`, vod_play_from: '碎片剧场', vod_play_url: u };
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (e) { vod.vod_name = '加载失败'; }
|
} catch (e) { vod.vod_name = '加载失败'; }
|
||||||
return JSON.stringify({ list: [vod] });
|
return JSON.stringify({ list: [vod] });
|
||||||
}
|
}
|
||||||
@ -416,6 +373,11 @@ async function play(flag, id) {
|
|||||||
}
|
}
|
||||||
} catch {}
|
} catch {}
|
||||||
}
|
}
|
||||||
|
if (/软鸭/.test(flag)) {
|
||||||
|
const response = await request(`${aggConfig.platform.软鸭.host}/API/playlet/?video_id=${id}&quality=1080p`, { headers: aggConfig.headers.default });
|
||||||
|
const res = JSON.parse(response);
|
||||||
|
return JSON.stringify({ parse: 0, url: res.data?.video?.url || '' });
|
||||||
|
}
|
||||||
if (/围观/.test(flag)) {
|
if (/围观/.test(flag)) {
|
||||||
try {
|
try {
|
||||||
const ps = typeof id === 'string' ? JSON.parse(id) : id;
|
const ps = typeof id === 'string' ? JSON.parse(id) : id;
|
||||||
@ -449,7 +411,7 @@ async function search(wd, quick, pg) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
} catch {}
|
} catch {}
|
||||||
const platforms = ['百度', '锦鲤', '番茄', '星芽', '西饭', '软鸭', '围观', '碎片', '甜圈'];
|
const platforms = ['百度', '锦鲤', '番茄', '星芽', '西饭', '软鸭', '围观', '甜圈'];
|
||||||
for (const tid of platforms) {
|
for (const tid of platforms) {
|
||||||
const plat = aggConfig.platform[tid];
|
const plat = aggConfig.platform[tid];
|
||||||
try {
|
try {
|
||||||
@ -487,25 +449,6 @@ async function search(wd, quick, pg) {
|
|||||||
body: JSON.stringify({ audience: "", page, pageSize: 30, searchWord: wd, subject: "" })
|
body: JSON.stringify({ audience: "", page, pageSize: 30, searchWord: wd, subject: "" })
|
||||||
});
|
});
|
||||||
data = (JSON.parse(res)?.data || []).map(i => ({ vod_id: `围观@${i.oneId}`, vod_name: i.title, vod_pic: i.vertPoster, vod_remarks: `围观短剧|集数:${i.episodeCount} 播放:${i.viewCount}` }));
|
data = (JSON.parse(res)?.data || []).map(i => ({ vod_id: `围观@${i.oneId}`, vod_name: i.title, vod_pic: i.vertPoster, vod_remarks: `围观短剧|集数:${i.episodeCount} 播放:${i.viewCount}` }));
|
||||||
} else if (tid === '碎片') {
|
|
||||||
let openId = (await md5(guid())).substring(0, 16);
|
|
||||||
let body = JSON.stringify({ openId });
|
|
||||||
let key = CryptoJS.enc.Utf8.parse("p0sfjw@k&qmewu#w");
|
|
||||||
const encrypted = CryptoJS.AES.encrypt(body, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }).ciphertext.toString(CryptoJS.enc.Hex);
|
|
||||||
const tokenRes = JSON.parse(await request("https://free-api.bighotwind.cc/papaya/papaya-api/oauth2/uuid", {
|
|
||||||
method: 'POST', headers: { 'Content-Type': 'application/json', 'key': encrypted }, body, timeout: aggConfig.search.timeout
|
|
||||||
}));
|
|
||||||
if (tokenRes?.data?.token) {
|
|
||||||
const headers = { ...aggConfig.headers.default, 'Authorization': tokenRes.data.token };
|
|
||||||
const url = `${plat.host}${aggConfig.platform.碎片.search}?type=5&tagId=&pageNum=${page}&pageSize=30&title=${encodeURIComponent(wd)}`;
|
|
||||||
res = await request(url, { headers });
|
|
||||||
data = (JSON.parse(res)?.list || []).map(i => ({
|
|
||||||
vod_id: `碎片@${i.itemId}@${i.videoCode}`,
|
|
||||||
vod_name: i.title,
|
|
||||||
vod_pic: `https://speed.hiknz.com/papaya/papaya-file/files/download/${i.imageKey}/${i.imageName}`,
|
|
||||||
vod_remarks: `碎片剧场|集数:${i.episodesMax} 播放:${i.hitShowNum}`
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
} else if (tid === '甜圈') {
|
} else if (tid === '甜圈') {
|
||||||
const url = `${plat.host}${plat.search}=${encodeURIComponent(wd)}&offset=${page}`;
|
const url = `${plat.host}${plat.search}=${encodeURIComponent(wd)}&offset=${page}`;
|
||||||
res = await request(url);
|
res = await request(url);
|
||||||
|
|||||||
8050
lib/iptv.m3u
8050
lib/iptv.m3u
File diff suppressed because it is too large
Load Diff
7895
lib/iptv.txt
7895
lib/iptv.txt
File diff suppressed because it is too large
Load Diff
@ -1275,14 +1275,109 @@ MovieSphere,
|
|||||||
The Lego Channel,
|
The Lego Channel,
|
||||||
NextUp Live Comedy,
|
NextUp Live Comedy,
|
||||||
半岛英语,
|
半岛英语,
|
||||||
|
香港国际财经,
|
||||||
|
HOY 资讯台,
|
||||||
|
AnimalPlanet,
|
||||||
|
Awani,
|
||||||
|
BBC1,
|
||||||
|
BBC2,
|
||||||
|
Bloomberg,
|
||||||
|
CBS News,
|
||||||
|
CNBC,
|
||||||
|
ELEVEN 體育1台,
|
||||||
|
EYETV旅遊,
|
||||||
|
EYETV戲劇,
|
||||||
|
GOODTVCH02真理台,
|
||||||
|
M-BBCLifestyle,
|
||||||
|
M--SkyZ,
|
||||||
|
MusicTV,
|
||||||
|
RHK31,
|
||||||
|
RHK32,
|
||||||
|
SkySportsCricket,
|
||||||
|
TLC旅遊生活,
|
||||||
|
TV8,
|
||||||
|
ViuTV6,
|
||||||
|
愛爾達體育1台,
|
||||||
|
愛爾達體育2,
|
||||||
|
八大第一台,
|
||||||
|
八大戲劇,
|
||||||
|
八大綜合,
|
||||||
|
博斯高球1,
|
||||||
|
博斯高球2,
|
||||||
|
博斯魅力,
|
||||||
|
博斯網球,
|
||||||
|
博斯運動2,
|
||||||
|
大愛電視,
|
||||||
|
東森LIVE,
|
||||||
|
東森電影,
|
||||||
|
東森洋片,
|
||||||
|
東森綜合,
|
||||||
|
动物星球,
|
||||||
|
動物星球,
|
||||||
|
非凡新聞,
|
||||||
|
國家地理野生,
|
||||||
|
好萊塢電影,
|
||||||
|
靖天國際台,
|
||||||
|
美亞電影,
|
||||||
|
民視臺灣,
|
||||||
|
三立台灣,
|
||||||
|
時尚台FTV,
|
||||||
|
探索動力,
|
||||||
|
探索動力DMAX,
|
||||||
|
探索頻道,
|
||||||
|
探索亞洲,
|
||||||
|
緯來日本,
|
||||||
|
衛視中文,
|
||||||
|
中天娛樂,
|
||||||
|
中天綜合,
|
||||||
|
星空国际,
|
||||||
|
澳视澳门,
|
||||||
|
TVB J1,
|
||||||
|
千禧经典,
|
||||||
|
星光影视,
|
||||||
|
三立综合,
|
||||||
|
三立都会,
|
||||||
|
东森戏剧,
|
||||||
|
MOMO TV,
|
||||||
|
港台电视31,
|
||||||
|
港台电视32,
|
||||||
|
HOY78,
|
||||||
|
ASTRO AOD,
|
||||||
|
DAZN体育1,
|
||||||
|
DAZN体育2,
|
||||||
|
ELEVEN体育3,
|
||||||
|
韩国电影1,
|
||||||
|
韩国电影2,
|
||||||
|
RTHK31,
|
||||||
|
澳视卫星,
|
||||||
|
八度空间,
|
||||||
|
CH5,
|
||||||
|
CH8,
|
||||||
|
CHU,
|
||||||
|
天映频道,
|
||||||
|
Astro AEC,
|
||||||
|
爱奇艺,
|
||||||
|
Astro欢喜台,
|
||||||
|
亚洲武侠,
|
||||||
|
TVB生活台,
|
||||||
|
NOW NEWS,
|
||||||
|
澳门体育,
|
||||||
|
澳门综艺,
|
||||||
|
NU2,
|
||||||
|
华视HD,
|
||||||
|
TVBSNEWS,
|
||||||
|
八大第1台,
|
||||||
|
八大综合台,
|
||||||
|
Eleven体育,
|
||||||
|
星光综合台,
|
||||||
|
美国新闻,
|
||||||
|
韩国阿里郎,
|
||||||
|
|
||||||
YouTube,#genre#
|
YouTube,#genre#
|
||||||
三立INEWS,
|
三立INEWS,
|
||||||
运通财经,
|
运通财经,
|
||||||
ABC NEWS,
|
ABC NEWS,
|
||||||
天才冲冲冲「综艺」,
|
天才冲冲冲「综艺」,
|
||||||
ASTRO AWANI,
|
|
||||||
Tokyo Shibuya「东京涩谷」,
|
Tokyo Shibuya「东京涩谷」,
|
||||||
大爱,
|
大爱,
|
||||||
三立NEWS+,
|
三立NEWS+,
|
||||||
|
|||||||
@ -401,7 +401,6 @@ BRTV国际频道,
|
|||||||
南京十八,
|
南京十八,
|
||||||
江苏体育,
|
江苏体育,
|
||||||
泗洪新闻综合,
|
泗洪新闻综合,
|
||||||
泗阳综合,
|
|
||||||
南京教科,
|
南京教科,
|
||||||
南京新闻综合,
|
南京新闻综合,
|
||||||
南京信息,
|
南京信息,
|
||||||
@ -1276,7 +1275,111 @@ MovieSphere,
|
|||||||
The Lego Channel,
|
The Lego Channel,
|
||||||
NextUp Live Comedy,
|
NextUp Live Comedy,
|
||||||
半岛英语,
|
半岛英语,
|
||||||
|
香港国际财经,
|
||||||
|
HOY 资讯台,
|
||||||
|
AnimalPlanet,
|
||||||
|
Awani,
|
||||||
|
BBC1,
|
||||||
|
BBC2,
|
||||||
|
Bloomberg,
|
||||||
|
CBS News,
|
||||||
|
CNBC,
|
||||||
|
ELEVEN 體育1台,
|
||||||
|
EYETV旅遊,
|
||||||
|
EYETV戲劇,
|
||||||
|
GOODTVCH02真理台,
|
||||||
|
M-BBCLifestyle,
|
||||||
|
M--SkyZ,
|
||||||
|
MusicTV,
|
||||||
|
RHK31,
|
||||||
|
RHK32,
|
||||||
|
RTHK32,
|
||||||
|
SkySportsCricket,
|
||||||
|
TLC旅遊生活,
|
||||||
|
TV8,
|
||||||
|
ViuTV6,
|
||||||
|
愛爾達體育1台,
|
||||||
|
愛爾達體育2,
|
||||||
|
愛爾達體育2台,
|
||||||
|
八大第一台,
|
||||||
|
八大戲劇,
|
||||||
|
八大綜合,
|
||||||
|
博斯高球1,
|
||||||
|
博斯高球2,
|
||||||
|
博斯魅力,
|
||||||
|
博斯網球,
|
||||||
|
博斯運動2,
|
||||||
|
大愛電視,
|
||||||
|
東森LIVE,
|
||||||
|
東森電影,
|
||||||
|
東森洋片,
|
||||||
|
東森綜合,
|
||||||
|
动物星球,
|
||||||
|
動物星球,
|
||||||
|
非凡新聞,
|
||||||
|
國家地理野生,
|
||||||
|
好萊塢電影,
|
||||||
|
靖天國際台,
|
||||||
|
美亞電影,
|
||||||
|
民視臺灣,
|
||||||
|
三立台灣,
|
||||||
|
時尚台FTV,
|
||||||
|
探索動力,
|
||||||
|
探索動力DMAX,
|
||||||
|
探索頻道,
|
||||||
|
探索亞洲,
|
||||||
|
緯來日本,
|
||||||
|
衛視中文,
|
||||||
|
衛視中文台,
|
||||||
|
中天娛樂,
|
||||||
|
中天綜合,
|
||||||
|
星空国际,
|
||||||
|
澳视澳门,
|
||||||
|
TVB J1,
|
||||||
|
千禧经典,
|
||||||
|
星光影视,
|
||||||
|
三立综合,
|
||||||
|
三立都会,
|
||||||
|
东森戏剧,
|
||||||
|
MOMO TV,
|
||||||
|
港台电视31,
|
||||||
|
港台电视32,
|
||||||
|
HOY78,
|
||||||
|
ASTRO AOD,
|
||||||
|
DAZN体育1,
|
||||||
|
DAZN体育2,
|
||||||
|
ELEVEN体育3,
|
||||||
|
韩国电影1,
|
||||||
|
韩国电影2,
|
||||||
|
RTHK31,
|
||||||
|
RTHK32,
|
||||||
|
澳视卫星,
|
||||||
|
八度空间,
|
||||||
|
CH5,
|
||||||
|
CH8,
|
||||||
|
CHU,
|
||||||
|
千禧经典台,
|
||||||
|
天映频道,
|
||||||
|
Astro AOD,
|
||||||
|
Astro AEC,
|
||||||
|
爱奇艺,
|
||||||
|
Astro欢喜台,
|
||||||
|
亚洲武侠,
|
||||||
|
TVB生活台,
|
||||||
|
NOW NEWS,
|
||||||
|
澳门体育,
|
||||||
|
澳门综艺,
|
||||||
|
NU2,
|
||||||
|
华视HD,
|
||||||
|
TVB亚洲武侠,
|
||||||
|
TVBSNEWS,
|
||||||
|
八大第1台,
|
||||||
|
八大综合台,
|
||||||
|
Eleven体育,
|
||||||
|
三立综合台,
|
||||||
|
星光综合台,
|
||||||
|
美国新闻,
|
||||||
|
韩国阿里郎,
|
||||||
|
|
||||||
YouTube,#genre#
|
YouTube,#genre#
|
||||||
三立INEWS,
|
三立INEWS,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -23,3 +23,4 @@ https://live.freetv.top/huyayqk.m3u
|
|||||||
https://live.freetv.top/douyuyqk.m3u
|
https://live.freetv.top/douyuyqk.m3u
|
||||||
https://www.goodiptv.club/yylunbo.m3u?url=https://lunbo.freetv.top
|
https://www.goodiptv.club/yylunbo.m3u?url=https://lunbo.freetv.top
|
||||||
https://www.goodiptv.club/bililive.m3u
|
https://www.goodiptv.club/bililive.m3u
|
||||||
|
https://php.946985.filegear-sg.me/jackTV.m3u
|
||||||
Loading…
x
Reference in New Issue
Block a user