282 lines
41 KiB
JavaScript
282 lines
41 KiB
JavaScript
|
var tvmlines = ["央视综合高清,tvming-CCTV1HD", "央视财经高清,tvming-CCTV2HD", "央视综艺高清,tvming-CCTV3HD", "央视国际高清,tvming-CCTV4HD", "央视体育高清,tvming-CCTV5HD", "央视电影高清,tvming-CCTV6HD", "央视军事农业高清,tvming-CCTV7HD", "央视电视剧高清,tvming-CCTV8HD", "央视纪录高清,tvming-CCTV9HD", "央视科教高清,tvming-CCTV10HD", "央视社会与法高清,tvming-CCTV12HD", "央视体育赛事高清,tvming-CCTV5AHD", "CHC电影高清,tvming-CHCMovieHD", "BTV北京高清,tvming-BTV1HD", "BTV文艺高清,tvming-BTV2HD", "BTV体育高清,tvming-BTV6HD", "BTV纪实高清,tvming-BTVJiShiHD", "湖南卫视高清,tvming-HuNanHD", "湖南经视高清,tvming-HuNanFinanceHD", "湖北卫视高清,tvming-HuBeiHD", "上海东方高清,tvming-SHDongFangHD", "上海新闻综合高清,tvming-SHNewsHD", "上海纪实高清,tvming-SHJiShiHD", "上海体育高清,tvming-SHSportHD", "上海电视剧高清,tvming-SHTeleplayHD", "四川卫视高清,tvming-SiChuanTVHD", "重庆卫视高清,tvming-ChongQingHD", "江苏卫视高清,tvming-JiangSuHD", "深圳卫视高清,tvming-ShenZhenHD", "山东卫视高清,tvming-ShanDongHD", "天津卫视高清,tvming-TianJinHD", "浙江卫视高清,tvming-ZheJiangHD", "黑龙江卫视高清,tvming-HeiLongJiangHD", "广东卫视高清,tvming-GuangDongHD", "辽宁卫视高清,tvming-LiaoNingHD", "安徽卫视高清,tvming-AnHuiHD", "广西卫视高清,tvming-GuangXiHD", "东南卫视高清,tvming-DongNanHD", "江西卫视高清,tvming-JiangXiHD", "河北卫视高清,tvming-HeBeiHD", "新视觉高清,tvming-XSJHD", "幸福彩高清,tvming-XingFuCaiHD", "新娱乐高清,tvming-DongFangYuLeHD", "全纪实高清,tvming-QuanJiShiHD", "第一财经高清,tvming-CBNHD", "劲爆体育高清,tvming-JinBaoSportHD", "游戏风云高清,tvming-YouXiFYHD", "动漫秀场高清,tvming-DongManXCHD", "欢笑剧场高清,tvming-HuanXiaoJCHD", "魅力音乐高清,tvming-MeiLiYYHD", "中国交通高清,tvming-DuShiJCHD", "凤凰资讯高清,tvming-PhoenixinfoTVHD", "凤凰卫视高清,tvming-PhoenixTVHD", "凤凰香港高清,tvming-PhoenixHKHD", "央视综合频道,tvming-CCTV1", "央视财经频道,tvming-CCTV2", "央视综艺频道,tvming-CCTV3", "央视国际频道,tvming-CCTV4", "央视体育频道,tvming-CCTV5", "央视电影频道,tvming-CCTV6", "央视军事农业频道,tvming-CCTV7", "央视电视剧频道,tvming-CCTV8", "央视纪录频道,tvming-CCTV9", "央视科教频道,tvming-CCTV10", "央视戏曲频道,tvming-CCTV11", "央视社会与法频道,tvming-CCTV12", "央视新闻频道,tvming-CCTVNEWS", "央视少儿频道,tvming-CCTVChild", "央视音乐频道,tvming-CCTVMusic", "央视娱乐频道,tvming-CCTVYuLe", "央视电影国际频道,tvming-CCTV6World", "CCTV高网,tvming-CCTVGW", "CCTV风云足球,tvming-CCTVFYZQ", "CCTV风云音乐,tvming-CCTVFYYY", "CCTV风云剧场,tvming-CCTVFYJC", "CCTV怀旧剧场,tvming-CCTVHJJC", "CHC家庭电影,tvming-CHCFM", "CHC动作电影,tvming-CHCAM", "教育一套,tvming-CETV1", "教育二套,tvming-CETV2", "教育三套,tvming-CETV3", "空中课堂,tvming-CETVSky", "BTV北京卫视,tvming-BTV1", "BTV文艺频道,tvming-BTV2", "BTV科教频道,tvming-BTV3", "BTV影视频道,tvming-BTV4", "BTV财经频道,tvming-BTV5", "BTV体育频道,tvming-BTV6", "BTV生活频道,tvming-BTV7", "BTV青年频道,tvming-BTV8", "BTV新闻频道,tvming-BTV9", "BTV卡酷少儿,tvming-KAKU", "BTV北京国际,tvming-BTVWorld", "四川卫视,tvming-SiChuanTV", "四川康巴卫视,tvming-KangBaTV", "上海东方卫视,tvming-SHDongFangTV", "上海生活时尚,tvming-SHFashion", "上海纪实频道,tvming-SHJiShi", "上海新闻综合,tvming-SHNews", "上海体育频道,tvming-SHSport", "上海艺术频道,tvming-SHYiShu", "上海哈哈少儿,tvming-SHChild", "上海国际频道,tvming-ICS", "上海第一财经,tvming-CBN", "上海东方国际,tvming-SHDongFangWorld", "上海新娱乐,tvming-DongFangYuLe", "上海炫动卡通,tvming-TOONMAXTV", "上海极速汽车,tvming-ChannelMax", "湖南卫视,tvming-HuNanTV", "湖南都市频道,tvmin
|
||
|
var cntvlines = ["CCTV1综合,cntv-cctv1", "CCTV2财经,cntv-cctv2", "CCTV3文艺,cntv-cctv3", "CCTV4亚洲,cntv-cctv4", "CCTV4欧洲,cntv-cctveurope", "CCTV4美洲,cntv-cctvamerica", "CCTV5体育,cntv-cctv5", "CCTV6电影,cntv-cctv6", "CCTV7军事农业,cntv-cctv7", "CCTV8电视剧,cntv-cctv8", "CCTV9纪录,cntv-cctvjilu", "CCTV9纪录(英),cntv-cctvdoc", "CCTV10科教,cntv-cctv10", "CCTV11戏曲,cntv-cctv11", "CCTV12社会与法,cntv-cctv12", "CCTV13新闻,cntv-cctv13", "CCTV14少儿,cntv-cctvchild", "CCTV15音乐,cntv-cctv15", "CCTVNEWS,cntv-cctv9", "CCTV法语,cntv-cctvfrench", "CCTV西班牙语,cntv-cctvxiyu", "CCTV阿拉伯语,cntv-cctvarabic", "CCTV俄语,cntv-cctvrussian", "CCTV体育赛事,cntv-cctv5plus", "CCTV电影,cntv-cctvdianying", "CCTV世界地理,cntv-shijiedili", "CCTV中学生,cntv-zhongxueshengpindao", "CCTV中视购物,cntv-dianshigouwu", "CCTV发现之旅,cntv-faxianzhilv", "CCTV国防军事,cntv-guofang", "CCTV央视台球,cntv-taiqiu", "CCTV央视文化精品,cntv-jingpin", "CCTV女性时尚,cntv-shishang", "CCTV娱乐,cntv-cctvyule", "CCTV怀旧剧场,cntv-hjjc", "CCTV戏曲,cntv-cctvxiqu", "CCTV新科动漫,cntv-xinkedongman", "CCTV气象,cntv-cctvqixiang", "CCTV电视指南,cntv-zhinan", "CCTV第一剧场,cntv-diyijuchang", "CCTV老故事,cntv-cctvlaogushi", "CCTV风云剧场,cntv-fyjc", "CCTV风云足球,cntv-cctvfyzq", "CCTV风云音乐,cntv-fyyy", "CCTV高尔夫网球,cntv-cctvgaowang", "安徽卫视,cntv-anhui", "北京卫视,cntv-btv1", "兵团卫视,cntv-bingtuan", "重庆卫视,cntv-chongqing", "东方卫视,cntv-dongfang", "东南卫视,cntv-dongnan", "广东卫视,cntv-guangdong", "广西卫视,cntv-guangxi", "甘肃卫视,cntv-gansu", "贵州卫视,cntv-guizhou", "河北卫视,cntv-hebei", "河南卫视,cntv-henan", "黑龙江卫视,cntv-heilongjiang", "湖北卫视,cntv-hubei", "湖南卫视,cntv-hunan", "吉林卫视,cntv-jilin", "江苏卫视,cntv-jiangsu", "江西卫视,cntv-jiangxi", "辽宁卫视,cntv-liaoning", "旅游卫视,cntv-travel", "内蒙古卫视,cntv-neimenggu", "宁夏卫视,cntv-ningxia", "青海卫视,cntv-qinghai", "山东卫视,cntv-shandong", "山东教育台,cntv-sdetv", "深圳卫视,cntv-shenzhen", "陕西卫视,cntv-shan3xi", "山西卫视,cntv-shan1xi", "四川卫视,cntv-sichuan", "天津卫视,cntv-tianjin", "西藏卫视,cntv-xizang", "厦门卫视,cntv-xiamen", "新疆卫视,cntv-xinjiang", "香港卫视,cntv-xianggangweishi", "延边卫视,cntv-yanbian", "云南卫视,cntv-yunnan", "浙江卫视,cntv-zhejiang", "DV生活,cntv-dvshenghuo", "中国3D电视试验,cntv-cctv3d", "书画,cntv-shuhua", "先锋纪录,cntv-xianfengjilu", "卫生健康,cntv-wsjk", "国学(说文解字),cntv-shuowenjiezi", "天元围棋,cntv-tianyuanweiqi", "宝贝家,cntv-baobeijia", "彩民在线,cntv-caimingzaixian", "快乐垂钓,cntv-kuailechuidiao", "摄影,cntv-sheyingpindao", "文物宝库,cntv-wenwubaoku", "早期教育,cntv-zaoqijiaoyu", "梨园,cntv-cctvliyuan", "武术世界,cntv-wushushijie", "汽摩,cntv-cctvqimo", "游戏竞技,cntv-youxijingji", "环球奇观,cntv-huanqiuqiguan", "现代女性,cntv-xiandainvxing", "留学世界,cntv-liuxueshijie", "老年福,cntv-cctvlaonianfu", "英语辅导,cntv-yingyufudao", "证券资讯,cntv-cctvzhengquanzixun", "靓妆,cntv-cctvliangzhuang", "高尔夫,cntv-gaoerfu", "BTV文艺,cntv-btv2", "BTV科教,cntv-btv3", "BTV影视,cntv-btv4", "BTV财经,cntv-btv5", "BTV体育,cntv-btv6", "BTV生活,cntv-btv7", "BTV青少,cntv-btv8", "BTV新闻,cntv-btv9", "BTV卡酷少儿,cntv-btvchild", "BTV纪实,cntv-btvjishi", "BTV国际,cntv-btvInternational", "天津1套,cntv-tianjin1", "天津2套,cntv-tianjin2", "滨海新闻综合,cntv-tianjinbh", "滨海综艺频道,cntv-tianjinbh2", "广西综艺,cntv-guangxizy", "珠海一套,cntv-zhuhaiyitao", "珠海二套,cntv-zhuhaiertao", "成都新闻综合,cntv-cdtv1", "成都经济资讯服务,cntv-cdtv2new", "成都公共,cntv-cdtv5", "辽宁都市,cntv-liaoningdushi", "宁波一套,cntv-nbtv1", "宁波二套,cntv-nbtv2", "宁波三套,cntv-nbtv3", "宁波四套,cntv-nbtv4", "宁波五套,cntv
|
||
|
var epglists = ["4K综艺", "ABCAUSTRALIA", "ALJAZEERA", "AMC", "ANIMAX", "ARIRANGTV", "AXN", "BABYTV", "BBCEARTH", "BBCLIFESTYLE", "BBCWORLDNEWS", "BLOOMBERGTV", "BLUEANTENTERTAINMENT", "BLUEANTEXTREME", "BOOMERANG", "BTV体育", "BTV影视", "BTV文艺", "BTV新闻", "BTV生活", "BTV科教", "BTV财经", "CATCHPLAY电影", "CBEEBIES", "CCTV1", "CCTV10", "CCTV11", "CCTV12", "CCTV13", "CCTV14", "CCTV15", "CCTV16", "CCTV17", "CCTV2", "CCTV3", "CCTV4", "CCTV4K", "CCTV4欧洲", "CCTV4美洲", "CCTV5", "CCTV5+", "CCTV6", "CCTV7", "CCTV8", "CCTV9", "CCTV娱乐", "CCTV戏曲", "CCTV电影", "CDTV1", "CDTV2", "CDTV3", "CDTV4", "CDTV5", "CDTV6", "CGTN", "CGTN俄语", "CGTN法语", "CGTN西语", "CGTN阿语", "CHANNELNEWSASIA", "CHC动作电影", "CHC家庭影院", "CHC高清电影", "CI", "CINEMAWORLD", "CINEMAX", "CNBCHONGKONG", "CNEX", "CNN", "CN卡通", "DISCOVERY", "DISCOVERYASIA", "DISCOVERY科学", "DISNEY", "DMAX", "DOXTV", "DOX剧场", "DOX英伦", "DOX雅趣", "DREAMWORKS", "DW", "ELEVEN体育一台", "ELEVEN体育二台", "ELTV", "ETTODAY", "EURONEWS", "EUROSPORT", "EVE", "EYE戏剧", "EYE旅游", "FASHIONONE", "FASHIONTV", "FOODNETWORK美食台", "FOX", "FOXMOVIES", "FRANCE24", "GOODTV", "GOODTV2", "GTV游戏竞技", "HBO", "HBOFAMILY", "HBOHD", "HBOHITS", "HBOSIGNATURE", "HGTV居家乐活", "HISTORY", "HITS", "HKS", "IFUN1", "IFUN3", "IPTV5+", "IPTV6+", "IPTV少儿动画", "IPTV热播剧场", "IPTV经典电影", "IPTV魅力时尚", "J2", "JET综合台", "LIFETIME", "LSTIME电影台", "LUXETV", "MEZZOLIVEHD", "MOMO亲子台", "MTV", "MTV综合", "MY101综合", "MYCINEMAEUROPE", "MYKIDS", "NEWTV中国功夫", "NEWTV军事评论", "NEWTV军旅剧场", "NEWTV农业致富", "NEWTV动作电影", "NEWTV古装剧场", "NEWTV家庭剧场", "NEWTV怡伴健康", "NEWTV惊悚悬疑", "NEWTV武搏世界", "NEWTV潮妈辣婆", "NEWTV炫舞未来", "NEWTV热播精选", "NEWTV爱情喜剧", "NEWTV精品体育", "NEWTV精品大剧", "NEWTV精品纪录", "NEWTV精品综合", "NEWTV超级体育", "NEWTV超级电影", "NEWTV超级电视剧", "NEWTV超级综艺", "NEWTV金牌综艺", "NHK", "NHKWORLD", "NHKWORLDPREMIUM", "NICKELODEON", "NICKJR.", "NOW剧集台", "NOW华剧台", "NOW影视点播站", "NOW新闻台", "NOW爆谷台", "NOW爆谷星影台", "NOW直播台", "NOW财经台", "OUTDOOR", "ROLLOR", "SBN全球财经台", "SCTV2", "SCTV3", "SCTV4", "SCTV5", "SCTV7", "SCTV8", "SCTV9", "SKYNEWS", "SMART知识", "SONYMAX", "SONYSAB", "STARMOVIESHD", "TFC", "THRILL", "TLC旅游生活", "TRACESPORTS", "TRACEURBAN", "TRAVELCHANNEL", "TV5MONDE", "TVBS", "TVBS新闻台", "TVBS欢乐台", "TVBS精采台", "TVB剧场", "TVB经典台", "TVN", "VIUTV", "VIUTVSIX", "WARNERTV", "Z", "七彩戏剧", "三沙卫视", "三立台湾台", "三立戏剧", "三立新闻台", "三立综合台", "三立财经新闻台", "三立都会台", "上海五星体育", "上海外语", "上海娱乐", "上海教育台", "上海新闻综合", "上海星尚", "上海电视剧", "上海第一财经", "上海纪实", "上海艺术人文", "上海都市", "上视东方影视", "上视新闻", "上视纪实", "世界地理", "东南卫视", "东方卫视", "东方影视", "东方电影", "东森亚洲卫视", "东森亚洲新闻台", "东森幼幼台", "东森戏剧台", "东森新闻台", "东森洋片台", "东森电影台", "东森综合台", "东森财经新闻台", "东森超视", "东风卫视", "中华特产", "中国交通", "中国天气", "中国教育1台", "中国教育2台", "中国教育3台", "中国教育4台", "中天亚洲台", "中天娱乐台", "中天新闻台", "中天综合台", "中学生", "中视", "中视新闻", "中视经典", "中视菁采台", "书画", "云上电影院", "云南公共", "云南卫视", "云南娱乐", "云南少儿", "云南影视", "云南生活", "云南都市", "五星体育", "亚洲新闻台", "亚洲旅游台", "亚洲综合", "亚洲美食", "京视剧场", "人间卫视", "仙游电视", "优优宝贝", "优漫卡通", "佛卫慈悲台", "信吉电视台", "信大", "先锋乒羽", "全大电视台", "全纪实", "
|
||
|
var epgs = epglists.join()
|
||
|
var tvmdic = {}
|
||
|
var cntvdic = {}
|
||
|
for (var i = 0; i <= tvmlines.length - 1; i++) {
|
||
|
name = tvmlines[i].split(",")[0];
|
||
|
tvg = tvmlines[i].split(",")[1];
|
||
|
tvmdic[name] = tvg;
|
||
|
}
|
||
|
for (var i = 0; i <= cntvlines.length - 1; i++) {
|
||
|
name = cntvlines[i].split(",")[0];
|
||
|
tvg = cntvlines[i].split(",")[1];
|
||
|
cntvdic[name] = tvg;
|
||
|
}
|
||
|
|
||
|
function tran2m3ugroup() {
|
||
|
var source = document.getElementById("source").value;
|
||
|
var slists = source.split('\n');
|
||
|
if (source.toUpperCase().indexOf('HTTP') != -1) {
|
||
|
var result = "#EXTM3U</br>";
|
||
|
} else {
|
||
|
var result = "";
|
||
|
}
|
||
|
for (var i = 0; i <= slists.length - 1; i++) {
|
||
|
var tvg = "";
|
||
|
var logourl = ""
|
||
|
var tvgname = "";
|
||
|
var tid = "";
|
||
|
var gname = "";
|
||
|
var iptv = slists[i].split(",");
|
||
|
if (!iptv[0] || iptv[1] == "undefined" || slists[i].indexOf('genre') != -1 || slists[i].toUpperCase().indexOf('HTTP') == -1) {
|
||
|
continue;
|
||
|
}
|
||
|
if (iptv[0].toUpperCase().indexOf('CCTV') != -1 || iptv[0].toUpperCase().indexOf('央视') != -1 || iptv[0].toUpperCase().indexOf('中央') != -1 || iptv[0].toUpperCase().indexOf('CGTN') != -1) {
|
||
|
gname = "央视";
|
||
|
} else if (iptv[0].toUpperCase().indexOf('卫视') != -1 && iptv[0].indexOf('凤凰') == -1) {
|
||
|
gname = "卫视";
|
||
|
} else if (iptv[0].toUpperCase().match(/北京|上海|NEWTV|IHOT|河北|山西|辽宁|吉林|黑龙江|江苏|浙江|安徽|福建|江西|山东|河南|湖北|湖南|广东|海南|四川|贵州|云南|陕西|甘肃|青海|台湾|香港|重庆/g)) {
|
||
|
gname = iptv[0].toUpperCase().match(/北京|上海|NEWTV|IHOT|河北|山西|辽宁|吉林|黑龙江|江苏|浙江|安徽|福建|江西|山东|河南|湖北|湖南|广东|海南|四川|贵州|云南|陕西|甘肃|青海|台湾|重庆|香港/g)[0];
|
||
|
} else if (iptv[0].toUpperCase().indexOf('凤凰') != -1) {
|
||
|
gname = "香港";
|
||
|
} else if (iptv[0].toUpperCase().match(/翡翠|明珠|民视|台视|华视|TVB|纬来|年代|原住民|中视|澳亚|东森|好消息电视台|大爱|博斯|ELEVEN|FOX|ASTRO|HBO|NIPPON|NHK|GSTV|无线/)) {
|
||
|
gname = "港澳台";
|
||
|
} else if (iptv[0].toUpperCase().indexOf('BTV') != -1) {
|
||
|
gname = "北京";
|
||
|
} else if (iptv[0].match(/世界地理|兵器科技|卫生健康|央视台球|女性时尚|怀旧剧场|文化精品|电视指南|第一剧场|风云剧场|风云足球|风云音乐|高尔夫网球|老故事|中学生/)) {
|
||
|
gname = "央视";
|
||
|
} else {
|
||
|
gname = "其他";
|
||
|
}
|
||
|
tid = iptv[0].toUpperCase().replace(/\[.*?\]|[0-9\.]+M|[0-9]{3,4}[pP]?|[0-9\.]+FPS/g, "").trim().replace(/超高清|超清|高清$|蓝光|频道$|标清|FHD|HD$|HEVC|HDR|-|\s+/g, "").trim();
|
||
|
if (tid.indexOf('CCTV') != -1 && tid.indexOf('CCTV4K') == -1) {
|
||
|
var stid = tid.match(/CCTV[0-9+]{1,2}[48]?K?/);
|
||
|
var sstid = tid.match(/CCTV[^0-9]+/);
|
||
|
if (stid && stid.length > 0) {
|
||
|
tvg = stid[0].replace(/4K/, "");
|
||
|
} else if (sstid && sstid.length > 0) {
|
||
|
tvg = sstid[0].replace(/CCTV/g, "")
|
||
|
}
|
||
|
} else {
|
||
|
tvg = tid.replace(/BTV/g, "北京");
|
||
|
}
|
||
|
;var tindex = epglists.findIndex(item => item.includes(tvg));
|
||
|
if (tindex != -1) {
|
||
|
tvgname = epglists[tindex];
|
||
|
}
|
||
|
if (!tvgname && tvg.indexOf("CCTV") == -1 && tvg.indexOf("CGTN") == -1) {
|
||
|
var indext = epglists.findIndex(item => tvg.includes(item));
|
||
|
if (indext != -1) {
|
||
|
tvgname = epglists[indext];
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (tvgname) {
|
||
|
logourl = "https://epg.112114.xyz/logo/" + tvgname + ".png"
|
||
|
} else {
|
||
|
logourl = "https://epg.112114.xyz/logo/" + tid + ".png";
|
||
|
tvgname = iptv[0];
|
||
|
}
|
||
|
var tname = '#EXTINF:-1,tvg-id="' + tvgname + '" ' + 'tvg-name="' + tvgname + '" tvg-logo="' + logourl + '" ' + 'group-title="' + gname + '",' + iptv[0] + '</br>';
|
||
|
var turl = iptv[1] + "</br>";
|
||
|
result += tname + turl
|
||
|
}
|
||
|
document.getElementById("res").innerHTML = result;
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("copytext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("copytext", "h");
|
||
|
}
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("downtext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("downtext", "h");
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
function tran2m3u() {
|
||
|
var source = document.getElementById("source").value;
|
||
|
var slists = source.split('\n');
|
||
|
if (source.toUpperCase().indexOf('HTTP') != -1) {
|
||
|
var result = "#EXTM3U</br>";
|
||
|
} else {
|
||
|
var result = "";
|
||
|
}
|
||
|
for (var i = 0; i <= slists.length - 1; i++) {
|
||
|
var iptv = slists[i].split(",");
|
||
|
if (!iptv[0] || iptv[1] === "undefined" || slists[i].toUpperCase().indexOf('HTTP') == -1) {
|
||
|
continue;
|
||
|
}
|
||
|
var tname = "#EXTINF:-1," + iptv[0] + "</br>";
|
||
|
var turl = iptv[1] + "</br>";
|
||
|
result += tname + turl
|
||
|
}
|
||
|
document.getElementById("res").innerHTML = result;
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("copytext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("copytext", "h");
|
||
|
}
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("downtext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("downtext", "h");
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
function m3u2txt() {
|
||
|
var source = document.getElementById("source").value;
|
||
|
var slists = source.replace(/[\r\n]+/g, '@');
|
||
|
var r = slists.match(/,([^,@]+)@([^@]+)/g)
|
||
|
if (r) {
|
||
|
result = r.map(m => m.replace(/,/g, '').replace(/@/g, ',').replace(/(\n[\s\t]*\r*\n)/g, '\n').replace(/^[\n\r\n\t]*|[\n\r\n\t]*$/g, '')).join('<br/>');
|
||
|
}
|
||
|
if (result) {
|
||
|
document.getElementById("res").innerHTML = result;
|
||
|
}
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("copytext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("copytext", "h");
|
||
|
}
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("downtext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("downtext", "h");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function trans() {
|
||
|
var source = document.getElementById("source").value;
|
||
|
var action = document.getElementById("action").value;
|
||
|
var slists = source.split('\n');
|
||
|
var result = "";
|
||
|
var listdic = {};
|
||
|
for (var i = 0; i <= slists.length - 1; i++) {
|
||
|
iptv = slists[i].split(",");
|
||
|
tvname = iptv[0].replace(/-/g, "").toUpperCase()
|
||
|
if (!tvname || iptv[1] == "undefined" || slists[i].indexOf('genre') != -1 || slists[i].toUpperCase().indexOf('HTTP') == -1) {
|
||
|
continue;
|
||
|
}
|
||
|
tvurl = iptv[1].replace(/PLTV/g, "TVOD");
|
||
|
if (tvurl.indexOf('TVOD') != -1) {
|
||
|
tvurl = tvurl + "?/PLTV/.smil";
|
||
|
}
|
||
|
if (listdic[tvname]) {
|
||
|
if (tvurl.indexOf('TVOD') != -1 && listdic[tvname].split("#")[0].indexOf('TVOD') == -1) {
|
||
|
listdic[tvname] = tvurl + "#" + listdic[tvname];
|
||
|
} else {
|
||
|
listdic[tvname] = listdic[tvname] + "#" + tvurl;
|
||
|
}
|
||
|
} else {
|
||
|
listdic[tvname] = tvurl;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (action == "tvming-yuanban") {
|
||
|
for (var key in listdic) {
|
||
|
var firsturl = listdic[key].split("#")[0];
|
||
|
for (var tvmkey in tvmdic) {
|
||
|
var tvgname = "tvming-NULL"
|
||
|
if (tvmkey.indexOf(key) != -1 || tvmdic[tvmkey].indexOf(key) != -1) {
|
||
|
tvgname = tvmdic[tvmkey];
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (listdic[key].indexOf('smil') != -1) {
|
||
|
cj = key + "," + listdic[key] + "," + tvgname + "</br>";
|
||
|
} else {
|
||
|
cj = key + "," + listdic[key] + "," + tvgname + "</br>";
|
||
|
}
|
||
|
result += cj;
|
||
|
}
|
||
|
} else if (action == "cntv-yuanban") {
|
||
|
for (var key in listdic) {
|
||
|
var firsturl = listdic[key].split("#")[0];
|
||
|
for (var cntvkey in cntvdic) {
|
||
|
var tvgname = "cntv-NULL"
|
||
|
if (cntvkey.indexOf(key) != -1 || cntvdic[cntvkey].indexOf(key) != -1) {
|
||
|
tvgname = cntvdic[cntvkey];
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (listdic[key].indexOf('smil') != -1) {
|
||
|
cj = key + "," + listdic[key] + "," + tvgname + "</br>";
|
||
|
} else {
|
||
|
cj = key + "," + listdic[key] + "," + tvgname + "</br>";
|
||
|
}
|
||
|
result += cj;
|
||
|
}
|
||
|
} else {
|
||
|
var {pinyin} = pinyinPro;
|
||
|
if (!pinyin || pinyin == "undefined") {
|
||
|
alert("页面组件还未加载完成,请过会重试!");
|
||
|
}
|
||
|
for (var key in listdic) {
|
||
|
var firsturl = listdic[key].split("#")[0];
|
||
|
if (key.indexOf('陕西') != -1) {
|
||
|
iptvpy = pinyin(key, {
|
||
|
toneType: 'none'
|
||
|
}).replace(/\s+/g, "").replace(/\+/g, "plus").replace(/-/g, "").toLowerCase().replace(/fhd$|hd$|sd$|chaoqing$|gaoqing$|chaogaoqing$|biaoqing$|pindao$|dianshitai$/g, "").trim().replace(/\[.*?\]|[0-9\.]+m$|[0-9]{3,4}p|[0-9\.]+fps/g, "").replace(/btv/g, "beijing").replace(/shanxi/g, "shaanxi").trim();
|
||
|
} else {
|
||
|
iptvpy = pinyin(key, {
|
||
|
toneType: 'none'
|
||
|
}).replace(/\s+/g, "").replace(/\+/g, "plus").replace(/-/g, "").toLowerCase().replace(/fhd$|hd$|sd$|chaoqing$|gaoqing$|chaogaoqing$|biaoqing$|pindao$|dianshitai$/g, "").trim().replace(/\[.*?\]|[0-9\.]+m$|[0-9]{3,4}p|[0-9\.]+fps/g, "").replace(/btv/g, "beijing").trim();
|
||
|
|
||
|
}
|
||
|
|
||
|
var sstid = iptvpy.match(/cctv[0-9]{1,2}/g);
|
||
|
if (sstid && sstid.length > 0 && !(iptvpy.match(/cctv4k|cctv8k|cctv5plus/))) {
|
||
|
iptvpy = sstid[0]
|
||
|
}
|
||
|
;var ssstid = iptvpy.match(/cctv[^0-9]+/);
|
||
|
if (ssstid && ssstid.length > 0) {
|
||
|
iptvpy = ssstid[0].replace(/cctv/g, "")
|
||
|
}
|
||
|
;
|
||
|
if (iptvpy.indexOf('cctv5plus') != -1) {
|
||
|
iptvpy = 'cctv5plus'
|
||
|
}
|
||
|
;
|
||
|
if (action == "112114-muziling") {
|
||
|
if (listdic[key].indexOf('PLTV') != -1 || listdic[key].indexOf('TVOD') != -1) {
|
||
|
cj = key + "," + listdic[key] + ",tvmao-" + iptvpy + "," + firsturl + "," + firsturl + "</br>";
|
||
|
} else {
|
||
|
cj = key + "," + listdic[key] + ",tvmao-" + iptvpy + ",," + "</br>";
|
||
|
}
|
||
|
} else if (action == "112114-yuanban") {
|
||
|
cj = key + "," + listdic[key] + ",tvmao-" + iptvpy + "</br>";
|
||
|
}
|
||
|
result += cj;
|
||
|
}
|
||
|
;
|
||
|
}
|
||
|
;
|
||
|
document.getElementById("res").innerHTML = result;
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("copytext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("copytext", "h");
|
||
|
}
|
||
|
if (result) {
|
||
|
DisplayAndHiddenBtn("downtext", "d");
|
||
|
} else {
|
||
|
DisplayAndHiddenBtn("downtext", "h");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function DisplayAndHiddenBtn(btnId, type) {
|
||
|
var currentBtn = document.getElementById(btnId);
|
||
|
if (type == "d") {
|
||
|
currentBtn.style.display = "inline-block";
|
||
|
//style中的display属性
|
||
|
} else if (type == "h") {
|
||
|
currentBtn.style.display = "none";
|
||
|
}
|
||
|
}
|