diff --git a/dc b/dc index f42b806..0eec3ef 100644 --- a/dc +++ b/dc @@ -40,6 +40,10 @@ "url": "https://github.moeyy.xyz/https://raw.githubusercontent.com/ls125781003/qqctg/main/欧歌/api.json", "name": "欧歌" }, + { + "url": "https://github.moeyy.xyz/https://raw.githubusercontent.com/ls125781003/qqctg/main/天微/api.json", + "name": "天微" + }, { "url": "https://github.moeyy.xyz/https://raw.githubusercontent.com/ls125781003/qqctg/main/王二小/api.json", "name": "王二小" diff --git a/qqc.json b/qqc.json index 67393c6..ef6f80c 100644 --- a/qqc.json +++ b/qqc.json @@ -40,6 +40,10 @@ "url": "https://bitbucket.org/ls125781003/qqctg/raw/main/欧歌/api.json", "name": "欧歌" }, + { + "url": "https://bitbucket.org/ls125781003/qqctg/raw/main/天微/api.json", + "name": "天微" + }, { "url": "https://bitbucket.org/ls125781003/qqctg/raw/main/王二小/api.json", "name": "王二小" diff --git a/天微/api.json b/天微/api.json index 28ecb1b..5da54a5 100644 --- a/天微/api.json +++ b/天微/api.json @@ -70,6 +70,17 @@ }, "timeout": 10 }, + { + "key": "央视大全", + "name": "《央视🔹大全》", + "type": 3, + "api": "./api/drpy2.min.js", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "order_num": 0, + "ext": "./js/央视大全.js" + }, { "key": "csp_JPYY", "name": "《金牌🔹秒播》", @@ -93,6 +104,16 @@ "order_num": 0, "ext": "./js/腾腾4K.js" }, + { + "key": "csp_Wwys", + "name": "《理想🔹影视》", + "type": 3, + "playerType": 2, + "changeable": 0, + "api": "csp_Wwys", + "jar": "./jars/csp_JPYY.jar", + "ext": "https://www.wwgz.cn/" + }, { "key": "果果4K解析_js", "name": "《免扫🔹果4K》", @@ -104,17 +125,6 @@ "order_num": 0, "ext": "./js/果果4K.js" }, - { - "key": "白嫖皮虾", - "name": "《免扫🔹虾4K》", - "type": 3, - "api": "./api/drpy2.min.js", - "searchable": 1, - "quickSearch": 1, - "filterable": 1, - "order_num": 0, - "ext": "./js/皮皮虾4K.js" - }, { "key": "腾讯", "name": "《腾翼🔹翔天》", @@ -164,6 +174,56 @@ }, "timeout": 10 }, + { + "key": "文才弹幕", + "name": "《文才🔹弹幕》", + "type": 3, + "api": "csp_Jpys", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "ext": { + "danmu": true + } + }, + { + "key": "浪酷弹幕", + "name": "《浪酷🔹弹幕》", + "type": 3, + "api": "csp_TianTian", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "ext": { + "danmu": true, + "site": "aHR0cDovL3YubGt1eXMuY24=" + } + }, + { + "key": "糯米弹幕", + "name": "《糯米🔹弹幕》", + "type": 3, + "api": "csp_Nmys", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "ext": { + "danmu": true + } + }, + { + "key": "热播弹幕", + "name": "《热播🔹弹幕》", + "type": 3, + "api": "csp_TianTian", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "ext": { + "danmu": true, + "site": "aHR0cDovL3YucmJvdHYuY24=" + } + }, { "key": "嫖嫖嫖", "name": "《嫖嫖🔹秒播》", @@ -418,16 +478,6 @@ "港台综艺" ] }, - { - "key": "csp_Wwys", - "name": "《理想🔹秒播》", - "type": 3, - "playerType": 2, - "changeable": 0, - "api": "csp_Wwys", - "jar": "./jars/csp_JPYY.jar", - "ext": "https://www.wwgz.cn/" - }, { "key": "csp_MiTuApp", "name": "《米兔🔹资源》", @@ -1650,7 +1700,7 @@ "url": "https://lzplayer.tv/?url=" }, { - "name": "解析1", + "name": "解析0", "type": 1, "url": "http://1.94.221.189:88/algorithm.php?url=", "ext": { @@ -1678,6 +1728,35 @@ } } }, + { + "name": "解析1", + "type": "1", + "url": "https://zy.qiaoji8.com/gouzi.php?url=", + "ext": { + "flag": [ + "qq", + "腾讯", + "qiyi", + "爱奇艺", + "奇艺", + "youku", + "优酷", + "sohu", + "搜狐", + "letv", + "乐视", + "mgtv", + "芒果", + "tnmb", + "seven", + "bilibili", + "1905" + ], + "header": { + "User-Agent": "okhttp/4.9.1" + } + } + }, { "name": "解析2", "type": 0, diff --git a/天微/js/央视大全.js b/天微/js/央视大全.js new file mode 100644 index 0000000..ea36951 --- /dev/null +++ b/天微/js/央视大全.js @@ -0,0 +1,211 @@ +var rule = { + title:'央视频', + host:'https://api.cntv.cn', + homeUrl: '/lanmu/columnSearch?&fl=&fc=&cid=&p=1&n=500&serviceId=tvcctv&t=json', + url:'/list/getVideoAlbumList?fyfilter&area=&letter=&n=24&serviceId=tvcctv&t=json', + searchUrl:'', + searchable:0, + quickSearch:0, + class_name: '栏目大全&特别节目&纪录片&电视剧&动画片', + class_url: '栏目大全&特别节目&纪录片&电视剧&动画片', + filterable: 1, + filter_url: 'channel={{fl.channel}}&sc={{fl.sc}}&year={{fl.year}}', + filter: { + "纪录片":[ + {"key":"channel","name":"频道","value":[{"n":"全部","v":""},{"n":"CCTV-1综合","v":"CCTV-1综合,CCTV-1高清,CCTV-1综合高清"},{"n":"CCTV-2财经","v":"CCTV-2财经,CCTV-2高清,CCTV-2财经高清"},{"n":"CCTV-3综艺","v":"CCTV-3综艺,CCTV-3高清,CCTV-3综艺高清"},{"n":"CCTV-4中文国际","v":"CCTV-4中文国际,CCTV-4高清,CCTV-4中文国际(亚)高清"},{"n":"CCTV-5体育","v":"CCTV-5体育,CCTV-5高清,CCTV-5体育高清"},{"n":"CCTV-6电影","v":"CCTV-6电影,CCTV-6高清,CCTV-6电影高清"},{"n":"CCTV-7国防军事","v":"CCTV-7国防军事,CCTV-7高清,CCTV-7国防军事高清"},{"n":"CCTV-8电视剧","v":"CCTV-8电视剧,CCTV-8高清,CCTV-8电视剧高清"},{"n":"CCTV-9纪录","v":"CCTV-9纪录,CCTV-9高清,CCTV-9纪录高清"},{"n":"CCTV-10科教","v":"CCTV-10科教,CCTV-10高清,CCTV-10科教高清"},{"n":"CCTV-11戏曲","v":"CCTV-11戏曲,CCTV-11高清,CCTV-11戏曲高清"},{"n":"CCTV-12社会与法","v":"CCTV-12社会与法,CCTV-12高清,CCTV-12社会与法高清"},{"n":"CCTV-13新闻","v":"CCTV-13新闻,CCTV-13高清,CCTV-13新闻高清"},{"n":"CCTV-14少儿","v":"CCTV-14少儿,CCTV-14高清,CCTV-14少儿高清"},{"n":"CCTV-15音乐","v":"CCTV-15音乐,CCTV-15高清,CCTV-15音乐高清"},{"n":"CCTV-17农业农村","v":"CCTV-17农业农村,高清,高清"}]}, + {"key":"sc","name":"类型","value":[{"n":"全部","v":""},{"n":"人文历史","v":"人文历史"},{"n":"人物","v":"人物"},{"n":"军事","v":"军事"},{"n":"探索","v":"探索"},{"n":"社会","v":"社会"},{"n":"时政","v":"时政"},{"n":"经济","v":"经济"},{"n":"科技","v":"科技"}]}, + {"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2018","v":"2018"},{"n":"2017","v":"2017"},{"n":"2016","v":"2016"},{"n":"2015","v":"2015"},{"n":"2014","v":"2014"},{"n":"2013","v":"2013"},{"n":"2012","v":"2012"},{"n":"2011","v":"2011"},{"n":"2010","v":"2010"},{"n":"2009","v":"2009"},{"n":"2008","v":"2008"}]}, + ], + "特别节目":[ + {"key":"channel","name":"频道","value":[{"n":"全部","v":""},{"n":"CCTV-1综合","v":"CCTV-1综合,CCTV-1高清,CCTV-1综合高清"},{"n":"CCTV-2财经","v":"CCTV-2财经,CCTV-2高清,CCTV-2财经高清"},{"n":"CCTV-3综艺","v":"CCTV-3综艺,CCTV-3高清,CCTV-3综艺高清"},{"n":"CCTV-4中文国际","v":"CCTV-4中文国际,CCTV-4高清,CCTV-4中文国际(亚)高清"},{"n":"CCTV-5体育","v":"CCTV-5体育,CCTV-5高清,CCTV-5体育高清"},{"n":"CCTV-6电影","v":"CCTV-6电影,CCTV-6高清,CCTV-6电影高清"},{"n":"CCTV-7国防军事","v":"CCTV-7国防军事,CCTV-7高清,CCTV-7国防军事高清"},{"n":"CCTV-8电视剧","v":"CCTV-8电视剧,CCTV-8高清,CCTV-8电视剧高清"},{"n":"CCTV-9纪录","v":"CCTV-9纪录,CCTV-9高清,CCTV-9纪录高清"},{"n":"CCTV-10科教","v":"CCTV-10科教,CCTV-10高清,CCTV-10科教高清"},{"n":"CCTV-11戏曲","v":"CCTV-11戏曲,CCTV-11高清,CCTV-11戏曲高清"},{"n":"CCTV-12社会与法","v":"CCTV-12社会与法,CCTV-12高清,CCTV-12社会与法高清"},{"n":"CCTV-13新闻","v":"CCTV-13新闻,CCTV-13高清,CCTV-13新闻高清"},{"n":"CCTV-14少儿","v":"CCTV-14少儿,CCTV-14高清,CCTV-14少儿高清"},{"n":"CCTV-15音乐","v":"CCTV-15音乐,CCTV-15高清,CCTV-15音乐高清"},{"n":"CCTV-17农业农村","v":"CCTV-17农业农村,高清,高清"}]}, + {"key":"sc","name":"类型","value":[{"n":"全部","v":""},{"n":"新闻","v":"新闻"},{"n":"经济","v":"经济"},{"n":"综艺","v":"综艺"},{"n":"体育","v":"体育"},{"n":"军事","v":"军事"},{"n":"影视","v":"影视"},{"n":"科教","v":"科教"},{"n":"戏曲","v":"戏曲"},{"n":"青少","v":"青少"},{"n":"音乐","v":"音乐"},{"n":"社会","v":"社会"},{"n":"公益","v":"公益"},{"n":"其他","v":"其他"}]}, + ], + "电视剧":[ + {"key":"sc","name":"类型","value":[{"n":"全部","v":""},{"n":"谍战","v":"谍战"},{"n":"悬疑","v":"悬疑"},{"n":"刑侦","v":"刑侦"},{"n":"历史","v":"历史"},{"n":"古装","v":"古装"},{"n":"武侠","v":"武侠"},{"n":"军旅","v":"军旅"},{"n":"战争","v":"战争"},{"n":"喜剧","v":"喜剧"},{"n":"青春","v":"青春"},{"n":"言情","v":"言情"},{"n":"偶像","v":"偶像"},{"n":"家庭","v":"家庭"},{"n":"年代","v":"年代"},{"n":"革命","v":"革命"},{"n":"农村","v":"农村"},{"n":"都市","v":"都市"},{"n":"其他","v":"其他"}]}, + {"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2018","v":"2018"},{"n":"2017","v":"2017"},{"n":"2016","v":"2016"},{"n":"2015","v":"2015"},{"n":"2014","v":"2014"},{"n":"2013","v":"2013"},{"n":"2012","v":"2012"},{"n":"2011","v":"2011"},{"n":"2010","v":"2010"},{"n":"2009","v":"2009"},{"n":"2008","v":"2008"},{"n":"2007","v":"2007"},{"n":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"},{"n":"2003","v":"2003"},{"n":"2002","v":"2002"},{"n":"2001","v":"2001"},{"n":"2000","v":"2000"},{"n":"1999","v":"1999"},{"n":"1998","v":"1998"},{"n":"1997","v":"1997"}]}, + ], + }, + headers:{ + 'User-Agent':'PC_UA' + }, + timeout:10000, + play_parse:true, + + lazy: $js.toString(() => { + let id = input.split("|")[0]; + let k4 = input.split("|")[1]; + let fc = input.split("|")[2]; +if (k4 === '7' && fc!== '体育'){ + input = 'https://hls.cntv.myhwcdn.cn/asp/hls/850/0303000a/3/default/' + id + '/850.m3u8'; + } else { + input = 'https://hls.cntv.myhwcdn.cn/asp/hls/850/0303000a/3/default/' + id + '/850.m3u8'; + + } +//https://vdn.apps.cntv.cn/api/getHttpVideoInfo.do?pid='+input +}), + //海阔 + /* + lazy: $js.toString(() => { + input=JSON.parse(request('https://vdn.apps.cntv.cn/api/getHttpVideoInfo.do?pid='+input)).hls_url; + id = input.split('/')[9]; + input = 'https://hls.cntv.myalicdn.com//asp/hls/2000/0303000a/3/default/' + id + '/2000.m3u8'; + }), + */ +//影视 +//lazy: $js.toString(() => { +//input=JSON.parse(request('https://vdn.apps.cntv.cn/api/getHttpVideoInfo.do?pid='+input)).hls_url.replaceAll('main','2000') +//.replaceAll('cntv.lxdns','cntv.myalicdn').replaceAll('n.cn','n.com').replaceAll('myhwcdn','myalicdn').replaceAll('kcdnvip','myalicdn').replaceAll('newcntv.qcloudcdn','cntv.myalicdn') +//; +//}), + + limit:6, + double:false, + + 推荐: $js.toString(() => { + var d = []; + var list = JSON.parse(request(input)).response.docs; + + list.forEach(it => { + // 一级标题 + let title1 = it.column_name; + // 一级描述 + let desc1 = it.channel_name; + // 一级图片URL + let picUrl1 = it.column_logo; + // 一级URL(id 地区 类型 标题 演员 年份 频道 简介 图片 更新至) + let url1 = it.lastVIDE.videoSharedCode + '|' + '' + '|' + it.column_firstclass + '|' + it.column_name + '|' + '' + '|' + it.column_playdate + '|' + it.channel_name + '|' + it.column_brief + '|' + it.column_logo + '|' + '' + '|' + it.lastVIDE.videoTitle; + + d.push({ + desc : desc1, + title : title1, + pic_url : picUrl1, + url : url1 + }) + }) + setResult(d); + }), + + + 一级: $js.toString(() => { + var d = []; + if(MY_CATE==='栏目大全') { + var list = JSON.parse(request(HOST+'/lanmu/columnSearch?&fl=&fc=&cid=&p='+MY_PAGE+'&n=500&serviceId=tvcctv&t=json')).response.docs; + list.forEach(it => { + // 一级标题 + let title1 = it.column_name; + // 一级描述 + let desc1 = it.channel_name; + // 一级图片URL + let picUrl1 = it.column_logo; + // 一级URL(id 地区 类型 标题 演员 年份 频道 简介 图片 更新至) + let url1 = it.lastVIDE.videoSharedCode + '|' + '' + '|' + it.column_firstclass + '|' + it.column_name + '|' + '' + '|' + it.column_playdate + '|' + it.channel_name + '|' + it.column_brief + '|' + it.column_logo + '|' + '' + '|' + it.lastVIDE.videoTitle; + d.push({ + desc : desc1, + title : title1, + pic_url : picUrl1, + url : url1 + }) + }) + } + else { + var channelMap = { + "特别节目": "CHAL1460955953877151", + "纪录片": "CHAL1460955924871139", + "电视剧": "CHAL1460955853485115", + "动画片": "CHAL1460955899450127", + }; + var list = JSON.parse(request(input+'&channelid='+channelMap[MY_CATE]+'&fc='+MY_CATE+'&p='+MY_PAGE)).data.list; + list.forEach(it => { + // 一级标题 + let title1 = it.title; + // 一级描述 + let desc1 = it.sc + ((typeof it.year==='undefined' || it.year==='')?'':('•'+it.year)) + ((typeof it.count==='undefined' || it.count==='')?'':('•共' + it.count + '集')); + // 一级图片URL + let picUrl1 = it.image; + // 一级URL(id 地区 类型 标题 演员 年份 频道 简介 图片 集数) + let url1 = it.id + '|' + it.area + '|' + it.sc + '|' + it.title + '|' + it.actors + '|' + it.year + '|' + it.channel + '|' + it.brief + '|' + it.image + '|' + it.count + '|' + '' + '|' + MY_CATE; + d.push({ + desc : desc1, + title : title1, + pic_url : picUrl1, + url : url1 + }) + }) + } + setResult(d); + }), + + 二级: $js.toString(() => { + let info = input.split("|"); + + VOD = { + vod_id: info[0], + vod_name: info[3], + vod_pic: info[8], + type_name: info[2]==='undefined'?'':info[2], + vod_year: info[5]==='undefined'?'':info[5], + vod_area: info[1]==='undefined'?'':info[1], + vod_remarks: info[9]===''?('更新至'+info[10]):('共'+info[9]+'集'), + vod_director: info[6]==='undefined'?'':info[6], + vod_actor: info[4]==='undefined'?'':info[4], + vod_content: info[7]==='undefined'?'':info[7], + }; + var modeMap = { + "特别节目": "0", + "纪录片": "0", + "电视剧": "0", + "动画片": "1", + }; + var ctid = info[0].replace('https://api.cntv.cn/lanmu/',''); + var link = 'https://api.cntv.cn/NewVideo/getVideoListByAlbumIdNew?id='+ctid+'&serviceId=tvcctv&p=1&n=100&mode='+modeMap[info[11]]+'&pub=1'; + var html = JSON.parse(request(link)); + var playUrls; + if(html.errcode==='1001'){ + var guid = info[0].replace('https://api.cntv.cn/lanmu/',''); + var link1 = 'https://api.cntv.cn/video/videoinfoByGuid?guid='+guid+'&serviceId=tvcctv'; + ctid = JSON.parse(request(link1)).ctid.replace('https://api.cntv.cn/lanmu/',''); + var link2 = 'https://api.cntv.cn/NewVideo/getVideoListByColumn?id='+ctid+'&d=&p=1&n=100&sort=desc&mode=0&serviceId=tvcctv&t=json'; + playUrls = JSON.parse(request(link2)).data.list; + + } else { + playUrls = html.data.list; + // 获取更多数据,暂不需要 + var flag = ''; + if(playUrls===''){ + flag = 'true'; + } + var page = 1; + while(flag===''){ + page = page+1; + var burl = 'https://api.cntv.cn/NewVideo/getVideoListByAlbumIdNew?id='+ctid+'&serviceId=tvcctv&p='+page+'&n=100&mode='+modeMap[info[11]]+'&pub=1'; + var list = JSON.parse(request(burl)).data.list; + if (list.length!==0){ + list.forEach(it => { + playUrls.push(it); + }) + continue; + }else{ + flag='true'; + break; + } + } + } + + let playFrom = []; + let playList = []; + playFrom.append('央视频'); + playUrls.forEach(it => { + playList.append(playUrls.map(function(it) { + return it.title + "$" + it.guid + }).join("#")) + }); + + // 最后封装所有线路 + let vod_play_from = playFrom.join('$$$'); + let vod_play_url = playList.join('$$$'); + VOD['vod_play_from'] = vod_play_from; + VOD['vod_play_url'] = vod_play_url; + }), + + 搜索:'', +} \ No newline at end of file diff --git a/天微/js/皮皮虾4K.js b/天微/js/皮皮虾4K.js deleted file mode 100644 index 7ee8d4e..0000000 --- a/天微/js/皮皮虾4K.js +++ /dev/null @@ -1,49 +0,0 @@ -var rule = { -author: '小可乐/2409/第二版', -title: '焱焱4kapp', -类型: '影视', -host: 'http://38.55.250.149:1314', -hostJs: '', -headers: {'User-Agent': 'Dart/2.14 (dart:io)'}, -编码: 'utf-8', -timeout: 5000, - -homeUrl: '/api.php/app/index_video', -url: '/api.php/app/video?tid=fyclass&fyfilter&pg=fypage&limit=20', -filter_url: '{{fl.class}}&{{fl.area}}&{{fl.lang}}&{{fl.year}}', -detailUrl: '/api.php/app/video_detail?id=fyid', -searchUrl: '/api.php/app/search?text=**&pg=fypage', -searchable: 1, -quickSearch: 1, -filterable: 1, - -class_name: '剧集&电影&动漫番剧', -class_url: '1&2&3', -filter_def: {}, - -play_parse: true, -lazy: `js: -if (/\\.(m3u8|mp4)/.test(input)) { - input = { jx: 0, parse: 0, url: input } -} else if (/PPXLG/.test(input)) { - let kurl = 'http://45.207.215.101:5423/index.php?url=' + input; - kurl = JSON.parse(request(kurl)).url; - input = { jx: 0, parse: 0, url: kurl } -} else { - input = { jx: 0, parse: 1, url: input } -} -`, - -limit: 9, -double: true, -推荐: 'json:list;vlist;*;*;*;*', -一级: 'json:list;vod_name;vod_pic;vod_remarks;vod_id', -二级: `js: -let kdata = JSON.parse(request(input)).data; -VOD = kdata; -VOD.type_name = kdata.vod_class -`, -搜索: '*', - -filter: 'H4sIAAAAAAAAA+2Y31MaSRDH3/kz9tkHF2OSS5V/SSoP1JWVh3g+JJWrSllWqQgBYgQtg+HAX4kIeoKgxsBywD+zs7v8FzfQbe/0YGq508pL9pFPf+mZ6Znt7pmliGEaz55HloxX8++MZ8bvC7E3b4wpYzH2x7z8KdIVJ56Qv/+MLbyV4PmSsTjEieogXh1i+cNYnkKaL0k90pGjOUS3CjfVRHekQHSrcFZzzkqeKRDRKJmq3S3xUQDRKJUt0e7wUQCRD1qW7wMQzSP12bbSfB6AbhVe7URsnDEFIppH5sLtcgUiZS3uTkdfyxCRovxeXwsimmntxO4d8pkCIh/J7UHhlPsARD72z+TquA9ApFg7d/NbXAGIFPGMs/YXVwCieHSyItHi8QB0qxjsbTufy0yBiEbJv/fSFh8FEK22V3d3voluky+YKOmyx95X7QwAIsVmUmQvuQIQnYF+Tu4XPwOA/NiXnL0tLfYjRIr1vvs3XzMiilt3y+2U7lgUMyy/WJ6izzj2ej6mfMWlhtiwJv2KjyuDQhLp0M8cEtqkk4LTulAFSPzINpx2j3kAQgvqbYpiVxUgoV2++qQJkFDgPzQ1ARLysFt2SufMAxBaxcGp5gGJf46+awIk/iQbY5NsMA8fG8I6YR6AkIf1rIytSJ0yJwRpseW+m6256QJbL0E/mRw6H/ryv2xEgiRL3NidPNMAYQdoIbb40j9A3kXNq65MeoCKXalHOvQzh0TZPE2AhM7H5bEmQEKbt9sVH3c1jQ+VPdY1QJRTogmQKAdRFwBRTom+WCBKuEU9zgRAWLjfzcdeK99r+9rudCcMd3Q6+gjZ0Mvc6LdinNGMM6oxqhmjqtHUjKZqnNaM04rR/I0b5W/F+FQzPlWNTzTjE9X4WDM+Vo2zmnFWNWoRMtUImVqETDVCphYhU42QqUXIVCNkahGSv+WWR15MRYzog3VcgTUsuI+BAitWb0Q8e0flRcPkPZ6o3wirxhWA/lNfFNDjBfdFwT1ecH0P7ljs9pFe3xH5fVHCKVzwHQBE8/iU1LsvREoHoEcd0Z1ZHX3ckdbv0xckE1LP6gaQiSvq/RuHwKo+QWcRULSDO4t8QxZVsXfEnBAMy+z/KLNhkQyLpF4kZx6qSA5W0m5lhZc2QGqKXj8YS9ES0bdU73uNFL/oASIf2zUnw69xiPyvIOG0eDFB5H9IV3Y7x2cKSMlvg698pohIYZ2J+j5XAKJ5FC/HrtCAyMfOgXOtPaAAIh+tlpPK2ta2fv1lBore9RdZNnn0AJG/5pq3usE9Afpp5UsWIlltWFIHomQxmde04jMkJDivyM1gAiBhyg9Tfpjyg1P+o4dK+cEJPfiN2I3XvCNeNhDRKJtVN5fkowAiRW7fPddeTQH5aSnobdbL7Xmb/AaHiEY5PBJFfuNCNPl9yilZYy/AgGgegW+dwXdN0ZAhvubzAKQqyldjColoX4579j/8nRmRf687EKmidq8bIbq1WZeixgstIhqlmHEKvEgi8mPaFP1dLaYj9BPvZMWubfH3PiATX5h+XLPCe0xY1MKidv+iNqsWtXDrf6Wtl8EK9/5X3PvI8r8qPWwTWCEAAA==' -} \ No newline at end of file diff --git a/天微/lives/天微livev1.txt b/天微/lives/天微livev1.txt index d7388c5..a9ef272 100644 --- a/天微/lives/天微livev1.txt +++ b/天微/lives/天微livev1.txt @@ -235,6 +235,270 @@ RM 刘在石李光洙跑男,http://182.40.120.191/test-txdwk.flv.huya.com/src/12 +🐉央卫IPV4,#genre# + +CCTV1,http://z.b.bkpcp.top/m.php?id=cctv1 +CCTV2,http://z.b.bkpcp.top/m.php?id=cctv2 +CCTV3,http://z.b.bkpcp.top/m.php?id=cctv3 +CCTV4,http://z.b.bkpcp.top/m.php?id=cctv4 +CCTV4欧洲,http://z.b.bkpcp.top/m.php?id=cctv4o +CCTV4美洲,http://z.b.bkpcp.top/m.php?id=cctv4m +CCTV5,http://z.b.bkpcp.top/m.php?id=cctv5 +CCTV5+,http://z.b.bkpcp.top/m.php?id=cctv5p +CCTV6,http://mobilelive-timeshift.ysp.cctv.cn/timeshift/ysp/2013693901/timeshift.m3u8?delay=m3u8 +CCTV6,http://z.b.bkpcp.top/m.php?id=cctv6 +CCTV7,http://z.b.bkpcp.top/m.php?id=cctv7 +CCTV8,http://z.b.bkpcp.top/m.php?id=cctv8 +CCTV9,http://z.b.bkpcp.top/m.php?id=cctv9 +CCTV10,http://z.b.bkpcp.top/m.php?id=cctv10 +CCTV11,http://z.b.bkpcp.top/m.php?id=cctv11 +CCTV12,http://z.b.bkpcp.top/m.php?id=cctv12 +CCTV13,http://z.b.bkpcp.top/m.php?id=cctv13 +CCTV14,http://z.b.bkpcp.top/m.php?id=cctv14 +CCTV15,http://z.b.bkpcp.top/m.php?id=cctv15 +CCTV16,https://stream1.freetv.fun/f5e0459fd9f11d93ac18af88196997db1c71aeb6d27ce1bd24faccb628652629.m3u8 +CCTV17,http://z.b.bkpcp.top/m.php?id=cctv17 + +家庭影院咪咕,http://z.b.bkpcp.top/m.php?id=jtyy +东方影视咪咕,http://z.b.bkpcp.top/m.php?id=shys +陕西卫视咪咕,http://z.b.bkpcp.top/m.php?id=sxws +湖北卫视咪咕,http://z.b.bkpcp.top/m.php?id=hubws +江西卫视咪咕,http://z.b.bkpcp.top/m.php?id=jxws +江苏卫视咪咕,http://z.b.bkpcp.top/m.php?id=jsws +广东卫视咪咕,http://z.b.bkpcp.top/m.php?id=gdws +游戏风云咪咕,http://z.b.bkpcp.top/m.php?id=yxfy +七彩戏剧咪咕,http://z.b.bkpcp.top/m.php?id=qcxj +欢笑剧场咪咕,http://z.b.bkpcp.top/m.php?id=hxjc +劲爆体育咪咕,http://z.b.bkpcp.top/m.php?id=jbty +魅力足球咪咕,http://z.b.bkpcp.top/m.php?id=mlzq + + +CCTV1,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv1 +CCTV2,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv2 +CCTV3,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv3 +CCTV4,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv4 +CCTV5,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv5 +CCTV5+,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv5p +CCTV6,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv6 +CCTV7,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv7 +CCTV8,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv8 +CCTV9,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv9 +CCTV10,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv10 +CCTV11,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv11 +CCTV12,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv12 +CCTV13,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv13 +CCTV14,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv14 +CCTV15,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv15 +CCTV16,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv16 +CCTV17,http://150.158.112.123/%E5%85%AC%E4%BC%97%E5%8F%B7~%E7%8E%89%E7%8E%89%E8%BD%AF%E4%BB%B6%E5%BA%93/mg.php?id=cctv17 + + +CCTV1,http://ttkx.cc:1258/8585/mg9.php?id=cctv1 +CCTV2,http://ttkx.cc:1258/8585/mg9.php?id=cctv2 +CCTV3,http://ttkx.cc:1258/8585/mg9.php?id=cctv3 +CCTV4,http://ttkx.cc:1258/8585/mg9.php?id=cctv4 +CCTV4欧洲,http://ttkx.cc:1258/8585/mg9.php?id=cctv4o +CCTV4美洲,http://ttkx.cc:1258/8585/mg9.php?id=cctv4a +CCTV5,http://ttkx.cc:1258/8585/mg9.php?id=cctv5 +CCTV6,http://ttkx.cc:1258/8585/mg9.php?id=cctv6 +CCTV7,http://ttkx.cc:1258/8585/mg9.php?id=cctv7 +CCTV8,http://ttkx.cc:1258/8585/mg9.php?id=cctv8 +CCTV9,http://ttkx.cc:1258/8585/mg9.php?id=cctv9 +CCTV10,http://ttkx.cc:1258/8585/mg9.php?id=cctv10 +CCTV11,http://ttkx.cc:1258/8585/mg9.php?id=cctv11 +CCTV12,http://ttkx.cc:1258/8585/mg9.php?id=cctv12 +CCTV13,http://ttkx.cc:1258/8585/mg9.php?id=cctv13 +CCTV14,http://ttkx.cc:1258/8585/mg9.php?id=cctv14 +CCTV15,http://ttkx.cc:1258/8585/mg9.php?id=cctv15 +CCTV16,http://112.103.140.109:9003/hls/16/index.m3u8 +CCTV17,http://ttkx.cc:1258/8585/mg9.php?id=cctv17 + + + + +CCTV1,http://159.75.85.63:36666/migu/608807420.m3u8?migutoken=05faefed91ee68abe6246506f4d3b6d1199f641ace715542eeb5b0aeeab31b5d496b208bcbcd0be6bc14d2642abb0225903166318d4dbf48a66731e6cab0d5677e57b44d30809abecfa55c050f +CCTV2,http://159.75.85.63:36666/migu/631780532.m3u8?migutoken=742e3f38ca5c2a08a3f01b23a9b9ebb4f189a35008bc96c9850060cbf848ea1f74da415f3fd2abaee6c425d7fa7db484570a16ba4f22ff93023875ba4f50b0db81e4b023990b1a008db17ffad1 +CCTV3,http://159.75.85.63:36666/migu/624878271.m3u8?migutoken=5133e15bea9cf24ed0bf80a4ced35de3c3b839bea84a5cdb44c39dd4a4612b668018b9c4f65169f5aba539ee671ade424be71123620714cc6db76c77b7c1bd2ac115f0dfb311f897a0672e66d8 +CCTV4,http://159.75.85.63:36666/migu/631780421.m3u8?migutoken=d39f90b726a26fa506278afdfbbb544218d69a8192b22afcb6fb2e3f5c0bc637be1428b111ad26b98eab45790edc44823b4198bf72e18511a374aef1f71963022b4e24205b40b78365ce529b01 +CCTV4欧洲,http://159.75.85.63:36666/migu/608807419.m3u8?migutoken=e9e1f08458e4a286952b16bfd4d8ff6666aed9c2058898d280b4d660b44d46cc4ab35a3ac308876f85f35c63f3bbf3fdebed2cad328ed7b54e35949f6087692fc0da3331cf7340232aca933dee +CCTV4美洲,http://159.75.85.63:36666/migu/608807416.m3u8?migutoken=a96a1eb13616fbe06a060ea0f5ebed6476eb26abb0dd0f1fccb55e5c8a19cf126ea449e87f4144a9efea613665251596778881cb955d82be4ce1b03f5f7695fdbd26de01477736744871bd8f18 + +CCTV5,http://159.75.85.63:36666/migu/641886683.m3u8?migutoken=f8f9e48f1940f388830c8fa8ffb46486ac40e57631873ecd4975141934a4eb6a7548be9e2a919f95f78d9a9c6ba357e9c688f2b814cc712bccb1c46666ef5bb47c05cc3dbd369fad30b740fe75 +CCTV5+,http://159.75.85.63:36666/migu/641886773.m3u8?migutoken=4515662c0039aa36a858729be45e56e6dcc81f03b933e0af3de65f0544590668c37bd6ee12232536e182c3491d69e0ecafa7912ebe15bf4f4fb697f6aa2b8a57ac5a81ccfe0838a14fdac9722e +CCTV6,http://159.75.85.63:36666/migu/624878396.m3u8?migutoken=db32021a904f1bc46013da6f3ac603605f469cef55fec837555f12496f4810b8545bec7730ed10f27a26224a9407859e7a655b9e3c1c45d9722af40097639969faa7cb446d740ace5becd78351 +CCTV7,http://159.75.85.63:36666/migu/673168121.m3u8?migutoken=069dcac99ceaa2378843a92b905f0152b4768a05ac3ea0ae66846ed268650abfe3b8b2a90bf25b584bc028b7c74f6daf985e82612255a883cf972cc0857403cae4c2ed8ce25ac5670336dfb837 +CCTV8,http://159.75.85.63:36666/migu/624878356.m3u8?migutoken=92fc369cbc6fe1db17607b6195833bdfdae602817154df6b019959bf06ed7ac6a04070542928a6e3be0793f02a7bcbb910ee37d267bb34e2d3223b14b6d095be66ce8a687a80b3f20674640eac +CCTV9,http://159.75.85.63:36666/migu/673168140.m3u8?migutoken=c10d7ab788713b0ad2380fb20f9c129a11f6489667cb43500c1670b1be03d1fdf65bd6bfcd06b5cc175c54a76bb749eb3aa30dc833c465d6e79eb40d8a30646b044df5a35d078d308fdc76f50c +CCTV10,http://159.75.85.63:36666/migu/624878405.m3u8?migutoken=652b1a43d1567adf534753f6d70bc753af7a86b078299f1070c91f9bc079942f837910ea49c890edc8dfcebedf8ee36d52a6a68b586e28ce63bd9a258f7abe8408c42cbec6070d9f01abad0bed +CCTV11,http://159.75.85.63:36666/migu/667987558.m3u8?migutoken=025a549a63276d9a9abad55bb3e247943569c22eb2b7345548ea3537e2963b018035058c3ae5c2ec6ae8cf28d52020998fdd4b597edfe681e02d3db2dee11c1b0d406c6b856230c24fecfc903f +CCTV12,http://159.75.85.63:36666/migu/673168185.m3u8?migutoken=e52cc87bd7a240547db820f5bcde20d8dd7335aa76ab04d6abde1107cbba28487c0627718af96b050ca722e102a98004f9d3319337474f43a86fb0ac4c1d93eca2ac7e348487d089d0f3fe1829 +CCTV13,http://159.75.85.63:36666/migu/608807423.m3u8?migutoken=70643933724525747ab81b45389b110f5474a3b31d2630827a2217ea3712f9e90975fd2d840a45ee0c88bffc7a0884166b246ea693e3b977c1350ff93427105f412762ebe753346075ec8c91fb +CCTV14,http://159.75.85.63:36666/migu/624878440.m3u8?migutoken=3230e0cd595c285dce8904d7c81777a4c45577395a5e8511239a40a0a425d33d89ec886527faff2fb96a3fbca33098f943338d3997fd4fa4728de6076bfea48a480dcac901ada4c26184acc09c +CCTV15,http://159.75.85.63:36666/migu/673168223.m3u8?migutoken=907098853a398468c02118b81fbb12ebe643be8310c96518e56c64c6c4ceb5e546973e8770763d19b1090435a69244296c3e9ba399e88f3652a707095fd78d1158f037d61aa400eaa43e5a8cb8 +CCTV17,http://159.75.85.63:36666/migu/673168256.m3u8?migutoken=ce99cb849f2d3e384343413d680b9b9a38b0efbce843d3f166b183b8d4d0046bcaee275133e9b15f03e8383c08698af94d5599796cfa53489d81bcd46606bb6496189a307b75121a4bf59480cb +CCTV9documentary,http://159.75.85.63:36666/migu/609006487.m3u8?migutoken=baafbbe11a59c07087380f102ece91af7535945a3b11760eb12ef2121e4547592406b7e500c3381cda9aa443a527b7bbb3d80921e0b1c0152c09ee39d7ad75533cb0749970f8d7964cd4134757 +CCTV阿拉伯语,http://159.75.85.63:36666/migu/609154345.m3u8?migutoken=b8ba92d4b7deb8415749126348788bda394fd09e1234ee389929f6e4e7010ec5dccb6e1261f64d59f27fa923e56a8c9f5f52337393967cc45f3ca02042f422551c931df54add35f2ed7096f14a +CCTV西班牙语,http://159.75.85.63:36666/migu/609006450.m3u8?migutoken=6c7f39bea2fa1b5d1f4a07e30a623494c324453acb9f29264096cd074a4599410039cddf3e1b490dd7422ca40ac7a9f92b4bf6f54b0a40d4179e31f0dcf7cfa0635dd6e223d10a7ab0d037fe1f +CCTV法语,http://159.75.85.63:36666/migu/609006476.m3u8?migutoken=214f510aac34e356b57d5bd24e48a1741ffe0b3d4c8f98dd43e24dd5a7b12fd2b4020b7a686bc0c24e570f0e6563c3a8cebbd05fbad8f44e48757a181119a7c73883d7b33427fa3632b0ab58d4 +CCTV俄语,http://159.75.85.63:36666/migu/609006446.m3u8?migutoken=60f942a3a292c97f4de8219dbaf2989506bb45883c4f0a0a9cccc84c4a4762d604c10765857dd9d8e5fdf120d356d27351ba83a741c2470253139fe6d451b1ec41517aea0d693031dce3a3d200 +CCTV发现之旅,http://159.75.85.63:36666/migu/624878970.m3u8?migutoken=587cd9c5ebb3edaafde707d22f6b8a669a867d367236339071264e4c01206101f9ea459e333bad92e3f2a766e3e668960acce608dc96a1c7a67d202733fe4691b24a6c822fae8e94736088c424 +中学生,http://159.75.85.63:36666/migu/708869532.m3u8?migutoken=8a9949943e2d71f2c9400de1543f6dbbf85fa30661bbc0e8b12a4fd0da4e839bd39f9694c67260d4fbca16140a3c8f2ccee4765eac62900780b2a23fcdbdc89be1f11f3ac29af2e0f70085452e +CGTN,http://159.75.85.63:36666/migu/609017205.m3u8?migutoken=f234cbcf9c8981f734139e71912064ee3616302c8b5e3d7563f215875e197b9eeda820b529fc524f7c477ba36018471fee7f30bd06824de5b0acb81ca2203b1abd1b5659bdebaaa9d07fff9707 +东方卫视,http://159.75.85.63:36666/migu/651632648.m3u8?migutoken=eddaa59301cd2cbc3938dc1f8241f4a3f9c81513e25d8330be43fa2cd63b98f65e15da48c6b436fd309b8bbfa09e3a4bfb39fcf8a6e08d1669ddf33e4cb90d4057b7c2f1672ae74dd4649731f9 +广东卫视,http://159.75.85.63:36666/migu/608831231.m3u8?migutoken=31cfffcb1eafcde3d14affa2fe7164d5ccc88beb26d2d82817580bd358592335cef512df46cc9936feade2d9e75b23fdb262fa6025fbcb2512a96a8f465f198dd82d2b5528cba130c6f5c6cf86 +江苏卫视,http://159.75.85.63:36666/migu/623899368.m3u8?migutoken=423f464d4413a63144f0042692dc4609abf57d8577a434e35d72e0b4aff46a9bc45b3e63b076007410b7ccf8d94091c296e3bcbaa69fe0b49cd1e228a8e64c30d07afcff741923b9a35f9e1487 +江西卫视,http://159.75.85.63:36666/migu/783847495.m3u8?migutoken=cd8d660ee5f0c8ba58cb98df909ee0554bf31ebe88f033c092df55bc7d3d1a29d22bc11eeb09d56e40ee189bb031a370b8a60064c13ec4e61c172e802f8f988e4e4ec64cd6c402d5d396bef0ec +河南卫视,http://159.75.85.63:36666/migu/790187291.m3u8?migutoken=bb816fff2bb9a0e620e4cf864fb29a22deec5b010abe07149ac0095ecf69da27ce889cbb8168516f5fd59390ac2b7030c9d13fca049231afcddfd8573581563b6048c31d59794a45fff74deea3 +陕西卫视,http://159.75.85.63:36666/migu/738910838.m3u8?migutoken=0f41b1a7d34337f79cf80b4dceccb32f36b801a43ddfb0dfff3d68f864e13d4cab07656ebd2879e1d51c6cc97f4ed09a7226112f4dfe9b39ce2913b8b37c3a45b992ea1dcc582e82d11f5690ba +海南卫视,http://159.75.85.63:36666/migu/738906860.m3u8?migutoken=135d11d4eed804cd3f1f32ccd1a5771c54077f2859f1e67d2eccfc165e88b87c14925cdda6cffde7a0c6301aa774ca6eaa51831e4f73e9f0fdfe8eb5b02a91aad63391167f0c2f3fe31bcae317 +大湾区卫视,http://159.75.85.63:36666/migu/608917627.m3u8?migutoken=08855c143eedd7dac5788174ab8c326f9dee81dfb57d2d1dfa12f461a9e16ba4a520a1614530445170f6a1f1bedefcde4129b3508fb0af1e85b4051c493ea7f987c59061f67dabe2169090f4df +湖北卫视,http://159.75.85.63:36666/migu/738906825.m3u8?migutoken=919bc2cd31f8b885399ec119d2e1887fa66dcdeb946eb1601c5617d5ecbf0f42ebec3b5715ef23f11157ffa9c813984bcc5632328f6da0d0d1e2326676194bc28a8ee7484587aed75873f5958c +青海卫视,http://159.75.85.63:36666/migu/738898486.m3u8?migutoken=24df171cc46dc4420ce13d3676f3182a49b66b2063bf6a5ef09a4f6f31a66b6a69f94e36ec2d34aa694dee1454384bff8a46a00c5519a8c6c3d474e32774d920852bce6a169eb2145c060cbebc +吉林卫视,http://159.75.85.63:36666/migu/738906889.m3u8?migutoken=d4a4749aaa65c8491b4f6009a065680ed879bc3df684ba9acb4309b2429c292c23ef3ea1c7fdde79ab53809bc8dc1a0300a20f91b8ef3bfd58afe5dba2ed3876fefb1034f4ac1e758261e47511 +东南卫视,http://159.75.85.63:36666/migu/849116810.m3u8?migutoken=73b62c21abf88012036e74bd8398b8dedd23ccdc9e7878ad7736b6b93d54baf1f6ad84f800da4e264c60fe913a7430027fcb85be36fcdcebb9a8d9481674f7b5b6c9088dfd96b21c7f3162c8f7 +海峡卫视,http://159.75.85.63:36666/migu/849119120.m3u8?migutoken=b17ce6ca9c4da04e0e8f3155798b0e8c37299730c400ea0d4f722f73c69246560992077c62b5d92bb3adcbd3ca7bc8b9b54e95f2d9fdd3a325d22cf2c427527b2550b8ef39842264f2ad5d5c9f +上海新闻综合,http://159.75.85.63:36666/migu/651632657.m3u8?migutoken=1136e9a03d9bd992647a10e85a771f80265656e17a730c67313874714f6ac943ffedbb7fda81e4a99589e5f3c4d8b0611341c67d06b23dd223d28dd230164f58941788580b73ba32d7f5b8c4a5 +上视东方影视,http://159.75.85.63:36666/migu/617290047.m3u8?migutoken=27580f07d184fe04d5e044a3a347f9ef654a74a4d035f46bf6015b54a0bd7b18df857fe5333f3e3e84ecf27a4c2bf211a3dc8afba5aaf76d60a755d40f87444ce3c20f03b4a357bd86d3bff31a +上视纪实人文,http://159.75.85.63:36666/migu/617289997.m3u8?migutoken=0804c9ba9082afe0b018476947427d937957ee045c679d5268ded71b96655cc9364b1ed60d3152f50a3e03deac7c8a42d464f20f8c55a75fde10b69e71461d8eed3ebaa96909665b24035e46a1 +上海外语,http://159.75.85.63:36666/migu/618954688.m3u8?migutoken=94e003dd009a9091c59e5fca183bf272b0df2d64ccf55fd7f97ee6d1f6e159dc8da9e6d41781549d645f37e398e3e50b340b920046cc370beeab042c8c0afad262dc683848b263ff9f5ef46132 +上海第一财经,http://159.75.85.63:36666/migu/608780988.m3u8?migutoken=44cf42d25398b54dd2851dc7fed70a4dedaea23f1f890ad5224b817266f3b1a798782af8ffb88f6eba87ffb9696f5f148a8b2b921e5b599068742782b1b453f87b9d2b0a7a9412705db77b5f0e +七彩戏剧,http://159.75.85.63:36666/migu/796071456.m3u8?migutoken=3df450ae86c34dca26d123a143f3424dc55ea11c206f9e6a06d745a3aba3614973dfa2762c15c9133d918547854f64a0ca0a3af2562833228c28f7716770ebe6a3fa96460d5c36c9c1d959a685 +南京新闻综合频道,http://159.75.85.63:36666/migu/838109047.m3u8?migutoken=a58d2552ab845a93ec086cb42fc3edd19291492d6b0fd52a926667d4dce3229f1b5550b58f61891acc30f658bf5ca885d80ca74f09d146f7a3118a12e054367a2e2d5187644a216a17969370fe +南京教科频道,http://159.75.85.63:36666/migu/838153729.m3u8?migutoken=bb154016494769ead2f5d267aec0cba9ac5d14abe2cb9da37bef382aeb452460bd5db8b6cd8fa3b298c0fb7cd7f261c1bdfd17dfaf7cfed79d6290a6e037303476d5a214a9c9aba28a0b82d399 +南京十八频道,http://159.75.85.63:36666/migu/838151753.m3u8?migutoken=b399b0f505049a14c378a7db6f62b7b04e4c76f8f48fdaabcf618e8f42088811c38dff001c93721c9b8120d8325889ab94f44cc60ee2abbf17d9df2ac0a75cacef9e485d9ebecbd1fa72559804 +江苏城市频道,http://159.75.85.63:36666/migu/626064714.m3u8?migutoken=ff5377d71b2bc2674f98351eb3ec44c895556d4c3b7f706f56bdf9d19e3f6410e4ca0dbd243d5cf8b45fac8ff2c4485316cf115fac529bb17ef784a71319e5a4844a36aa2a85af839d08355922 +江苏国际,http://159.75.85.63:36666/migu/626064674.m3u8?migutoken=284cb277789d41414230db94c3ceb8ca0ee2919f8b78d8f1636c43f9b02c76050d5674400daeeab2cbbe5a5762425a7be32971d0a0a864922e4c0f824d9b7d9e70e2e0ab11a100db9976a030e0 +江苏教育,http://159.75.85.63:36666/migu/628008321.m3u8?migutoken=9233b6a00259eeb5928a4d09a3250c160d82e6374fe623a44f58ccb1df85cebca80ecc7815994c02b08040c8a0fcc039c4dbf14e6634d286699ed9edf72ad09c17aafee14d43282a065a895a95 +江苏影视频道,http://159.75.85.63:36666/migu/626064697.m3u8?migutoken=1e0d2a96269b0ecf858b9c190fab8d1cfc3e9cbbf361edf3206cb0efbe2e164873e932d325b6589a0e7fa581e61c542e8bcaf8c7fe92acbe940bee14e0c141ce5809e110cc5ee4640071bfbd9d +江苏综艺频道,http://159.75.85.63:36666/migu/626065193.m3u8?migutoken=57421aa71bb0f099793ee7a9c92bd73ca79a9767213dd9e1c779aeb3252b3043c1e3319ceae5f396096b043c8b997e4ac3e75bacc1037da1dc83edc258c43d3f9e4af4caab9eff5f053839f442 +连云港新闻综合,http://159.75.85.63:36666/migu/639731715.m3u8?migutoken=8d94a55f0fc55ae3ec3c6ae274fe22555723bffddf87c969e8bd4ca3f069ea7aa88794e6ec877746d715de88e4532eae0cb991df2ee4261d8b275483225fbc53514dd0b7a2cd0d369fffd61d8b +公共新闻频道,http://159.75.85.63:36666/migu/626064693.m3u8?migutoken=4a3316e2db6e48b621f02d7901dd3240fa0a69973e0843083e4605c7cbc8329ad937393a731b420be49e10ff89711becfc860cc4a9d75b2404aea9f16cd6406d1cc82dbc5e38661d19a90c3f07 +淮安新闻综合,http://159.75.85.63:36666/migu/639731826.m3u8?migutoken=995cf0934201f61060390cbf2a01d10a9b4553640adeb47fc9bc7d5510e83268879f2ca5c3c12c95b93e3b6867602e32b2abba66847b191d62a2fdb66c305b70964bf780a8a4d0f4e8affe4c65 +泰州新闻综合,http://159.75.85.63:36666/migu/639731818.m3u8?migutoken=d7465e30207dd28859fdf9444f25adfac4717b034030cb5d106986f0fe374d8dd68f7c287013dfe7c06ecdce7fc608fd68af924b977c95b58087796b00504acf6fa5b808ab1eca1a6efd864fa3 +体育休闲频道,http://159.75.85.63:36666/migu/626064707.m3u8?migutoken=8368c8f0f0283f59f75d496bca2e92e4ecdbfd548588086c107d3715b1ee1adffbd7a19aea587a5984c13b551fc09dd90556bbb2f4330e9fafbfcbce04a294e4b2ac38c4cbc9618fdcfa02292b +宿迁新闻综合,http://159.75.85.63:36666/migu/639731832.m3u8?migutoken=3606080ceaf61991c7d27ba7c2d553e8c28c3ed87141de3b5359f1769e578963f553489cb11ce136c6c86c78b88e9f83095ac35fa2c10284fac6821a13b9935bb483cae77fc34efed07a3ced54 +徐州新闻综合,http://159.75.85.63:36666/migu/639731747.m3u8?migutoken=95866032d257d0e4fb3a3c8a9ed47d78eb70677232845f60a21f4dcc6f160eaebac751c1c979db03fe832f4bb1eeeae0896775ab7cfc7043290ee33d831ec8d818b9f3285f23e380d9eea3a2b1 +优漫卡通频道,http://159.75.85.63:36666/migu/626064703.m3u8?migutoken=0b9349034b9cc6b3533083d6c43df126ec492d95ecce7abde56239a507b4aa5c7fac1def7abbd8a9ef8cc697c7f19524bc861c82d83b1c44631e19d666d252e6eb66f3a4b08105113a0db82bee +临洮电视台,http://159.75.85.63:36666/migu/668225749.m3u8?migutoken=2ca23632b468d60983d92057471698278ddfb8ec28e4b4641567b8afb152a1683e169fe1c58a48c87f9d3a25e233b7dfd5785b37dabceb2a6a0398951c52433d5f9d63d55125cbd34f03c12f79 +高清大片,http://159.75.85.63:36666/migu/629943678.m3u8?migutoken=8702fd3c4c468e99e0d5611d3d86cc2855c3b9ae2eb07d226c3b369501d6c9e9e2f8825a47024c4b416afe8e4b7251f4a48a1c47a0cf2f030812c539ccd6bf120c87bb887f2130b09ce76630ef +经典香港电影,http://159.75.85.63:36666/migu/625703337.m3u8?migutoken=dd6a59bf6ec2f395402d38f6c3b75eb17259b28285bac5c71341bd1e6ac2ffccd1c40eeae2cc36ecff10f682df979a3de851129cc9f8b5808c87ee51224f097d31c55701cc738f1f6eaaf8da6e +军事迷必看大片,http://159.75.85.63:36666/migu/617432318.m3u8?migutoken=d66bafa660c71826f8216daee937fbdcaf95b9f2595637f5f4fba77a30c98a4be757de592f628f931a9c27b0fb2881633ece808272a38c420f1497ee4036eca1542bffd753d66a24ba6d88ca07 +新片放映厅,http://159.75.85.63:36666/migu/619495952.m3u8?migutoken=e2f5cc2aebbab93967b4135669bdfebd2c9d520ee09352db9ce547d4b8b5597c8ff9f7b69942102d5d6b2149f486c349b94759e2f1bfc53b36a5f12be2233bb65f2d4195f213d33e45f8709ede +chc动作电影,http://159.75.85.63:36666/migu/644368714.m3u8?migutoken=f552325b6795e63f539ac6d8f652b6b5e1b7002008e45731ab07932c87c3434cb7a071c821fc3bd5fa825a83d7f346338d5a90d74f7ba950b892332d4c6ca142840a52c3288b0e5978f9b61c1a +chc家庭影院,http://159.75.85.63:36666/migu/644368373.m3u8?migutoken=abf962cdba8976f4be72f610cecb842beaa0f1cce9f81600e2f5c2d8b4d8c348d12a037b79a73f5b70ada161084f5d06b4742b7ceebc1db19724315f2a6538ea7f64f96970184bb354f30a589d +南方影视,http://159.75.85.63:36666/migu/614961829.m3u8?migutoken=9f41e1b3dc5a38f47fff492c83f2295a8cb9555d771f3642e8908bf2216dec93d977653d7eb0f4bf210f72f0ade9544f86a552a17432902d3f8f1b8c9db81a3c281c9cac68a13c769f0369d66e +红色轮播台,http://159.75.85.63:36666/migu/713600957.m3u8?migutoken=6843002c489550c4af9fe0b384cbbf789c4302f7442c0dcfa1f01a0b6020fca8e607f37cb788920573d7c2a9126f87b159a7d95bd30704ed14c7f7eb4e8c231f994cd09e65a7146ea99ea770a2 +欢笑剧场,http://159.75.85.63:36666/migu/790187880.m3u8?migutoken=96358c486a0fc4870f6fa910b15c8b90362412acd6dd942807373c68a27f00f9a49edd7022d88d095d27e09ae9a6b2da1fb05d220a54e2f66e5892a9b5ff6be84f79697b2749b62449c06def17 +金色剧场,http://159.75.85.63:36666/migu/713591450.m3u8?migutoken=25e8183c273bb9be7ff6cc392007b10d3b5882b096cc8e3f53080e0013e8a6aa29e6751f0bde590845f8199b98170a1f1205201b2c2ba6dee18d63513af7d27ddfc06aa1b84ae0f94fa31a7842 +nba经典,http://159.75.85.63:36666/migu/788815380.m3u8?migutoken=3c538997e3715e7ba597bd9ffd0a83082f8ba8a6374c9dbab222d8e54aacb768bf03322568a418616a171b040f2305e20acda7de7c29fe22608ead2b97883e9d97ea84bdee8049bc550d81386f +五大联赛经典,http://159.75.85.63:36666/migu/780288994.m3u8?migutoken=ad460becaf344757bf8c4cd674ee7f8f2f0b6226fb7ed51a90d792218d3724de1ff7fee24097d4d9963ff53deb612665a946a2891d40bdb1368cc87b2157bcdb9f4cd6cecea1ed921a72f7cd9b +中国足球风云,http://159.75.85.63:36666/migu/788816794.m3u8?migutoken=6313fb89ed835aff690fd85b48b54adff8e5e26a96b2ae6ce3eeff8a15f35f70e38473d729cb68e09df20c224f113c2eba586fe84ac442159881b41baec7a419601d6b6d53d9da5fd1577c2b90 +劲爆体育,http://159.75.85.63:36666/migu/796071336.m3u8?migutoken=121632325327332685ec15c6e27d4e0a71076b29832805e79b7d322234721d273e758d81653e9c251da5934ba6df37b4c81557788345bf0eceaf61f109c171c3bc8e596d43e01d0d2295767636 +魅力足球,http://159.75.85.63:36666/migu/796070308.m3u8?migutoken=f412f1cfaff8fdfd4b72d7f1335b7ef44729df2f991ef6730b7fbb70955b014df4a7fa681a153d87af588efe1d87e8a13de7ac56c608d745a1b558254660230791506ea45179ee4743e7c3ccb4 +赛事最经典,http://159.75.85.63:36666/migu/646596895.m3u8?migutoken=1a5a00b6bf9f028e51a73c4e804836bb78f67df34ea94eef8e1ad4c40d489ebb520e6a1a5ef83984e6e81fb7d4364e8347b3758a0508c6f0ba9e399653728385c3154d82d73adeae3e6e3ba960 +掼蛋精英赛,http://159.75.85.63:36666/migu/631354620.m3u8?migutoken=d6121c073420dd15e0fefd1de21bb4405a5a3af7c0dabea5949ad322c959d09a8e82dadbedacb58fe2d1748891161f091915ddb5adb9717f374f4c93c764746e5cd807ec3b06aaad5f6c0d32d2 +体坛名栏汇,http://159.75.85.63:36666/migu/629943305.m3u8?migutoken=973bc15e0d4b9f6c3f39874def13c2c8bdfdb28a66f48f31ff5bb5a10b81820ecf554614f16ec9d47e7afb9186573b1316662644bf8f09391fa7f6e9fd71ef771a55bdd2fdf47dd18cb04436cd +四海钓鱼,http://159.75.85.63:36666/migu/895358641.m3u8?migutoken=1cf7239a7f4ea6c48463066d1308a184cbb5a548783f6104b99ef8259a286ec73fcd2fae39e533752d71f159e94601ec0231344c6f1af39be0e43d30c8f5fb4e04ecccd4e16dee1578b7ff6017 +咪咕24小时体育台,http://159.75.85.63:36666/migu/654102378.m3u8?migutoken=ed0b1203c206d58c3baaf94cceb1d045166a6d0962d9bd11e791fd4d7bc07fb30224a55a11b321e46ea503b6ff030520328c3468fde6191e0647fa92d83640f913b22cc4a89290205e4c75fadd +游戏风云,http://159.75.85.63:36666/migu/790188417.m3u8?migutoken=2cf81a652591a36d4c9de512c2facb5a4fd6ad68abe8b99e87886c71559d018dddcff819b809b3628f8fc4785740116d49eacfb07d4b5e98db4c77edbb0fe8011d3dcc521922f60af283b07f44 +CETV1,http://159.75.85.63:36666/migu/923287154.m3u8?migutoken=c32a69ebc99d0d528ff9a7cb40b12621165bd86ebdd5165a7a34992dc08e85af3a7874120ddc78f92452d3765508832d27c9083697dc75cea71f5fe2e499eaae848d38778de5dc889e2d6ad333 +CETV2,http://159.75.85.63:36666/migu/923287211.m3u8?migutoken=ef37a463c6bbf3b3ccc6f265afcde5376ce48f22a8c55c2943c521be07e5acba0a977af27361ee0851e33ddbf15022594016215a196a38d64d10f1c34771fff045a6e5125a9db4a0fc7f28a86e +CETV4,http://159.75.85.63:36666/migu/923287339.m3u8?migutoken=37bb3448cc88262eb97f7bdfecd46fe927fe3532a60937f7130a84c9390b7bac260fb0da19407e8dbe820cd68d71b81e4dac3d2571a493943209bfdcfc8fea336b05e70cf3854d2c692ff26687 +咪咕汇盛典轮播,http://159.75.85.63:36666/migu/939773601.m3u8?migutoken=bdcc9afd4bb4b22e28ea48648b56dc28837d87d82854de069c2ac005f65dc5ee06de218ba2656c718bd2c7752a6b748062b8a7bc28ed224c563a726ea81f7624e89fd540eab593489d101e9b48 +华语乐坛最强音,http://159.75.85.63:36666/migu/707671890.m3u8?migutoken=9d37466affd4c05cd3475320dbb6f77c61166ad2d8462a6debe4ea2f13f26d0dfc682316a3ffa6d693cab4cb05b2860037540a3855ef37d087afde69b1db6ca303c2541c924760105c9da03f99 +周杰伦现场,http://159.75.85.63:36666/migu/625133682.m3u8?migutoken=27f9955ee0348bbbca568e3f6374d9df5a0030a5ecb7db53cbb8f72ea1925cd3f52e2e87ac6e7465620d2e9f65d5b79543c2885770e719f9e77282aca55c157230fba865027bb116725efe53d4 +最强综艺趴,http://159.75.85.63:36666/migu/629942228.m3u8?migutoken=38a8fbd8331b26218f3913a5d01d7d2189b2a4c4dfd7301a89212bd35478cadee53e6c3372cb960c38ea2863684e5c3bc527d71064fbed92e4d93fcfe66777c5f827d7a915eb8136c03ed0a616 +嘉佳卡通,http://159.75.85.63:36666/migu/614952364.m3u8?migutoken=4be446d67d7ec6539df2254f75fb4aaea1e7668f959d77a9358ba3ee0195963f788abd0ab7dd41f37afc543b7668ee5af31c43cfdfb1ff4528ce12fe56cecd29aa1b7383a84407abf97c36477b +经典动画大集合,http://159.75.85.63:36666/migu/629942219.m3u8?migutoken=19783922417ac520bcc0864988cc6a4343688f5759d50a8074e952913aa5cf9e7975d32557979110cb21d22d9cd8973ab5b6acd7d4f7db15e92333f202e02196e32a26a9f8f61d712d88aaec3d +中国移动“新动力量”宣讲报告会,http://159.75.85.63:36666/migu/713589837.m3u8?migutoken=111065647ac1fa321f46a0e4ab9195f40bd05a985c74309af867c4d88f40fc5db02daa2af1c0a418e33947ef088c3722b48bd3d0daa093677d30dd06064b99bbb9124aceb08d6be13bf7faf58c +法治天地,http://159.75.85.63:36666/migu/790188943.m3u8?migutoken=36307188db0e4ba33ae740ec05c390b0ea5e3226cfe10aaad2e1b0446ed4813f79caa144cd779074acdd6e514bbc4d1e806b7b671fbc91034f5b04953ddd303860ff7f01b384728ac6681f98cd +乐游,http://159.75.85.63:36666/migu/796070452.m3u8?migutoken=e584212ab408a2f96c91aecf201e144942a0528a2c1dcab9304aa714adf27769814b5254d86328956db7a8b3c5e3783dc5db5850ddef4b722e1762e11eaa47b4b26f593b998331ed613b634754 +龙胜龙脊梯田,http://159.75.85.63:36666/migu/671441336.m3u8?migutoken=b08f984cd784e16d21ca3b790f39627e29144739fd31c8c60f9b2c985c32a403bcdadf4bfabb278584803d219fabcb5f8e0032f79bdc5360775637e427b86280f596cce89f72d6ef9abb487d90 +邕城,http://159.75.85.63:36666/migu/671442018.m3u8?migutoken=e66af500d74c8244bea78565f0f2b7cd64c905d946c68548464b22cb910db6411d834f735c563869ebff79715024ad1199c9f4570c21a78facf3ede29c6c7774c81050925a9ccca9bd4c494af7 +遇龙河,http://159.75.85.63:36666/migu/671653242.m3u8?migutoken=a94fe6e1996151ebdd6fb0d2c91018ca56d7528bc9f3a30673930b6ee5a1333638f71e16dcdb43d4892b571aab425b6e8088d5a1619f61441df6525b433203749b7eb429bf37db0501648e53df +钱塘江,http://159.75.85.63:36666/migu/647370520.m3u8?migutoken=51a20a1b29656f19e200b724f48772a25297fe1d43b4faa551353332361145235c1996c9600bd006e3e4fea83ae30b7ace977a344f042c574ccc5d82749bde0b6529149b89b6a5775ecd87aa61 +熊猫1,http://159.75.85.63:36666/migu/608933610.m3u8?migutoken=f759eb44ee65001e70206658f18e267a3a902c9e505a399895cfb83b7a673c5b83a859fa5f42ff16a4f6e927e737ff3f9a37e10a9b840bcbe58924e87929a35b4e65393967cea10b07a400176c +熊猫2,http://159.75.85.63:36666/migu/608933640.m3u8?migutoken=92939327b3e577ddf08edc539a519fd55c8fcdb22fbc34d3013079be7c4bf901c889497184ce3ff415699f02fe7642b96ea76530b9808856fa1f89a10749fdac9754ad5000d4b24b96468e8553 +熊猫3,http://159.75.85.63:36666/migu/608934619.m3u8?migutoken=70251f6f95424185817c8b0f91ed1fc5ed87744734c398383e3b18a1d4bcf162c8fd39d2a64521e55c55af62a9cd9613e8183879fd6a5ccb85e6a320ff5dea03dc14efc04922b372b8b1fe0e58 +熊猫4,http://159.75.85.63:36666/migu/608934721.m3u8?migutoken=b147fad8fee54f2df8464716f83e2f3e45e14fcf4628d9ccb7199d49c28b21901764be197bc2e2d277665774b0886372667ed57164daa0596ca2658de16b4abda3cee73c48170602c395489d79 +熊猫5,http://159.75.85.63:36666/migu/608935104.m3u8?migutoken=e14999ad5d18047c939adafe605dfa5f4a4daf3f0f43a0de84833baab8387c35ff1e105b986424491c88821f58d192160df05faa38259587901b3cbfb317c45a63f63eb4f1fdf464a79c76ec8e +熊猫6,http://159.75.85.63:36666/migu/608935797.m3u8?migutoken=bb2ca3e2f9f26d4830d92eebca78d8f301d8ed86069dda7983efce6af2f93c4ab73fb87136e483040a94f10c9a15df07ba19f31bfc8bac8872e6bbcb52f87e2e798708055a343e9e66c0d26e27 +熊猫7,http://159.75.85.63:36666/migu/609169286.m3u8?migutoken=2cf2111771247a56c99c1936f5e2cc211e3aa5a1b556a6e884b2d0555d48488a3f3b7b27ca66f27cbd537db8345e25589f85d76888cb17e28ed14c47d46692a531c20263f59256ed748c325f45 +熊猫8,http://159.75.85.63:36666/migu/609169287.m3u8?migutoken=c59e526c5a5b40f34e768aacc774312e0416f2c89d265aca1be4caef8d6003cd8afeb4df336a004459a76c36777ca6abd5c011659a3a2f6f92c079652dd37c17c347247465183d988840e675c3 +熊猫9,http://159.75.85.63:36666/migu/609169226.m3u8?migutoken=1dba07e3e1fc33df83e1d7fdf8ded375e8daea8e436c96357c6d9d573f236fedd1b8b33d1dd5e4fca7c3f12c175df0a16dd24478d869472ca240853d6952c4088d4d06b53b1d9ab3c0e149c309 +熊猫10,http://159.75.85.63:36666/migu/609169285.m3u8?migutoken=bae99b697aa636013f41e47dd9703282e76688c93720808453e25a6e985fe78e9e11b2034ccfdc395732d9bccddd5145545e12524e2eac71b9f392bf8cbf8f78d83727e6e4e86d9df66cc84d18 + + + +🐉央卫组播,#genre# +CCTV1,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-1hd/2500.m3u8?innersid=2025 +CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=1 +CCTV3,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-3hd/2500.m3u8?innersid=1 +CCTV4,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-4sd/1500.m3u8?innersid=2 +CCTV5,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-5hd/2500.m3u8?innersid=4 +CCTV6,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-6hd/2500.m3u8?innersid=1 +CCTV7,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-7hd/2500.m3u8?innersid=1 +CCTV8,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-8hd/2500.m3u8?innersid=1 +CCTV9,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-9hd/2500.m3u8?innersid=1 +CCTV10,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-10hd/2500.m3u8?innersid=9 +CCTV11,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-11sd/1500.m3u8?innersid=2 +CCTV12,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-12hd/2500.m3u8?innersid=2 +CCTV13,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-newssd/1500.m3u8?innersid=2 +CCTV14,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-14hd/2500.m3u8?innersid=2 +CCTV15,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-yysd/1500.m3u8?innersid=2 +CCTV17,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-17hd/2500.m3u8?innersid=2 +重庆卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cqws-hd/1.m3u8?innersid=2 +北京卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/bjws-hd/1.m3u8?innersid=1 +东方卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/shdfws-hd/2500.m3u8?innersid=6 +浙江卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/zsws-hd/2500.m3u8?innersid=6 +江苏卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jsws-hd/2500.m3u8?innersid=1 +湖南卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hnws-hd/2500.m3u8?innersid=2 +广东卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/gdws-hd/2500.m3u8?innersid=1 +深圳卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/szws-hd/2500.m3u8?innersid=2 +广西卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/gxws-sd/1500.m3u8?innersid=2 +安徽卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/ahws-sd/1500.m3u8?innersid=2 +山东卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/sdws-hd/2500.m3u8?innersid=2 +东南卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/fjws-hd/2500.m3u8?innersid=1 +辽宁卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/lnws-hd/2500.m3u8?innersid=2 +天津卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/tjws-sd/1500.m3u8?innersid=2 +海南卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hnws-sd/1500.m3u8?innersid=2 +江西卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jxws-hd/2500.m3u8?innersid=1 +湖北卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hbws-sd/1500.m3u8?innersid=2 +黑龙江视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hljws-hd/2500.m3u8?innersid=2 +云南卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/ynws-hd/2500.m3u8?innersid=2 +四川卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/scws-hd/2500.m3u8?innersid=2 +贵州卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/gzws-sd/1500.m3u8?innersid=2 +河北卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hebeiws-sd/1500.m3u8?innersid=2 +山西卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/shanxiws-sd/1500.m3u8?innersid=2 +宁夏卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/nxws-sd/1500.m3u8?innersid=2 +陕西卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/sxws-sd/1500.m3u8?innersid=2 +吉林卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jlws-hd/2500.m3u8?innersid=2 +内蒙古卫视,https://livestream-bt.nmtv.cn/nmtv/2314general.m3u8?txSecret=35f2dd39972cede5222c6bd2c0efe24b&txTime=77395680 +新疆卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/xjws-sd/1500.m3u8?innersid=2 +西藏卫视,http://cc-ynbit-wszhibo.ifengli.com:2000/live/xzws-sd/1500.m3u8?innersid=2 + + +CCTV1,http://tv.kmhlzxs.top:35455/gaoma/cctv1.m3u8 +CCTV2,http://tv.kmhlzxs.top:35455/gaoma/cctv2.m3u8 +CCTV3,http://tv.kmhlzxs.top:35455/gaoma/cctv3.m3u8 +CCTV4,http://tv.kmhlzxs.top:35455/gaoma/cctv4.m3u8 +CCTV4K,http://tv.kmhlzxs.top:35455/gaoma/cctv4k.m3u8 +CCTV5,http://tv.kmhlzxs.top:35455/gaoma/cctv5.m3u8 +CCTV5+,http://tv.kmhlzxs.top:35455/gaoma/cctv5p.m3u8 +CCTV6,http://tv.kmhlzxs.top:35455/gaoma/cctv6.m3u8 +CCTV7,http://tv.kmhlzxs.top:35455/gaoma/cctv7.m3u8 +CCTV8,http://tv.kmhlzxs.top:35455/gaoma/cctv8.m3u8 +CCTV9,http://tv.kmhlzxs.top:35455/gaoma/cctv9.m3u8 +CCTV10,http://tv.kmhlzxs.top:35455/gaoma/cctv10.m3u8 +CCTV11,http://tv.kmhlzxs.top:35455/gaoma/cctv11.m3u8 +CCTV12,http://tv.kmhlzxs.top:35455/gaoma/cctv12.m3u8 +CCTV13,http://tv.kmhlzxs.top:35455/gaoma/cctv13.m3u8 +CCTV14,http://tv.kmhlzxs.top:35455/gaoma/cctv14.m3u8 +CCTV15,http://tv.kmhlzxs.top:35455/gaoma/cctv15.m3u8 +CCTV16,http://tv.kmhlzxs.top:35455/gaoma/cctv16.m3u8 +CCTV17,http://tv.kmhlzxs.top:35455/gaoma/cctv17.m3u8 + + 🐉央视IPV6,#genre# @@ -617,201 +881,6 @@ CETV-4,http://[2409:8087:1a0b:df::4020]:80/ottrrs.hl.chinamobile.com/PLTV/888888 -🐉央卫IPV4,#genre# - -CCTV1,http://z.b.bkpcp.top/m.php?id=cctv1 -CCTV2,http://z.b.bkpcp.top/m.php?id=cctv2 -CCTV3,http://z.b.bkpcp.top/m.php?id=cctv3 -CCTV4,http://z.b.bkpcp.top/m.php?id=cctv4 -CCTV4欧洲,http://z.b.bkpcp.top/m.php?id=cctv4o -CCTV4美洲,http://z.b.bkpcp.top/m.php?id=cctv4m -CCTV5,http://z.b.bkpcp.top/m.php?id=cctv5 -CCTV5+,http://z.b.bkpcp.top/m.php?id=cctv5p -CCTV6,http://mobilelive-timeshift.ysp.cctv.cn/timeshift/ysp/2013693901/timeshift.m3u8?delay=m3u8 -CCTV6,http://z.b.bkpcp.top/m.php?id=cctv6 -CCTV7,http://z.b.bkpcp.top/m.php?id=cctv7 -CCTV8,http://z.b.bkpcp.top/m.php?id=cctv8 -CCTV9,http://z.b.bkpcp.top/m.php?id=cctv9 -CCTV10,http://z.b.bkpcp.top/m.php?id=cctv10 -CCTV11,http://z.b.bkpcp.top/m.php?id=cctv11 -CCTV12,http://z.b.bkpcp.top/m.php?id=cctv12 -CCTV13,http://z.b.bkpcp.top/m.php?id=cctv13 -CCTV14,http://z.b.bkpcp.top/m.php?id=cctv14 -CCTV15,http://z.b.bkpcp.top/m.php?id=cctv15 -CCTV16,https://stream1.freetv.fun/f5e0459fd9f11d93ac18af88196997db1c71aeb6d27ce1bd24faccb628652629.m3u8 -CCTV17,http://z.b.bkpcp.top/m.php?id=cctv17 - - - - - - - -CCTV1,http://kxrj.site:1258/69/mg9.php?id=cctv1 -CCTV2,http://kxrj.site:1258/69/mg9.php?id=cctv2 -CCTV3,http://kxrj.site:1258/69/mg9.php?id=cctv3 -CCTV4,http://kxrj.site:1258/69/mg9.php?id=cctv4 -CCTV4欧洲,http://kxrj.site:1258/69/mg9.php?id=cctv4o -CCTV4美洲,http://kxrj.site:1258/69/mg9.php?id=cctv4a -CCTV5,http://kxrj.site:1258/69/mg9.php?id=cctv5 -CCTV5+,http://kxrj.site:1258/69/mg9.php?id=cctv5p -CCTV6,http://mobilelive-timeshift.ysp.cctv.cn/timeshift/ysp/2013693901/timeshift.m3u8?delay=0&cdn=5202 -CCTV6,http://kxrj.site:1258/69/mg9.php?id=cctv6 -CCTV7,http://kxrj.site:1258/69/mg9.php?id=cctv7 -CCTV8,http://kxrj.site:1258/69/mg9.php?id=cctv8 -CCTV9,http://kxrj.site:1258/69/mg9.php?id=cctv9 -CCTV10,http://kxrj.site:1258/69/mg9.php?id=cctv10 -CCTV11,http://kxrj.site:1258/69/mg9.php?id=cctv11 -CCTV12,http://kxrj.site:1258/69/mg9.php?id=cctv12 -CCTV13,http://kxrj.site:1258/69/mg9.php?id=cctv13 -CCTV14,http://kxrj.site:1258/69/mg9.php?id=cctv14 -CCTV15,http://kxrj.site:1258/69/mg9.php?id=cctv15 -CCTV17,http://kxrj.site:1258/69/mg9.php?id=cctv17 - -CGT纪录,http://kxrj.site:1258/69/mg9.php?id=cgtnjl -CGT西语,http://kxrj.site:1258/69/mg9.php?id=cgtne -CGT阿语,http://kxrj.site:1258/69/mg9.php?id=cgtna -CGT法语,http://kxrj.site:1258/69/mg9.php?id=cgtnf -CGT俄语,http://kxrj.site:1258/69/mg9.php?id=cgtnr - -东方卫视,http://kxrj.site:1258/69/mg9.php?id=dfws -吉林卫视,http://kxrj.site:1258/69/mg9.php?id=jlws -青海卫视,http://kxrj.site:1258/69/mg9.php?id=qhws -陕西卫视,http://kxrj.site:1258/69/mg9.php?id=sxws -湖北卫视,http://kxrj.site:1258/69/mg9.php?id=hubws -江西卫视,http://kxrj.site:1258/69/mg9.php?id=jxws -江苏卫视,http://kxrj.site:1258/69/mg9.php?id=jsws -广东卫视,http://kxrj.site:1258/69/mg9.php?id=gdws -湾区卫视,http://kxrj.site:1258/69/mg9.php?id=dwqws -海南卫视,http://kxrj.site:1258/69/mg9.php?id=hinws -兵团卫视,http://mobilelive-timeshift.ysp.cctv.cn/timeshift/ysp/2022606701/timeshift.m3u8?delay=0&cdn=5202 -中国教育,http://mobilelive-timeshift.ysp.cctv.cn/timeshift/ysp/2022823801/timeshift.m3u8?delay=0&cdn=5202 -四海钓鱼,http://kxrj.site:1258/69/mg9.php?id=shdy -江苏教育,http://kxrj.site:1258/69/mg9.php?id=jsjy -山东教育,http://kxrj.site:1258/69/mg9.php?id=sdjy -游戏风云,http://kxrj.site:1258/69/mg9.php?id=yxfy -之江纪录,http://kxrj.site:1258/69/mg9.php?id=zjjl -杭州综合,http://kxrj.site:1258/69/mg9.php?id=hzzh -杭州明珠,http://kxrj.site:1258/69/mg9.php?id=hzmz -杭州生活,http://kxrj.site:1258/69/mg9.php?id=hzsh -杭州影视,http://kxrj.site:1258/69/mg9.php?id=hzys -杭州少体,http://kxrj.site:1258/69/mg9.php?id=hzse -嵊泗综合,http://kxrj.site:1258/69/mg9.php?id=ssxwzh -普陀电视,http://kxrj.site:1258/69/mg9.php?id=ptxwzh - - - -CCTV1,http://159.75.85.63:36666/migu/608807420.m3u8?migutoken=05faefed91ee68abe6246506f4d3b6d1199f641ace715542eeb5b0aeeab31b5d496b208bcbcd0be6bc14d2642abb0225903166318d4dbf48a66731e6cab0d5677e57b44d30809abecfa55c050f -CCTV2,http://159.75.85.63:36666/migu/631780532.m3u8?migutoken=742e3f38ca5c2a08a3f01b23a9b9ebb4f189a35008bc96c9850060cbf848ea1f74da415f3fd2abaee6c425d7fa7db484570a16ba4f22ff93023875ba4f50b0db81e4b023990b1a008db17ffad1 -CCTV3,http://159.75.85.63:36666/migu/624878271.m3u8?migutoken=5133e15bea9cf24ed0bf80a4ced35de3c3b839bea84a5cdb44c39dd4a4612b668018b9c4f65169f5aba539ee671ade424be71123620714cc6db76c77b7c1bd2ac115f0dfb311f897a0672e66d8 -CCTV4,http://159.75.85.63:36666/migu/631780421.m3u8?migutoken=d39f90b726a26fa506278afdfbbb544218d69a8192b22afcb6fb2e3f5c0bc637be1428b111ad26b98eab45790edc44823b4198bf72e18511a374aef1f71963022b4e24205b40b78365ce529b01 -CCTV4欧洲,http://159.75.85.63:36666/migu/608807419.m3u8?migutoken=e9e1f08458e4a286952b16bfd4d8ff6666aed9c2058898d280b4d660b44d46cc4ab35a3ac308876f85f35c63f3bbf3fdebed2cad328ed7b54e35949f6087692fc0da3331cf7340232aca933dee -CCTV4美洲,http://159.75.85.63:36666/migu/608807416.m3u8?migutoken=a96a1eb13616fbe06a060ea0f5ebed6476eb26abb0dd0f1fccb55e5c8a19cf126ea449e87f4144a9efea613665251596778881cb955d82be4ce1b03f5f7695fdbd26de01477736744871bd8f18 - -CCTV5,http://159.75.85.63:36666/migu/641886683.m3u8?migutoken=f8f9e48f1940f388830c8fa8ffb46486ac40e57631873ecd4975141934a4eb6a7548be9e2a919f95f78d9a9c6ba357e9c688f2b814cc712bccb1c46666ef5bb47c05cc3dbd369fad30b740fe75 -CCTV5+,http://159.75.85.63:36666/migu/641886773.m3u8?migutoken=4515662c0039aa36a858729be45e56e6dcc81f03b933e0af3de65f0544590668c37bd6ee12232536e182c3491d69e0ecafa7912ebe15bf4f4fb697f6aa2b8a57ac5a81ccfe0838a14fdac9722e -CCTV6,http://159.75.85.63:36666/migu/624878396.m3u8?migutoken=db32021a904f1bc46013da6f3ac603605f469cef55fec837555f12496f4810b8545bec7730ed10f27a26224a9407859e7a655b9e3c1c45d9722af40097639969faa7cb446d740ace5becd78351 -CCTV7,http://159.75.85.63:36666/migu/673168121.m3u8?migutoken=069dcac99ceaa2378843a92b905f0152b4768a05ac3ea0ae66846ed268650abfe3b8b2a90bf25b584bc028b7c74f6daf985e82612255a883cf972cc0857403cae4c2ed8ce25ac5670336dfb837 -CCTV8,http://159.75.85.63:36666/migu/624878356.m3u8?migutoken=92fc369cbc6fe1db17607b6195833bdfdae602817154df6b019959bf06ed7ac6a04070542928a6e3be0793f02a7bcbb910ee37d267bb34e2d3223b14b6d095be66ce8a687a80b3f20674640eac -CCTV9,http://159.75.85.63:36666/migu/673168140.m3u8?migutoken=c10d7ab788713b0ad2380fb20f9c129a11f6489667cb43500c1670b1be03d1fdf65bd6bfcd06b5cc175c54a76bb749eb3aa30dc833c465d6e79eb40d8a30646b044df5a35d078d308fdc76f50c -CCTV10,http://159.75.85.63:36666/migu/624878405.m3u8?migutoken=652b1a43d1567adf534753f6d70bc753af7a86b078299f1070c91f9bc079942f837910ea49c890edc8dfcebedf8ee36d52a6a68b586e28ce63bd9a258f7abe8408c42cbec6070d9f01abad0bed -CCTV11,http://159.75.85.63:36666/migu/667987558.m3u8?migutoken=025a549a63276d9a9abad55bb3e247943569c22eb2b7345548ea3537e2963b018035058c3ae5c2ec6ae8cf28d52020998fdd4b597edfe681e02d3db2dee11c1b0d406c6b856230c24fecfc903f -CCTV12,http://159.75.85.63:36666/migu/673168185.m3u8?migutoken=e52cc87bd7a240547db820f5bcde20d8dd7335aa76ab04d6abde1107cbba28487c0627718af96b050ca722e102a98004f9d3319337474f43a86fb0ac4c1d93eca2ac7e348487d089d0f3fe1829 -CCTV13,http://159.75.85.63:36666/migu/608807423.m3u8?migutoken=70643933724525747ab81b45389b110f5474a3b31d2630827a2217ea3712f9e90975fd2d840a45ee0c88bffc7a0884166b246ea693e3b977c1350ff93427105f412762ebe753346075ec8c91fb -CCTV14,http://159.75.85.63:36666/migu/624878440.m3u8?migutoken=3230e0cd595c285dce8904d7c81777a4c45577395a5e8511239a40a0a425d33d89ec886527faff2fb96a3fbca33098f943338d3997fd4fa4728de6076bfea48a480dcac901ada4c26184acc09c -CCTV15,http://159.75.85.63:36666/migu/673168223.m3u8?migutoken=907098853a398468c02118b81fbb12ebe643be8310c96518e56c64c6c4ceb5e546973e8770763d19b1090435a69244296c3e9ba399e88f3652a707095fd78d1158f037d61aa400eaa43e5a8cb8 -CCTV17,http://159.75.85.63:36666/migu/673168256.m3u8?migutoken=ce99cb849f2d3e384343413d680b9b9a38b0efbce843d3f166b183b8d4d0046bcaee275133e9b15f03e8383c08698af94d5599796cfa53489d81bcd46606bb6496189a307b75121a4bf59480cb -CCTV9documentary,http://159.75.85.63:36666/migu/609006487.m3u8?migutoken=baafbbe11a59c07087380f102ece91af7535945a3b11760eb12ef2121e4547592406b7e500c3381cda9aa443a527b7bbb3d80921e0b1c0152c09ee39d7ad75533cb0749970f8d7964cd4134757 -CCTV阿拉伯语,http://159.75.85.63:36666/migu/609154345.m3u8?migutoken=b8ba92d4b7deb8415749126348788bda394fd09e1234ee389929f6e4e7010ec5dccb6e1261f64d59f27fa923e56a8c9f5f52337393967cc45f3ca02042f422551c931df54add35f2ed7096f14a -CCTV西班牙语,http://159.75.85.63:36666/migu/609006450.m3u8?migutoken=6c7f39bea2fa1b5d1f4a07e30a623494c324453acb9f29264096cd074a4599410039cddf3e1b490dd7422ca40ac7a9f92b4bf6f54b0a40d4179e31f0dcf7cfa0635dd6e223d10a7ab0d037fe1f -CCTV法语,http://159.75.85.63:36666/migu/609006476.m3u8?migutoken=214f510aac34e356b57d5bd24e48a1741ffe0b3d4c8f98dd43e24dd5a7b12fd2b4020b7a686bc0c24e570f0e6563c3a8cebbd05fbad8f44e48757a181119a7c73883d7b33427fa3632b0ab58d4 -CCTV俄语,http://159.75.85.63:36666/migu/609006446.m3u8?migutoken=60f942a3a292c97f4de8219dbaf2989506bb45883c4f0a0a9cccc84c4a4762d604c10765857dd9d8e5fdf120d356d27351ba83a741c2470253139fe6d451b1ec41517aea0d693031dce3a3d200 -CCTV发现之旅,http://159.75.85.63:36666/migu/624878970.m3u8?migutoken=587cd9c5ebb3edaafde707d22f6b8a669a867d367236339071264e4c01206101f9ea459e333bad92e3f2a766e3e668960acce608dc96a1c7a67d202733fe4691b24a6c822fae8e94736088c424 -中学生,http://159.75.85.63:36666/migu/708869532.m3u8?migutoken=8a9949943e2d71f2c9400de1543f6dbbf85fa30661bbc0e8b12a4fd0da4e839bd39f9694c67260d4fbca16140a3c8f2ccee4765eac62900780b2a23fcdbdc89be1f11f3ac29af2e0f70085452e -CGTN,http://159.75.85.63:36666/migu/609017205.m3u8?migutoken=f234cbcf9c8981f734139e71912064ee3616302c8b5e3d7563f215875e197b9eeda820b529fc524f7c477ba36018471fee7f30bd06824de5b0acb81ca2203b1abd1b5659bdebaaa9d07fff9707 -东方卫视,http://159.75.85.63:36666/migu/651632648.m3u8?migutoken=eddaa59301cd2cbc3938dc1f8241f4a3f9c81513e25d8330be43fa2cd63b98f65e15da48c6b436fd309b8bbfa09e3a4bfb39fcf8a6e08d1669ddf33e4cb90d4057b7c2f1672ae74dd4649731f9 -广东卫视,http://159.75.85.63:36666/migu/608831231.m3u8?migutoken=31cfffcb1eafcde3d14affa2fe7164d5ccc88beb26d2d82817580bd358592335cef512df46cc9936feade2d9e75b23fdb262fa6025fbcb2512a96a8f465f198dd82d2b5528cba130c6f5c6cf86 -江苏卫视,http://159.75.85.63:36666/migu/623899368.m3u8?migutoken=423f464d4413a63144f0042692dc4609abf57d8577a434e35d72e0b4aff46a9bc45b3e63b076007410b7ccf8d94091c296e3bcbaa69fe0b49cd1e228a8e64c30d07afcff741923b9a35f9e1487 -江西卫视,http://159.75.85.63:36666/migu/783847495.m3u8?migutoken=cd8d660ee5f0c8ba58cb98df909ee0554bf31ebe88f033c092df55bc7d3d1a29d22bc11eeb09d56e40ee189bb031a370b8a60064c13ec4e61c172e802f8f988e4e4ec64cd6c402d5d396bef0ec -河南卫视,http://159.75.85.63:36666/migu/790187291.m3u8?migutoken=bb816fff2bb9a0e620e4cf864fb29a22deec5b010abe07149ac0095ecf69da27ce889cbb8168516f5fd59390ac2b7030c9d13fca049231afcddfd8573581563b6048c31d59794a45fff74deea3 -陕西卫视,http://159.75.85.63:36666/migu/738910838.m3u8?migutoken=0f41b1a7d34337f79cf80b4dceccb32f36b801a43ddfb0dfff3d68f864e13d4cab07656ebd2879e1d51c6cc97f4ed09a7226112f4dfe9b39ce2913b8b37c3a45b992ea1dcc582e82d11f5690ba -海南卫视,http://159.75.85.63:36666/migu/738906860.m3u8?migutoken=135d11d4eed804cd3f1f32ccd1a5771c54077f2859f1e67d2eccfc165e88b87c14925cdda6cffde7a0c6301aa774ca6eaa51831e4f73e9f0fdfe8eb5b02a91aad63391167f0c2f3fe31bcae317 -大湾区卫视,http://159.75.85.63:36666/migu/608917627.m3u8?migutoken=08855c143eedd7dac5788174ab8c326f9dee81dfb57d2d1dfa12f461a9e16ba4a520a1614530445170f6a1f1bedefcde4129b3508fb0af1e85b4051c493ea7f987c59061f67dabe2169090f4df -湖北卫视,http://159.75.85.63:36666/migu/738906825.m3u8?migutoken=919bc2cd31f8b885399ec119d2e1887fa66dcdeb946eb1601c5617d5ecbf0f42ebec3b5715ef23f11157ffa9c813984bcc5632328f6da0d0d1e2326676194bc28a8ee7484587aed75873f5958c -青海卫视,http://159.75.85.63:36666/migu/738898486.m3u8?migutoken=24df171cc46dc4420ce13d3676f3182a49b66b2063bf6a5ef09a4f6f31a66b6a69f94e36ec2d34aa694dee1454384bff8a46a00c5519a8c6c3d474e32774d920852bce6a169eb2145c060cbebc -吉林卫视,http://159.75.85.63:36666/migu/738906889.m3u8?migutoken=d4a4749aaa65c8491b4f6009a065680ed879bc3df684ba9acb4309b2429c292c23ef3ea1c7fdde79ab53809bc8dc1a0300a20f91b8ef3bfd58afe5dba2ed3876fefb1034f4ac1e758261e47511 -东南卫视,http://159.75.85.63:36666/migu/849116810.m3u8?migutoken=73b62c21abf88012036e74bd8398b8dedd23ccdc9e7878ad7736b6b93d54baf1f6ad84f800da4e264c60fe913a7430027fcb85be36fcdcebb9a8d9481674f7b5b6c9088dfd96b21c7f3162c8f7 -海峡卫视,http://159.75.85.63:36666/migu/849119120.m3u8?migutoken=b17ce6ca9c4da04e0e8f3155798b0e8c37299730c400ea0d4f722f73c69246560992077c62b5d92bb3adcbd3ca7bc8b9b54e95f2d9fdd3a325d22cf2c427527b2550b8ef39842264f2ad5d5c9f -上海新闻综合,http://159.75.85.63:36666/migu/651632657.m3u8?migutoken=1136e9a03d9bd992647a10e85a771f80265656e17a730c67313874714f6ac943ffedbb7fda81e4a99589e5f3c4d8b0611341c67d06b23dd223d28dd230164f58941788580b73ba32d7f5b8c4a5 -上视东方影视,http://159.75.85.63:36666/migu/617290047.m3u8?migutoken=27580f07d184fe04d5e044a3a347f9ef654a74a4d035f46bf6015b54a0bd7b18df857fe5333f3e3e84ecf27a4c2bf211a3dc8afba5aaf76d60a755d40f87444ce3c20f03b4a357bd86d3bff31a -上视纪实人文,http://159.75.85.63:36666/migu/617289997.m3u8?migutoken=0804c9ba9082afe0b018476947427d937957ee045c679d5268ded71b96655cc9364b1ed60d3152f50a3e03deac7c8a42d464f20f8c55a75fde10b69e71461d8eed3ebaa96909665b24035e46a1 -上海外语,http://159.75.85.63:36666/migu/618954688.m3u8?migutoken=94e003dd009a9091c59e5fca183bf272b0df2d64ccf55fd7f97ee6d1f6e159dc8da9e6d41781549d645f37e398e3e50b340b920046cc370beeab042c8c0afad262dc683848b263ff9f5ef46132 -上海第一财经,http://159.75.85.63:36666/migu/608780988.m3u8?migutoken=44cf42d25398b54dd2851dc7fed70a4dedaea23f1f890ad5224b817266f3b1a798782af8ffb88f6eba87ffb9696f5f148a8b2b921e5b599068742782b1b453f87b9d2b0a7a9412705db77b5f0e -七彩戏剧,http://159.75.85.63:36666/migu/796071456.m3u8?migutoken=3df450ae86c34dca26d123a143f3424dc55ea11c206f9e6a06d745a3aba3614973dfa2762c15c9133d918547854f64a0ca0a3af2562833228c28f7716770ebe6a3fa96460d5c36c9c1d959a685 -南京新闻综合频道,http://159.75.85.63:36666/migu/838109047.m3u8?migutoken=a58d2552ab845a93ec086cb42fc3edd19291492d6b0fd52a926667d4dce3229f1b5550b58f61891acc30f658bf5ca885d80ca74f09d146f7a3118a12e054367a2e2d5187644a216a17969370fe -南京教科频道,http://159.75.85.63:36666/migu/838153729.m3u8?migutoken=bb154016494769ead2f5d267aec0cba9ac5d14abe2cb9da37bef382aeb452460bd5db8b6cd8fa3b298c0fb7cd7f261c1bdfd17dfaf7cfed79d6290a6e037303476d5a214a9c9aba28a0b82d399 -南京十八频道,http://159.75.85.63:36666/migu/838151753.m3u8?migutoken=b399b0f505049a14c378a7db6f62b7b04e4c76f8f48fdaabcf618e8f42088811c38dff001c93721c9b8120d8325889ab94f44cc60ee2abbf17d9df2ac0a75cacef9e485d9ebecbd1fa72559804 -江苏城市频道,http://159.75.85.63:36666/migu/626064714.m3u8?migutoken=ff5377d71b2bc2674f98351eb3ec44c895556d4c3b7f706f56bdf9d19e3f6410e4ca0dbd243d5cf8b45fac8ff2c4485316cf115fac529bb17ef784a71319e5a4844a36aa2a85af839d08355922 -江苏国际,http://159.75.85.63:36666/migu/626064674.m3u8?migutoken=284cb277789d41414230db94c3ceb8ca0ee2919f8b78d8f1636c43f9b02c76050d5674400daeeab2cbbe5a5762425a7be32971d0a0a864922e4c0f824d9b7d9e70e2e0ab11a100db9976a030e0 -江苏教育,http://159.75.85.63:36666/migu/628008321.m3u8?migutoken=9233b6a00259eeb5928a4d09a3250c160d82e6374fe623a44f58ccb1df85cebca80ecc7815994c02b08040c8a0fcc039c4dbf14e6634d286699ed9edf72ad09c17aafee14d43282a065a895a95 -江苏影视频道,http://159.75.85.63:36666/migu/626064697.m3u8?migutoken=1e0d2a96269b0ecf858b9c190fab8d1cfc3e9cbbf361edf3206cb0efbe2e164873e932d325b6589a0e7fa581e61c542e8bcaf8c7fe92acbe940bee14e0c141ce5809e110cc5ee4640071bfbd9d -江苏综艺频道,http://159.75.85.63:36666/migu/626065193.m3u8?migutoken=57421aa71bb0f099793ee7a9c92bd73ca79a9767213dd9e1c779aeb3252b3043c1e3319ceae5f396096b043c8b997e4ac3e75bacc1037da1dc83edc258c43d3f9e4af4caab9eff5f053839f442 -连云港新闻综合,http://159.75.85.63:36666/migu/639731715.m3u8?migutoken=8d94a55f0fc55ae3ec3c6ae274fe22555723bffddf87c969e8bd4ca3f069ea7aa88794e6ec877746d715de88e4532eae0cb991df2ee4261d8b275483225fbc53514dd0b7a2cd0d369fffd61d8b -公共新闻频道,http://159.75.85.63:36666/migu/626064693.m3u8?migutoken=4a3316e2db6e48b621f02d7901dd3240fa0a69973e0843083e4605c7cbc8329ad937393a731b420be49e10ff89711becfc860cc4a9d75b2404aea9f16cd6406d1cc82dbc5e38661d19a90c3f07 -淮安新闻综合,http://159.75.85.63:36666/migu/639731826.m3u8?migutoken=995cf0934201f61060390cbf2a01d10a9b4553640adeb47fc9bc7d5510e83268879f2ca5c3c12c95b93e3b6867602e32b2abba66847b191d62a2fdb66c305b70964bf780a8a4d0f4e8affe4c65 -泰州新闻综合,http://159.75.85.63:36666/migu/639731818.m3u8?migutoken=d7465e30207dd28859fdf9444f25adfac4717b034030cb5d106986f0fe374d8dd68f7c287013dfe7c06ecdce7fc608fd68af924b977c95b58087796b00504acf6fa5b808ab1eca1a6efd864fa3 -体育休闲频道,http://159.75.85.63:36666/migu/626064707.m3u8?migutoken=8368c8f0f0283f59f75d496bca2e92e4ecdbfd548588086c107d3715b1ee1adffbd7a19aea587a5984c13b551fc09dd90556bbb2f4330e9fafbfcbce04a294e4b2ac38c4cbc9618fdcfa02292b -宿迁新闻综合,http://159.75.85.63:36666/migu/639731832.m3u8?migutoken=3606080ceaf61991c7d27ba7c2d553e8c28c3ed87141de3b5359f1769e578963f553489cb11ce136c6c86c78b88e9f83095ac35fa2c10284fac6821a13b9935bb483cae77fc34efed07a3ced54 -徐州新闻综合,http://159.75.85.63:36666/migu/639731747.m3u8?migutoken=95866032d257d0e4fb3a3c8a9ed47d78eb70677232845f60a21f4dcc6f160eaebac751c1c979db03fe832f4bb1eeeae0896775ab7cfc7043290ee33d831ec8d818b9f3285f23e380d9eea3a2b1 -优漫卡通频道,http://159.75.85.63:36666/migu/626064703.m3u8?migutoken=0b9349034b9cc6b3533083d6c43df126ec492d95ecce7abde56239a507b4aa5c7fac1def7abbd8a9ef8cc697c7f19524bc861c82d83b1c44631e19d666d252e6eb66f3a4b08105113a0db82bee -临洮电视台,http://159.75.85.63:36666/migu/668225749.m3u8?migutoken=2ca23632b468d60983d92057471698278ddfb8ec28e4b4641567b8afb152a1683e169fe1c58a48c87f9d3a25e233b7dfd5785b37dabceb2a6a0398951c52433d5f9d63d55125cbd34f03c12f79 -高清大片,http://159.75.85.63:36666/migu/629943678.m3u8?migutoken=8702fd3c4c468e99e0d5611d3d86cc2855c3b9ae2eb07d226c3b369501d6c9e9e2f8825a47024c4b416afe8e4b7251f4a48a1c47a0cf2f030812c539ccd6bf120c87bb887f2130b09ce76630ef -经典香港电影,http://159.75.85.63:36666/migu/625703337.m3u8?migutoken=dd6a59bf6ec2f395402d38f6c3b75eb17259b28285bac5c71341bd1e6ac2ffccd1c40eeae2cc36ecff10f682df979a3de851129cc9f8b5808c87ee51224f097d31c55701cc738f1f6eaaf8da6e -军事迷必看大片,http://159.75.85.63:36666/migu/617432318.m3u8?migutoken=d66bafa660c71826f8216daee937fbdcaf95b9f2595637f5f4fba77a30c98a4be757de592f628f931a9c27b0fb2881633ece808272a38c420f1497ee4036eca1542bffd753d66a24ba6d88ca07 -新片放映厅,http://159.75.85.63:36666/migu/619495952.m3u8?migutoken=e2f5cc2aebbab93967b4135669bdfebd2c9d520ee09352db9ce547d4b8b5597c8ff9f7b69942102d5d6b2149f486c349b94759e2f1bfc53b36a5f12be2233bb65f2d4195f213d33e45f8709ede -chc动作电影,http://159.75.85.63:36666/migu/644368714.m3u8?migutoken=f552325b6795e63f539ac6d8f652b6b5e1b7002008e45731ab07932c87c3434cb7a071c821fc3bd5fa825a83d7f346338d5a90d74f7ba950b892332d4c6ca142840a52c3288b0e5978f9b61c1a -chc家庭影院,http://159.75.85.63:36666/migu/644368373.m3u8?migutoken=abf962cdba8976f4be72f610cecb842beaa0f1cce9f81600e2f5c2d8b4d8c348d12a037b79a73f5b70ada161084f5d06b4742b7ceebc1db19724315f2a6538ea7f64f96970184bb354f30a589d -南方影视,http://159.75.85.63:36666/migu/614961829.m3u8?migutoken=9f41e1b3dc5a38f47fff492c83f2295a8cb9555d771f3642e8908bf2216dec93d977653d7eb0f4bf210f72f0ade9544f86a552a17432902d3f8f1b8c9db81a3c281c9cac68a13c769f0369d66e -红色轮播台,http://159.75.85.63:36666/migu/713600957.m3u8?migutoken=6843002c489550c4af9fe0b384cbbf789c4302f7442c0dcfa1f01a0b6020fca8e607f37cb788920573d7c2a9126f87b159a7d95bd30704ed14c7f7eb4e8c231f994cd09e65a7146ea99ea770a2 -欢笑剧场,http://159.75.85.63:36666/migu/790187880.m3u8?migutoken=96358c486a0fc4870f6fa910b15c8b90362412acd6dd942807373c68a27f00f9a49edd7022d88d095d27e09ae9a6b2da1fb05d220a54e2f66e5892a9b5ff6be84f79697b2749b62449c06def17 -金色剧场,http://159.75.85.63:36666/migu/713591450.m3u8?migutoken=25e8183c273bb9be7ff6cc392007b10d3b5882b096cc8e3f53080e0013e8a6aa29e6751f0bde590845f8199b98170a1f1205201b2c2ba6dee18d63513af7d27ddfc06aa1b84ae0f94fa31a7842 -nba经典,http://159.75.85.63:36666/migu/788815380.m3u8?migutoken=3c538997e3715e7ba597bd9ffd0a83082f8ba8a6374c9dbab222d8e54aacb768bf03322568a418616a171b040f2305e20acda7de7c29fe22608ead2b97883e9d97ea84bdee8049bc550d81386f -五大联赛经典,http://159.75.85.63:36666/migu/780288994.m3u8?migutoken=ad460becaf344757bf8c4cd674ee7f8f2f0b6226fb7ed51a90d792218d3724de1ff7fee24097d4d9963ff53deb612665a946a2891d40bdb1368cc87b2157bcdb9f4cd6cecea1ed921a72f7cd9b -中国足球风云,http://159.75.85.63:36666/migu/788816794.m3u8?migutoken=6313fb89ed835aff690fd85b48b54adff8e5e26a96b2ae6ce3eeff8a15f35f70e38473d729cb68e09df20c224f113c2eba586fe84ac442159881b41baec7a419601d6b6d53d9da5fd1577c2b90 -劲爆体育,http://159.75.85.63:36666/migu/796071336.m3u8?migutoken=121632325327332685ec15c6e27d4e0a71076b29832805e79b7d322234721d273e758d81653e9c251da5934ba6df37b4c81557788345bf0eceaf61f109c171c3bc8e596d43e01d0d2295767636 -魅力足球,http://159.75.85.63:36666/migu/796070308.m3u8?migutoken=f412f1cfaff8fdfd4b72d7f1335b7ef44729df2f991ef6730b7fbb70955b014df4a7fa681a153d87af588efe1d87e8a13de7ac56c608d745a1b558254660230791506ea45179ee4743e7c3ccb4 -赛事最经典,http://159.75.85.63:36666/migu/646596895.m3u8?migutoken=1a5a00b6bf9f028e51a73c4e804836bb78f67df34ea94eef8e1ad4c40d489ebb520e6a1a5ef83984e6e81fb7d4364e8347b3758a0508c6f0ba9e399653728385c3154d82d73adeae3e6e3ba960 -掼蛋精英赛,http://159.75.85.63:36666/migu/631354620.m3u8?migutoken=d6121c073420dd15e0fefd1de21bb4405a5a3af7c0dabea5949ad322c959d09a8e82dadbedacb58fe2d1748891161f091915ddb5adb9717f374f4c93c764746e5cd807ec3b06aaad5f6c0d32d2 -体坛名栏汇,http://159.75.85.63:36666/migu/629943305.m3u8?migutoken=973bc15e0d4b9f6c3f39874def13c2c8bdfdb28a66f48f31ff5bb5a10b81820ecf554614f16ec9d47e7afb9186573b1316662644bf8f09391fa7f6e9fd71ef771a55bdd2fdf47dd18cb04436cd -四海钓鱼,http://159.75.85.63:36666/migu/895358641.m3u8?migutoken=1cf7239a7f4ea6c48463066d1308a184cbb5a548783f6104b99ef8259a286ec73fcd2fae39e533752d71f159e94601ec0231344c6f1af39be0e43d30c8f5fb4e04ecccd4e16dee1578b7ff6017 -咪咕24小时体育台,http://159.75.85.63:36666/migu/654102378.m3u8?migutoken=ed0b1203c206d58c3baaf94cceb1d045166a6d0962d9bd11e791fd4d7bc07fb30224a55a11b321e46ea503b6ff030520328c3468fde6191e0647fa92d83640f913b22cc4a89290205e4c75fadd -游戏风云,http://159.75.85.63:36666/migu/790188417.m3u8?migutoken=2cf81a652591a36d4c9de512c2facb5a4fd6ad68abe8b99e87886c71559d018dddcff819b809b3628f8fc4785740116d49eacfb07d4b5e98db4c77edbb0fe8011d3dcc521922f60af283b07f44 -CETV1,http://159.75.85.63:36666/migu/923287154.m3u8?migutoken=c32a69ebc99d0d528ff9a7cb40b12621165bd86ebdd5165a7a34992dc08e85af3a7874120ddc78f92452d3765508832d27c9083697dc75cea71f5fe2e499eaae848d38778de5dc889e2d6ad333 -CETV2,http://159.75.85.63:36666/migu/923287211.m3u8?migutoken=ef37a463c6bbf3b3ccc6f265afcde5376ce48f22a8c55c2943c521be07e5acba0a977af27361ee0851e33ddbf15022594016215a196a38d64d10f1c34771fff045a6e5125a9db4a0fc7f28a86e -CETV4,http://159.75.85.63:36666/migu/923287339.m3u8?migutoken=37bb3448cc88262eb97f7bdfecd46fe927fe3532a60937f7130a84c9390b7bac260fb0da19407e8dbe820cd68d71b81e4dac3d2571a493943209bfdcfc8fea336b05e70cf3854d2c692ff26687 -咪咕汇盛典轮播,http://159.75.85.63:36666/migu/939773601.m3u8?migutoken=bdcc9afd4bb4b22e28ea48648b56dc28837d87d82854de069c2ac005f65dc5ee06de218ba2656c718bd2c7752a6b748062b8a7bc28ed224c563a726ea81f7624e89fd540eab593489d101e9b48 -华语乐坛最强音,http://159.75.85.63:36666/migu/707671890.m3u8?migutoken=9d37466affd4c05cd3475320dbb6f77c61166ad2d8462a6debe4ea2f13f26d0dfc682316a3ffa6d693cab4cb05b2860037540a3855ef37d087afde69b1db6ca303c2541c924760105c9da03f99 -周杰伦现场,http://159.75.85.63:36666/migu/625133682.m3u8?migutoken=27f9955ee0348bbbca568e3f6374d9df5a0030a5ecb7db53cbb8f72ea1925cd3f52e2e87ac6e7465620d2e9f65d5b79543c2885770e719f9e77282aca55c157230fba865027bb116725efe53d4 -最强综艺趴,http://159.75.85.63:36666/migu/629942228.m3u8?migutoken=38a8fbd8331b26218f3913a5d01d7d2189b2a4c4dfd7301a89212bd35478cadee53e6c3372cb960c38ea2863684e5c3bc527d71064fbed92e4d93fcfe66777c5f827d7a915eb8136c03ed0a616 -嘉佳卡通,http://159.75.85.63:36666/migu/614952364.m3u8?migutoken=4be446d67d7ec6539df2254f75fb4aaea1e7668f959d77a9358ba3ee0195963f788abd0ab7dd41f37afc543b7668ee5af31c43cfdfb1ff4528ce12fe56cecd29aa1b7383a84407abf97c36477b -经典动画大集合,http://159.75.85.63:36666/migu/629942219.m3u8?migutoken=19783922417ac520bcc0864988cc6a4343688f5759d50a8074e952913aa5cf9e7975d32557979110cb21d22d9cd8973ab5b6acd7d4f7db15e92333f202e02196e32a26a9f8f61d712d88aaec3d -中国移动“新动力量”宣讲报告会,http://159.75.85.63:36666/migu/713589837.m3u8?migutoken=111065647ac1fa321f46a0e4ab9195f40bd05a985c74309af867c4d88f40fc5db02daa2af1c0a418e33947ef088c3722b48bd3d0daa093677d30dd06064b99bbb9124aceb08d6be13bf7faf58c -法治天地,http://159.75.85.63:36666/migu/790188943.m3u8?migutoken=36307188db0e4ba33ae740ec05c390b0ea5e3226cfe10aaad2e1b0446ed4813f79caa144cd779074acdd6e514bbc4d1e806b7b671fbc91034f5b04953ddd303860ff7f01b384728ac6681f98cd -乐游,http://159.75.85.63:36666/migu/796070452.m3u8?migutoken=e584212ab408a2f96c91aecf201e144942a0528a2c1dcab9304aa714adf27769814b5254d86328956db7a8b3c5e3783dc5db5850ddef4b722e1762e11eaa47b4b26f593b998331ed613b634754 -龙胜龙脊梯田,http://159.75.85.63:36666/migu/671441336.m3u8?migutoken=b08f984cd784e16d21ca3b790f39627e29144739fd31c8c60f9b2c985c32a403bcdadf4bfabb278584803d219fabcb5f8e0032f79bdc5360775637e427b86280f596cce89f72d6ef9abb487d90 -邕城,http://159.75.85.63:36666/migu/671442018.m3u8?migutoken=e66af500d74c8244bea78565f0f2b7cd64c905d946c68548464b22cb910db6411d834f735c563869ebff79715024ad1199c9f4570c21a78facf3ede29c6c7774c81050925a9ccca9bd4c494af7 -遇龙河,http://159.75.85.63:36666/migu/671653242.m3u8?migutoken=a94fe6e1996151ebdd6fb0d2c91018ca56d7528bc9f3a30673930b6ee5a1333638f71e16dcdb43d4892b571aab425b6e8088d5a1619f61441df6525b433203749b7eb429bf37db0501648e53df -钱塘江,http://159.75.85.63:36666/migu/647370520.m3u8?migutoken=51a20a1b29656f19e200b724f48772a25297fe1d43b4faa551353332361145235c1996c9600bd006e3e4fea83ae30b7ace977a344f042c574ccc5d82749bde0b6529149b89b6a5775ecd87aa61 -熊猫1,http://159.75.85.63:36666/migu/608933610.m3u8?migutoken=f759eb44ee65001e70206658f18e267a3a902c9e505a399895cfb83b7a673c5b83a859fa5f42ff16a4f6e927e737ff3f9a37e10a9b840bcbe58924e87929a35b4e65393967cea10b07a400176c -熊猫2,http://159.75.85.63:36666/migu/608933640.m3u8?migutoken=92939327b3e577ddf08edc539a519fd55c8fcdb22fbc34d3013079be7c4bf901c889497184ce3ff415699f02fe7642b96ea76530b9808856fa1f89a10749fdac9754ad5000d4b24b96468e8553 -熊猫3,http://159.75.85.63:36666/migu/608934619.m3u8?migutoken=70251f6f95424185817c8b0f91ed1fc5ed87744734c398383e3b18a1d4bcf162c8fd39d2a64521e55c55af62a9cd9613e8183879fd6a5ccb85e6a320ff5dea03dc14efc04922b372b8b1fe0e58 -熊猫4,http://159.75.85.63:36666/migu/608934721.m3u8?migutoken=b147fad8fee54f2df8464716f83e2f3e45e14fcf4628d9ccb7199d49c28b21901764be197bc2e2d277665774b0886372667ed57164daa0596ca2658de16b4abda3cee73c48170602c395489d79 -熊猫5,http://159.75.85.63:36666/migu/608935104.m3u8?migutoken=e14999ad5d18047c939adafe605dfa5f4a4daf3f0f43a0de84833baab8387c35ff1e105b986424491c88821f58d192160df05faa38259587901b3cbfb317c45a63f63eb4f1fdf464a79c76ec8e -熊猫6,http://159.75.85.63:36666/migu/608935797.m3u8?migutoken=bb2ca3e2f9f26d4830d92eebca78d8f301d8ed86069dda7983efce6af2f93c4ab73fb87136e483040a94f10c9a15df07ba19f31bfc8bac8872e6bbcb52f87e2e798708055a343e9e66c0d26e27 -熊猫7,http://159.75.85.63:36666/migu/609169286.m3u8?migutoken=2cf2111771247a56c99c1936f5e2cc211e3aa5a1b556a6e884b2d0555d48488a3f3b7b27ca66f27cbd537db8345e25589f85d76888cb17e28ed14c47d46692a531c20263f59256ed748c325f45 -熊猫8,http://159.75.85.63:36666/migu/609169287.m3u8?migutoken=c59e526c5a5b40f34e768aacc774312e0416f2c89d265aca1be4caef8d6003cd8afeb4df336a004459a76c36777ca6abd5c011659a3a2f6f92c079652dd37c17c347247465183d988840e675c3 -熊猫9,http://159.75.85.63:36666/migu/609169226.m3u8?migutoken=1dba07e3e1fc33df83e1d7fdf8ded375e8daea8e436c96357c6d9d573f236fedd1b8b33d1dd5e4fca7c3f12c175df0a16dd24478d869472ca240853d6952c4088d4d06b53b1d9ab3c0e149c309 -熊猫10,http://159.75.85.63:36666/migu/609169285.m3u8?migutoken=bae99b697aa636013f41e47dd9703282e76688c93720808453e25a6e985fe78e9e11b2034ccfdc395732d9bccddd5145545e12524e2eac71b9f392bf8cbf8f78d83727e6e4e86d9df66cc84d18 🐉综合IPV4,#genre# @@ -829,19 +898,7 @@ CETV4,http://159.75.85.63:36666/migu/923287339.m3u8?migutoken=37bb3448cc88262eb9 魅力足球咪咕,http://z.b.bkpcp.top/m.php?id=mlzq -高清大片,http://kxrj.site:1258/69/mg9.php?id=gqdp -经典电影,http://kxrj.site:1258/69/mg9.php?id=jdxgdy -军事大片,http://kxrj.site:1258/69/mg9.php?id=jsdp -热剧联播,http://kxrj.site:1258/69/mg9.php?id=rjlb -赛事经典,http://kxrj.site:1258/69/mg9.php?id=sszjd -体坛名汇,http://kxrj.site:1258/69/mg9.php?id=ttmlh -新片映厅,http://kxrj.site:1258/69/mg9.php?id=xpfyt -Y+剧场台,http://kxrj.site:1258/69/mg9.php?id=yjjc -家庭影院,http://kxrj.site:1258/69/mg9.php?id=chcjt -动作电影,http://kxrj.site:1258/69/mg9.php?id=chcdz -发现之旅,http://kxrj.site:1258/69/mg9.php?id=fxzl -老故事台,http://kxrj.site:1258/69/mg9.php?id=lgs -中学生台,http://kxrj.site:1258/69/mg9.php?id=zxs + 🐉移动央卫,#genre# @@ -919,40 +976,7 @@ CETV-4,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225783/index.m3u8 安多卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225659/index.m3u8 康巴卫视,http://ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225660/index.m3u8 -🐉云南央卫,#genre# -CCTV1,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-1hd/2500.m3u8?innersid=15654890039634427536& -CCTV1,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-1hd/2500.m3u8?innersid=1587240374177179388& -CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=18203640774999492907& -CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=2038291520205345979& -CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=18203640774999492907& -CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=2038291520205345979& -CCTV2,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=4547519954471704013& -CCTV3,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-3hd/2500.m3u8?innersid=9476609640263440821& -CCTV5,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-5hd/2500.m3u8?innersid=4790815411650771981& -CCTV6,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-6hd/2500.m3u8?innersid=14916759019483157794& -CCTV7,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-7hd/2500.m3u8?innersid=12706415551557919057& -CCTV8,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-8hd/2500.m3u8?innersid=15852265263958669967& -CCTV9,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-9hd/2500.m3u8?innersid=17686352686599982856& -CCTV10,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-10hd/2500.m3u8?innersid=9053765528789506188& -CCTV12,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-12hd/2500.m3u8?innersid=8190402369178717730& -CCTV14,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-14hd/2500.m3u8?innersid=10749977474028640862& -CCTV17,http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-17hd/2500.m3u8?innersid=2038717225283627700& -FJWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/fjws-hd/2500.m3u8?innersid=10943554111088989087& -FJWSH,http://cc-ynbit-wszhibo.ifengli.com:2000/live/fjws-hd/2500.m3u8?innersid=10943554111088989087& -GDWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/gdws-hd/2500.m3u8?innersid=2310031483208039305& -GDWSH,http://cc-ynbit-wszhibo.ifengli.com:2000/live/gdws-hd/2500.m3u8?innersid=2310031483208039305& -HLJWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hljws-hd/2500.m3u8?innersid=3559146512286674480& -HNWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/hnws-hd/2500.m3u8?innersid=11355377224826061225& -JLWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jlws-hd/2500.m3u8?innersid=11095614579634751142& -JSWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jsws-hd/2500.m3u8?innersid=14912719076157451667& -JXWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/jxws-hd/2500.m3u8?innersid=14570431181364255736& -LNWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/lnws-hd/2500.m3u8?innersid=6324592032119595697& -SCWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/scws-hd/2500.m3u8?innersid=17534924581903335933& -SHDFWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/shdfws-hd/2500.m3u8?innersid=6998114529464369318& -SZWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/szws-hd/2500.m3u8?innersid=15000776628606995758& -YNWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/ynws-hd/2500.m3u8?innersid=17488930753778751907& -ZSWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/zsws-hd/2500.m3u8?innersid=6252212644869032383& -BJWS,http://cc-ynbit-wszhibo.ifengli.com:2000/live/bjws-hd/1.m3u8?innersid=18360129623627541611& + @@ -1612,19 +1636,20 @@ ZooMoo,http://aktv.top/AKTV/live/aktv3/zoomoo/AKTV.m3u8 胆小勿入,内含…,http://182.40.120.180/test-txdwk.flv.huya.com/src/1099531752755-1099531752755-86436126637686784-2199063628966-10057-A-0-1.m3u8 那些年的香gang贺岁片,http://182.40.120.180/test-txdwk.flv.huya.com/src/1449581589-1449581589-6225905517638713344-3048959636-10057-A-0-1.m3u8 《角斗士2》“怒火重燃”预告,http://182.40.120.195/test-txdwk.flv.huya.com/src/-A-0-1.m3u8 -爱情公寓,http://kxrj.site:1258/69/hy.php?id=11336726 -士兵突击,http://kxrj.site:1258/69/hy.php?id=11342430 -玄幻剧场,http://kxrj.site:1258/69/hy.php?id=11342414 -联合抗日,http://kxrj.site:1258/69/hy.php?id=11352910 -三国演义,http://kxrj.site:1258/69/hy.php?id=11602081 -三国,http://kxrj.site:1258/69/hy.php?id=11352944 -新水浒传,http://kxrj.site:1258/69/hy.php?id=11342384 -神探狄仁杰2,http://kxrj.site:1258/69/hy.php?id=11342425 -神雕侠侣,http://kxrj.site:1258/69/hy.php?id=11352964 -笑傲江湖,http://kxrj.site:1258/69/hy.php?id=23865142 -埋堆堆布衣神相,http://kxrj.site:1258/69/hy.php?id=23865036 -纪晓岚,http://kxrj.site:1258/69/hy.php?id=11342396 -雍正皇帝,http://kxrj.site:1258/69/hy.php?id=11342439 +爱情公寓,http://ttkx.cc:1258/8585/hy.php?id=11336726 +士兵突击,http://ttkx.cc:1258/8585/hy.php?id=11342430 +玄幻剧场,http://ttkx.cc:1258/8585/hy.php?id=11342414 +联合抗日,http://ttkx.cc:1258/8585/hy.php?id=11352910 +三国演义,http://ttkx.cc:1258/8585/hy.php?id=11602081 +三国,http://ttkx.cc:1258/8585/hy.php?id=11352944 +新水浒传,http://ttkx.cc:1258/8585/hy.php?id=11342384 +神探狄仁杰2,http://ttkx.cc:1258/8585/hy.php?id=11342425 +神雕侠侣,http://ttkx.cc:1258/8585/hy.php?id=11352964 +笑傲江湖,http://ttkx.cc:1258/8585/hy.php?id=23865142 +埋堆堆布衣神相,http://ttkx.cc:1258/8585/hy.php?id=23865036 +纪晓岚,http://ttkx.cc:1258/8585/hy.php?id=11342396 +雍正皇帝,http://ttkx.cc:1258/8585/hy.php?id=11342439 + 【封神榜】割肉还母剔骨还父,http://182.40.120.186/test-txdwk.flv.huya.com/src/1199561158071-1199561158071-5434346901866545152-2399122439598-10057-A-0-1.m3u8 欢迎来到埋堆堆港剧的直播间,http://182.40.120.194/test-txdwk.flv.huya.com/src/1199561181026-1199561181026-5434445492840824832-2399122485508-10057-A-0-1.m3u8 @@ -1837,7 +1862,8 @@ RM 刘在石李光洙跑男,http://182.40.120.191/test-txdwk.flv.huya.com/src/12 🐉电影轮播,#genre# - +用天微影视不跳台,https://vd2.bdstatic.com/mda-ki2cvyhz79rw40wg/v1-cae/sc/mda-ki2cvyhz79rw40wg.mp4 +影仓需切为EXO硬解,https://vd3.bdstatic.com/mda-kj0kfvyty9dk9nk0/v1-cae/sc/mda-kj0kfvyty9dk9nk0.mp4 【周星星】星爷经典不间断,http://182.40.120.171/test-txdwk.flv.huya.com/src/1394575534-1394575534-5989656310331736064-2789274524-10057-A-0-1.m3u8 英叔护体 | 林正英搞笑僵尸系列,http://182.40.120.171/test-txdwk.flv.huya.com/src/1394575543-1394575543-5989656348986441728-2789274542-10057-A-0-1.m3u8 @@ -1885,69 +1911,69 @@ si神来了系列 好怕怕,http://182.40.120.194/test-txdwk.flv.huya.com/src/14 真正的硬汉007,铁打的詹姆斯邦德!,http://182.40.120.183/test-txdwk.flv.huya.com/src/1099531752778-1099531752778-86436225421934592-2199063629012-10057-A-0-1.m3u8 搞笑喜剧:最佳拍档 开心鬼系列,http://182.40.120.229/test-txdwk.flv.huya.com/src/1394575546-1394575546-5989656361871343616-2789274548-10057-A-0-1.m3u8 经典港剧笑嘻嘻,http://182.40.120.183/test-txdwk.flv.huya.com/src/1423787870-1423787870-6115122338091499520-2847699196-10057-A-0-1.m3u8 +周星驰,http://ttkx.cc:1258/8585/hy.php?id=11342412 +李连杰,http://ttkx.cc:1258/8585/hy.php?id=11342390 +甄子丹,http://ttkx.cc:1258/8585/hy.php?id=11352935 +刘德华,http://ttkx.cc:1258/8585/hy.php?id=11342424 +邱淑贞,http://ttkx.cc:1258/8585/hy.php?id=11352949 +女神系列,http://ttkx.cc:1258/8585/hy.php?id=11336571 +赌片,http://ttkx.cc:1258/8585/hy.php?id=11342399 +bang派,http://ttkx.cc:1258/8585/hy.php?id=11336719 +科幻动作,http://ttkx.cc:1258/8585/hy.php?id=11352964 +国产喜剧,http://ttkx.cc:1258/8585/hy.php?id=11602044 +五福星,http://ttkx.cc:1258/8585/hy.php?id=11282233 +古墓系列,http://ttkx.cc:1258/8585/hy.php?id=11352913 +灾难电影,http://ttkx.cc:1258/8585/hy.php?id=11352871 +港片,http://ttkx.cc:1258/8585/hy.php?id=11602043 +灾难片,http://ttkx.cc:1258/8585/hy.php?id=11602075 +奇幻片,http://ttkx.cc:1258/8585/hy.php?id=16149609 +悬疑片,http://ttkx.cc:1258/8585/hy.php?id=16099968 +香港贺岁,http://ttkx.cc:1258/8585/hy.php?id=11601971 +贺岁合家欢剧场,http://ttkx.cc:1258/8585/hy.php?id=11602067 +恐怖片,http://ttkx.cc:1258/8585/hy.php?id=16741179 +历年贺岁档,http://ttkx.cc:1258/8585/hy.php?id=11601986 +李世民,http://ttkx.cc:1258/8585/hy.php?id=11336572 +港产搞笑,http://ttkx.cc:1258/8585/hy.php?id=11342423 +滇军抗战,http://ttkx.cc:1258/8585/hy.php?id=11342388 +经典女神,http://ttkx.cc:1258/8585/hy.php?id=11352909 -周星驰,http://kxrj.site:1258/69/hy.php?id=11342412 -李连杰,http://kxrj.site:1258/69/hy.php?id=11342390 -甄子丹,http://kxrj.site:1258/69/hy.php?id=11352935 -刘德华,http://kxrj.site:1258/69/hy.php?id=11342424 -邱淑贞,http://kxrj.site:1258/69/hy.php?id=11352949 -女神系列,http://kxrj.site:1258/69/hy.php?id=11336571 -赌片,http://kxrj.site:1258/69/hy.php?id=11342399 -bang派,http://kxrj.site:1258/69/hy.php?id=11336719 -科幻动作,http://kxrj.site:1258/69/hy.php?id=11352964 -国产喜剧,http://kxrj.site:1258/69/hy.php?id=11602044 -五福星,http://kxrj.site:1258/69/hy.php?id=11282233 -古墓系列,http://kxrj.site:1258/69/hy.php?id=11352913 -灾难电影,http://kxrj.site:1258/69/hy.php?id=11352871 -港片,http://kxrj.site:1258/69/hy.php?id=11602043 -灾难片,http://kxrj.site:1258/69/hy.php?id=11602075 -奇幻片,http://kxrj.site:1258/69/hy.php?id=16149609 -悬疑片,http://kxrj.site:1258/69/hy.php?id=16099968 -香港贺岁,http://kxrj.site:1258/69/hy.php?id=11601971 -贺岁合家欢剧场,http://kxrj.site:1258/69/hy.php?id=11602067 -恐怖片,http://kxrj.site:1258/69/hy.php?id=16741179 -历年贺岁档,http://kxrj.site:1258/69/hy.php?id=11601986 -李世民,http://kxrj.site:1258/69/hy.php?id=11336572 -港产搞笑,http://kxrj.site:1258/69/hy.php?id=11342423 -滇军抗战,http://kxrj.site:1258/69/hy.php?id=11342388 -经典女神,http://kxrj.site:1258/69/hy.php?id=11352909 +许冠英合集,http://ttkx.cc:1258/8585/hy.php?id=11601972 +经典港剧笑嘻嘻,http://ttkx.cc:1258/8585/hy.php?id=11352965 +电影_强森,http://ttkx.cc:1258/8585/hy.php?id=21059581 +电影_怪兽,http://ttkx.cc:1258/8585/hy.php?id=21059577 +电影_救援,http://ttkx.cc:1258/8585/hy.php?id=21059594 +电影_盗墓,http://ttkx.cc:1258/8585/hy.php?id=21059552 +电影_谍战,http://ttkx.cc:1258/8585/hy.php?id=21059585 +电影_梁家辉,http://ttkx.cc:1258/8585/hy.php?id=11342429 +电影_斯坦森,http://ttkx.cc:1258/8585/hy.php?id=21059588 +电影_小鬼头,http://ttkx.cc:1258/8585/hy.php?id=11352963 +电影_八点档,http://ttkx.cc:1258/8585/hy.php?id=880261 +电影_丧尸片,http://ttkx.cc:1258/8585/hy.php?id=21059578 +电影_战争片,http://ttkx.cc:1258/8585/hy.php?id=21059574 +电影_犯罪片,http://ttkx.cc:1258/8585/hy.php?id=11352974 +电影_古装片,http://ttkx.cc:1258/8585/hy.php?id=11336590 +电影_国产悬疑,http://ttkx.cc:1258/8585/hy.php?id=11342395 +电影_喜乐影院,http://ttkx.cc:1258/8585/hy.php?id=21059580 +电影_蘑菇影厅,http://ttkx.cc:1258/8585/hy.php?id=11601981 +电影_死神来了,http://ttkx.cc:1258/8585/hy.php?id=11352903 +电影_怪兽系列,http://ttkx.cc:1258/8585/hy.php?id=21059554 +鹿鼎记小春版,http://ttkx.cc:1258/8585/hy.php?id=23865080 +陀枪师姐,http://ttkx.cc:1258/8585/hy.php?id=23860039 +倚天屠龙记,http://ttkx.cc:1258/8585/hy.php?id=23734246 +使徒行者,http://ttkx.cc:1258/8585/hy.php?id=23734256 +扫黄先锋,http://ttkx.cc:1258/8585/hy.php?id=23903196 +电影_强森,http://ttkx.cc:1258/8585/hy.php?id=21059581 +电影_怪兽,http://ttkx.cc:1258/8585/hy.php?id=21059577 +电影_救援,http://ttkx.cc:1258/8585/hy.php?id=21059594 +电影_盗墓,http://ttkx.cc:1258/8585/hy.php?id=21059552 +电影_贺岁,http://ttkx.cc:1258/8585/hy.php?id=11601971 +电影_玄幻,http://ttkx.cc:1258/8585/hy.php?id=11342414 +电影_谍战,http://ttkx.cc:1258/8585/hy.php?id=21059585 +电影_港片,http://ttkx.cc:1258/8585/hy.php?id=11602043 +电影_李连杰,http://ttkx.cc:1258/8585/hy.php?id=11342390 +电影_梁家辉,http://ttkx.cc:1258/8585/hy.php?id=11342429 +电影_刘德华,http://ttkx.cc:1258/8585/hy.php?id=11342424 -许冠英合集,http://kxrj.site:1258/69/hy.php?id=11601972 -经典港剧笑嘻嘻,http://kxrj.site:1258/69/hy.php?id=11352965 -电影_强森,http://kxrj.site:1258/69/hy.php?id=21059581 -电影_怪兽,http://kxrj.site:1258/69/hy.php?id=21059577 -电影_救援,http://kxrj.site:1258/69/hy.php?id=21059594 -电影_盗墓,http://kxrj.site:1258/69/hy.php?id=21059552 -电影_谍战,http://kxrj.site:1258/69/hy.php?id=21059585 -电影_梁家辉,http://kxrj.site:1258/69/hy.php?id=11342429 -电影_斯坦森,http://kxrj.site:1258/69/hy.php?id=21059588 -电影_小鬼头,http://kxrj.site:1258/69/hy.php?id=11352963 -电影_八点档,http://kxrj.site:1258/69/hy.php?id=880261 -电影_丧尸片,http://kxrj.site:1258/69/hy.php?id=21059578 -电影_战争片,http://kxrj.site:1258/69/hy.php?id=21059574 -电影_犯罪片,http://kxrj.site:1258/69/hy.php?id=11352974 -电影_古装片,http://kxrj.site:1258/69/hy.php?id=11336590 -电影_国产悬疑,http://kxrj.site:1258/69/hy.php?id=11342395 -电影_喜乐影院,http://kxrj.site:1258/69/hy.php?id=21059580 -电影_蘑菇影厅,http://kxrj.site:1258/69/hy.php?id=11601981 -电影_死神来了,http://kxrj.site:1258/69/hy.php?id=11352903 -电影_怪兽系列,http://kxrj.site:1258/69/hy.php?id=21059554 -鹿鼎记小春版,http://kxrj.site:1258/69/hy.php?id=23865080 -陀枪师姐,http://kxrj.site:1258/69/hy.php?id=23860039 -倚天屠龙记,http://kxrj.site:1258/69/hy.php?id=23734246 -使徒行者,http://kxrj.site:1258/69/hy.php?id=23734256 -扫黄先锋,http://kxrj.site:1258/69/hy.php?id=23903196 -电影_强森,http://kxrj.site:1258/69/hy.php?id=21059581 -电影_怪兽,http://kxrj.site:1258/69/hy.php?id=21059577 -电影_救援,http://kxrj.site:1258/69/hy.php?id=21059594 -电影_盗墓,http://kxrj.site:1258/69/hy.php?id=21059552 -电影_贺岁,http://kxrj.site:1258/69/hy.php?id=11601971 -电影_玄幻,http://kxrj.site:1258/69/hy.php?id=11342414 -电影_谍战,http://kxrj.site:1258/69/hy.php?id=21059585 -电影_港片,http://kxrj.site:1258/69/hy.php?id=11602043 -电影_李连杰,http://kxrj.site:1258/69/hy.php?id=11342390 -电影_梁家辉,http://kxrj.site:1258/69/hy.php?id=11342429 -电影_刘德华,http://kxrj.site:1258/69/hy.php?id=11342424 @@ -2197,6 +2223,8 @@ bang派,http://kxrj.site:1258/69/hy.php?id=11336719 🐉电影频道,#genre# +1905电影网(华语),http://php.jdshipin.com:8880/1905.php?id=1905dy +1905电影网(外语),http://php.jdshipin.com:8880/1905.php?id=1905dy2 周处除三害HD,https://vdn6.vzuu.com/FHD/683acd86-d92b-11ee-8e89-e612311e17dc-v8_f2_t1_lt47s5CP.mp4?pkey=AAXMfeKoB_fI1KmFPSQciIKPe77iiWVFBSkH3k2LwDBub89_yCkopNRYmr8_-Nl3pWa8fMB5TdeH9aGluG8GHg7R&c=avc.8.0&f=mp4&pu=1513c7c2&bu=1513c7c2&expiration=1710262506&v=ks6?pp=ChMxNDAxNjIzODY1NzM5NTc5MzkyGGMiC2ZlZWRfY2hvaWNlMhMxMzY5MDA1NjA4NTk5OTA0MjU3PXu830Q= 第二十条TH,https://vip.ffzy-play2.com/20240215/59562_169d8bd2/2000k/hls/mixed.m3u8 热辣滚烫TH,https://ikcdn01.ikzybf.com/20240213/qeySwP3F/2000kb/hls/index.m3u8 @@ -2553,43 +2581,43 @@ A计划续集,https://vip.ffzy-play7.com/20221115/4412_bf4bdaf6/index.m3u8 🐉埋堆堆线,#genre# -埋堆堆 𝟙,http://kxrj.site:1258/69/hy.php?id=23740156 -埋堆堆 𝟚,http://kxrj.site:1258/69/hy.php?id=23749096 -埋堆堆 𝟛,http://kxrj.site:1258/69/hy.php?id=23735126 -埋堆堆 𝟜,http://kxrj.site:1258/69/hy.php?id=23903123 -埋堆堆 𝟝,http://kxrj.site:1258/69/hy.php?id=23734169 -埋堆堆 𝟞,http://kxrj.site:1258/69/hy.php?id=23863804 -埋堆堆 𝟟,http://kxrj.site:1258/69/hy.php?id=23865080 -埋堆堆 𝟠,http://kxrj.site:1258/69/hy.php?id=23864973 -埋堆堆 𝟡,http://kxrj.site:1258/69/hy.php?id=23903130 -埋堆堆 𝟙𝟘,http://kxrj.site:1258/69/hy.php?id=23860039 -埋堆堆 𝟙𝟙,http://kxrj.site:1258/69/hy.php?id=23903183 -埋堆堆 𝟙𝟚,http://kxrj.site:1258/69/hy.php?id=23903196 -埋堆堆 𝟙𝟛,http://kxrj.site:1258/69/hy.php?id=23728674 -埋堆堆 𝟙𝟜,http://kxrj.site:1258/69/hy.php?id=23865036 -埋堆堆 𝟙𝟝,http://kxrj.site:1258/69/hy.php?id=23829543 -埋堆堆 𝟙𝟞,http://kxrj.site:1258/69/hy.php?id=23865161 -埋堆堆 𝟙𝟟,http://kxrj.site:1258/69/hy.php?id=23865058 -埋堆堆 𝟙𝟠,http://kxrj.site:1258/69/hy.php?id=23824164 -埋堆堆 𝟙𝟡,http://kxrj.site:1258/69/hy.php?id=23863796 -埋堆堆 𝟚𝟘,http://kxrj.site:1258/69/hy.php?id=23734183 -埋堆堆 𝟚𝟙,http://kxrj.site:1258/69/hy.php?id=23728660 -埋堆堆 𝟚𝟚,http://kxrj.site:1258/69/hy.php?id=23865142 -埋堆堆 𝟚𝟛,http://kxrj.site:1258/69/hy.php?id=23734246 -埋堆堆 𝟚𝟜,http://kxrj.site:1258/69/hy.php?id=23865171 -埋堆堆 𝟚𝟝,http://kxrj.site:1258/69/hy.php?id=23734256 -埋堆堆 𝟚𝟞,http://kxrj.site:1258/69/hy.php?id=23749083 -电视剧场一,http://kxrj.site:1258/69/hy.php?id=29465862 -电视剧场二,http://kxrj.site:1258/69/hy.php?id=11336591 -电视剧场三,http://kxrj.site:1258/69/hy.php?id=21059563 -电视剧场四,http://kxrj.site:1258/69/hy.php?id=26355783 -电视剧场五,http://kxrj.site:1258/69/hy.php?id=11352912 -电视剧场六,http://kxrj.site:1258/69/hy.php?id=11352936 -电视剧场七,http://kxrj.site:1258/69/hy.php?id=21059630 -电视剧场八,http://kxrj.site:1258/69/hy.php?id=26355775 -电视剧场九,http://kxrj.site:1258/69/hy.php?id=21059594 -电视剧场十,http://kxrj.site:1258/69/hy.php?id=11336592 -电视剧场十一,http://kxrj.site:1258/69/hy.php?id=11602088 +埋堆堆 𝟙,http://ttkx.cc:1258/8585/hy.php?id=23740156 +埋堆堆 𝟚,http://ttkx.cc:1258/8585/hy.php?id=23749096 +埋堆堆 𝟛,http://ttkx.cc:1258/8585/hy.php?id=23735126 +埋堆堆 𝟜,http://ttkx.cc:1258/8585/hy.php?id=23903123 +埋堆堆 𝟝,http://ttkx.cc:1258/8585/hy.php?id=23734169 +埋堆堆 𝟞,http://ttkx.cc:1258/8585/hy.php?id=23863804 +埋堆堆 𝟟,http://ttkx.cc:1258/8585/hy.php?id=23865080 +埋堆堆 𝟠,http://ttkx.cc:1258/8585/hy.php?id=23864973 +埋堆堆 𝟡,http://ttkx.cc:1258/8585/hy.php?id=23903130 +埋堆堆 𝟙𝟘,http://ttkx.cc:1258/8585/hy.php?id=23860039 +埋堆堆 𝟙𝟙,http://ttkx.cc:1258/8585/hy.php?id=23903183 +埋堆堆 𝟙𝟚,http://ttkx.cc:1258/8585/hy.php?id=23903196 +埋堆堆 𝟙𝟛,http://ttkx.cc:1258/8585/hy.php?id=23728674 +埋堆堆 𝟙𝟜,http://ttkx.cc:1258/8585/hy.php?id=23865036 +埋堆堆 𝟙𝟝,http://ttkx.cc:1258/8585/hy.php?id=23829543 +埋堆堆 𝟙𝟞,http://ttkx.cc:1258/8585/hy.php?id=23865161 +埋堆堆 𝟙𝟟,http://ttkx.cc:1258/8585/hy.php?id=23865058 +埋堆堆 𝟙𝟠,http://ttkx.cc:1258/8585/hy.php?id=23824164 +埋堆堆 𝟙𝟡,http://ttkx.cc:1258/8585/hy.php?id=23863796 +埋堆堆 𝟚𝟘,http://ttkx.cc:1258/8585/hy.php?id=23734183 +埋堆堆 𝟚𝟙,http://ttkx.cc:1258/8585/hy.php?id=23728660 +埋堆堆 𝟚𝟚,http://ttkx.cc:1258/8585/hy.php?id=23865142 +埋堆堆 𝟚𝟛,http://ttkx.cc:1258/8585/hy.php?id=23734246 +埋堆堆 𝟚𝟜,http://ttkx.cc:1258/8585/hy.php?id=23865171 +埋堆堆 𝟚𝟝,http://ttkx.cc:1258/8585/hy.php?id=23734256 +埋堆堆 𝟚𝟞,http://ttkx.cc:1258/8585/hy.php?id=23749083 +电视剧场一,http://ttkx.cc:1258/8585/hy.php?id=29465862 +电视剧场二,http://ttkx.cc:1258/8585/hy.php?id=11336591 +电视剧场三,http://ttkx.cc:1258/8585/hy.php?id=21059563 +电视剧场四,http://ttkx.cc:1258/8585/hy.php?id=26355783 +电视剧场五,http://ttkx.cc:1258/8585/hy.php?id=11352912 +电视剧场六,http://ttkx.cc:1258/8585/hy.php?id=11352936 +电视剧场七,http://ttkx.cc:1258/8585/hy.php?id=21059630 +电视剧场八,http://ttkx.cc:1258/8585/hy.php?id=26355775 +电视剧场九,http://ttkx.cc:1258/8585/hy.php?id=21059594 +电视剧场十,http://ttkx.cc:1258/8585/hy.php?id=11336592 +电视剧场十一,http://ttkx.cc:1258/8585/hy.php?id=11602088 diff --git a/天微/lives/天微livev2.txt b/天微/lives/天微livev2.txt index 0813ca9..a944c6c 100644 --- a/天微/lives/天微livev2.txt +++ b/天微/lives/天微livev2.txt @@ -1,9 +1,9 @@ #EXTM3U x-tvg-url="https://epg.iill.top/epg" catchup="append" catchup-source="?playseek=${(b)yyyyMMddHHmmss}-${(e)yyyyMMddHHmmss}" #EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",免费订阅:请勿贩卖... https://epg.iill.top/v/302.mp4 -#EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",维护时间:2025-1-13#佛系维护... +#EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",维护时间:2025-1-15#佛系维护... https://epg.iill.top/v/301.mp4 -#EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",维护内容:维护内容:维护 Gather「修复 •IPV6 源」 +#EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",维护内容:维护内容:维护 Gather「删除 •IPV6 源 / 增加 •IPV4 源 部分有效自测,建议挂节点 」 https://epg.iill.top/v/302.mp4 #EXTINF:-1 tvg-id="免费订阅" tvg-name="免费订阅" tvg-logo="https://epg.iill.top/logo/温馨提示.png" group-title="•温馨「提示」",公告说明:推流源·暂不限制·若流量太大将改限时 https://epg.iill.top/v/301.mp4 @@ -17,494 +17,524 @@ https://d2dw21aq0j0l5c.cloudfront.net/playlist_3840x2160.m3u8 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/FashionTV.png" group-title="•4K「IPV4」",Fashion 4K「时尚」 https://fash2043.cloudycdn.services/slive/ftv_ftv_4k_hevc_73d_42080_default_466_hls.smil/playlist.m3u8 -#EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" tvg-logo="https://epg.iill.top/logo/纯享4K.png" group-title="•4K「IPV6」",纯享·4K「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000011651/index.m3u8?channel-id=ystenlive&Contentid=1000000004000011651&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="华数4K" tvg-name="华数4K" tvg-logo="https://epg.iill.top/logo/华数4K.png" group-title="•4K「IPV6」",华数·4K「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000003000004748/index.m3u8?channel-id=wasusyt&Contentid=6000000003000004748&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="欢笑剧场" tvg-name="欢笑剧场" tvg-logo="https://epg.iill.top/logo/欢笑剧场.png" group-title="•4K「IPV6」",欢笑剧场·4K「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000007000010001/index.m3u8?channel-id=bestzb&Contentid=5000000007000010001&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" tvg-logo="https://epg.iill.top/logo/CCTV16.png" group-title="•4K「IPV6」",CCTV 16 奥林匹克·4K「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000008000023254/index.m3u8?channel-id=bestzb&Contentid=5000000008000023254&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" tvg-logo="https://epg.iill.top/logo/纯享4K.png" group-title="•4K「IPV4」",纯享·4K「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000011651&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="华数4K" tvg-name="华数4K" tvg-logo="https://epg.iill.top/logo/华数4K.png" group-title="•4K「IPV4」",华数·4K「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000003000004748&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="欢笑剧场" tvg-name="欢笑剧场" tvg-logo="https://epg.iill.top/logo/欢笑剧场.png" group-title="•4K「IPV4」",欢笑剧场·4K「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000007000010001&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" tvg-logo="https://epg.iill.top/logo/CCTV16.png" group-title="•4K「IPV4」",CCTV 16 奥林匹克·4K「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000008000023254&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" tvg-logo="https://epg.iill.top/logo/CCTV1.png" group-title="•央视「IPV6」",CCTV1 综合「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265001/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" tvg-logo="https://epg.iill.top/logo/CCTV2.png" group-title="•央视「IPV6」",CCTV2 财经「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265002/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" tvg-logo="https://epg.iill.top/logo/CCTV3.png" group-title="•央视「IPV6」",CCTV3 综艺「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265003/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" tvg-logo="https://epg.iill.top/logo/CCTV4.png" group-title="•央视「IPV6」",CCTV4 中文国际「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265004/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" tvg-logo="https://epg.iill.top/logo/CCTV5.png" group-title="•央视「IPV6」",CCTV5 体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000004000008885/index.m3u8?channel-id=bestzb&Contentid=5000000004000008885&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV5+" tvg-name="CCTV5+" tvg-logo="https://epg.iill.top/logo/CCTV5+.png" group-title="•央视「IPV6」",CCTV5+ 体育赛事「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031127/index.m3u8?channel-id=bestzb&Contentid=5000000011000031127&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" tvg-logo="https://epg.iill.top/logo/CCTV6.png" group-title="•央视「IPV6」",CCTV6 电影「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265006/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" tvg-logo="https://epg.iill.top/logo/CCTV7.png" group-title="•央视「IPV6」",CCTV7 国防军事「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265007/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" tvg-logo="https://epg.iill.top/logo/CCTV8.png" group-title="•央视「IPV6」",CCTV8 电视剧「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265008/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" tvg-logo="https://epg.iill.top/logo/CCTV9.png" group-title="•央视「IPV6」",CCTV9 纪录「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265009/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" tvg-logo="https://epg.iill.top/logo/CCTV10.png" group-title="•央视「IPV6」",CCTV 10 科教「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265010/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" tvg-logo="https://epg.iill.top/logo/CCTV11.png" group-title="•央视「IPV6」",CCTV 11 戏曲「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265011/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265011&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" tvg-logo="https://epg.iill.top/logo/CCTV12.png" group-title="•央视「IPV6」",CCTV 12 社会与法「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265012/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265012&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" tvg-logo="https://epg.iill.top/logo/CCTV13.png" group-title="•央视「IPV6」",CCTV 13 新闻「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265101/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265101&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" tvg-logo="https://epg.iill.top/logo/CCTV14.png" group-title="•央视「IPV6」",CCTV 14 少儿「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265013/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265013&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" tvg-logo="https://epg.iill.top/logo/CCTV15.png" group-title="•央视「IPV6」",CCTV 15 音乐「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265014/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265014&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" tvg-logo="https://epg.iill.top/logo/CCTV16.png" group-title="•央视「IPV6」",CCTV 16 奥林匹克「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000006000233002/index.m3u8?channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" tvg-logo="https://epg.iill.top/logo/CCTV17.png" group-title="•央视「IPV6」",CCTV 17 农村农业「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265015/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265015&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CGTN" tvg-name="CGTN" tvg-logo="https://epg.iill.top/logo/CGTN.png" group-title="•央视「IPV6」",CGTN 国际「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/7745129417417101820/index.m3u8?channel-id=hnbblive&Contentid=7745129417417101820&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CGTN纪录" tvg-name="CGTN纪录" tvg-logo="https://epg.iill.top/logo/CGTN纪录.png" group-title="•央视「IPV6」",CGTN Documentary「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/7114647837765104058/index.m3u8?channel-id=hnbblive&Contentid=7114647837765104058&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" tvg-logo="https://epg.iill.top/logo/CETV1.png" group-title="•央视「IPV6」",CETV 1 中国教育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000002000002652/index.m3u8?channel-id=bestzb&Contentid=5000000002000002652&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CETV4" tvg-name="CETV4" tvg-logo="https://epg.iill.top/logo/CETV4.png" group-title="•央视「IPV6」",CETV 4 中国教育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031126/index.m3u8?channel-id=bestzb&Contentid=5000000011000031126&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" tvg-logo="https://epg.iill.top/logo/CCTV1.png" group-title="•央视「IPV4」",CCTV1 综合「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" tvg-logo="https://epg.iill.top/logo/CCTV2.png" group-title="•央视「IPV4」",CCTV2 财经「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" tvg-logo="https://epg.iill.top/logo/CCTV3.png" group-title="•央视「IPV4」",CCTV3 综艺「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" tvg-logo="https://epg.iill.top/logo/CCTV4.png" group-title="•央视「IPV4」",CCTV4 中文国际「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" tvg-logo="https://epg.iill.top/logo/CCTV5.png" group-title="•央视「IPV4」",CCTV5 体育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000004000008885&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV5+" tvg-name="CCTV5+" tvg-logo="https://epg.iill.top/logo/CCTV5+.png" group-title="•央视「IPV4」",CCTV5+ 体育赛事「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031127&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" tvg-logo="https://epg.iill.top/logo/CCTV6.png" group-title="•央视「IPV4」",CCTV6 电影「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" tvg-logo="https://epg.iill.top/logo/CCTV7.png" group-title="•央视「IPV4」",CCTV7 国防军事「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" tvg-logo="https://epg.iill.top/logo/CCTV8.png" group-title="•央视「IPV4」",CCTV8 电视剧「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" tvg-logo="https://epg.iill.top/logo/CCTV9.png" group-title="•央视「IPV4」",CCTV9 纪录「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" tvg-logo="https://epg.iill.top/logo/CCTV10.png" group-title="•央视「IPV4」",CCTV 10 科教「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" tvg-logo="https://epg.iill.top/logo/CCTV11.png" group-title="•央视「IPV4」",CCTV 11 戏曲「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265011&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" tvg-logo="https://epg.iill.top/logo/CCTV12.png" group-title="•央视「IPV4」",CCTV 12 社会与法「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265012&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" tvg-logo="https://epg.iill.top/logo/CCTV13.png" group-title="•央视「IPV4」",CCTV 13 新闻「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265101&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" tvg-logo="https://epg.iill.top/logo/CCTV14.png" group-title="•央视「IPV4」",CCTV 14 少儿「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265013&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" tvg-logo="https://epg.iill.top/logo/CCTV15.png" group-title="•央视「IPV4」",CCTV 15 音乐「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265014&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" tvg-logo="https://epg.iill.top/logo/CCTV16.png" group-title="•央视「IPV4」",CCTV 16 奥林匹克「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" tvg-logo="https://epg.iill.top/logo/CCTV17.png" group-title="•央视「IPV4」",CCTV 17 农村农业「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265015&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CGTN" tvg-name="CGTN" tvg-logo="https://epg.iill.top/logo/CGTN.png" group-title="•央视「IPV4」",CGTN 国际「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=7745129417417101820&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CGTN纪录" tvg-name="CGTN纪录" tvg-logo="https://epg.iill.top/logo/CGTN纪录.png" group-title="•央视「IPV4」",CGTN Documentary「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=7114647837765104058&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" tvg-logo="https://epg.iill.top/logo/CETV1.png" group-title="•央视「IPV4」",CETV 1 中国教育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000002000002652&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="CETV4" tvg-name="CETV4" tvg-logo="https://epg.iill.top/logo/CETV4.png" group-title="•央视「IPV4」",CETV 4 中国教育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031126&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" tvg-logo="https://epg.iill.top/logo/湖南卫视.png" group-title="•卫视「IPV6」",湖南卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265024/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" tvg-logo="https://epg.iill.top/logo/浙江卫视.png" group-title="•卫视「IPV6」",浙江卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265031/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265031&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" tvg-logo="https://epg.iill.top/logo/江苏卫视.png" group-title="•卫视「IPV6」",江苏卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265030/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265030&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" tvg-logo="https://epg.iill.top/logo/东方卫视.png" group-title="•卫视「IPV6」",东方卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265018/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265018&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" tvg-logo="https://epg.iill.top/logo/北京卫视.png" group-title="•卫视「IPV6」",北京卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265027/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" tvg-logo="https://epg.iill.top/logo/广东卫视.png" group-title="•卫视「IPV6」",广东卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265034/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265034&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" tvg-logo="https://epg.iill.top/logo/深圳卫视.png" group-title="•卫视「IPV6」",深圳卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265028/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265028&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" tvg-logo="https://epg.iill.top/logo/重庆卫视.png" group-title="•卫视「IPV6」",重庆卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265017/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265017&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" tvg-logo="https://epg.iill.top/logo/四川卫视.png" group-title="•卫视「IPV6」",四川卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000004000006119/index.m3u8?channel-id=bestzb&Contentid=5000000004000006119&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" tvg-logo="https://epg.iill.top/logo/广西卫视.png" group-title="•卫视「IPV6」",广西卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031118/index.m3u8?channel-id=bestzb&Contentid=5000000011000031118&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" tvg-logo="https://epg.iill.top/logo/天津卫视.png" group-title="•卫视「IPV6」",天津卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265026/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" tvg-logo="https://epg.iill.top/logo/安徽卫视.png" group-title="•卫视「IPV6」",安徽卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265025/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" tvg-logo="https://epg.iill.top/logo/山东卫视.png" group-title="•卫视「IPV6」",山东卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265019/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265019&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" tvg-logo="https://epg.iill.top/logo/江西卫视.png" group-title="•卫视「IPV6」",江西卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265032/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265032&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" tvg-logo="https://epg.iill.top/logo/河北卫视.png" group-title="•卫视「IPV6」",河北卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000006000040016/index.m3u8?channel-id=bestzb&Contentid=5000000006000040016&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" tvg-logo="https://epg.iill.top/logo/河南卫视.png" group-title="•卫视「IPV6」",河南卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000002000027731/index.m3u8?channel-id=ystenlive&Contentid=1000000002000027731&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" tvg-logo="https://epg.iill.top/logo/海南卫视.png" group-title="•卫视「IPV6」",海南卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" tvg-logo="https://epg.iill.top/logo/东南卫视.png" group-title="•卫视「IPV6」",东南卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265033/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265033&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" tvg-logo="https://epg.iill.top/logo/湖北卫视.png" group-title="•卫视「IPV6」",湖北卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265023/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" tvg-logo="https://epg.iill.top/logo/贵州卫视.png" group-title="•卫视「IPV6」",贵州卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" tvg-logo="https://epg.iill.top/logo/辽宁卫视.png" group-title="•卫视「IPV6」",辽宁卫视「IPV6 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265022/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265022&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" tvg-logo="https://epg.iill.top/logo/吉林卫视.png" group-title="•卫视「IPV6」",吉林卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" tvg-logo="https://epg.iill.top/logo/黑龙江卫视.png" group-title="•卫视「IPV6」",黑龙江卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000265029/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265029&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" tvg-logo="https://epg.iill.top/logo/云南卫视.png" group-title="•卫视「IPV6」",云南卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031120/index.m3u8?channel-id=bestzb&Contentid=5000000011000031120&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" tvg-logo="https://epg.iill.top/logo/甘肃卫视.png" group-title="•卫视「IPV6」",甘肃卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031121/index.m3u8?channel-id=bestzb&Contentid=5000000011000031121&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" tvg-logo="https://epg.iill.top/logo/青海卫视.png" group-title="•卫视「IPV6」",青海卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000006000040015/index.m3u8?channel-id=bestzb&Contentid=5000000006000040015&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" tvg-logo="https://epg.iill.top/logo/三沙卫视.png" group-title="•卫视「IPV6」",三沙卫视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288016/index.m3u8?channel-id=bestzb&Contentid=5000000011000288016&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" tvg-logo="https://epg.iill.top/logo/湖南卫视.png" group-title="•卫视「IPV4」",湖南卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" tvg-logo="https://epg.iill.top/logo/浙江卫视.png" group-title="•卫视「IPV4」",浙江卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265031&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" tvg-logo="https://epg.iill.top/logo/江苏卫视.png" group-title="•卫视「IPV4」",江苏卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265030&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" tvg-logo="https://epg.iill.top/logo/东方卫视.png" group-title="•卫视「IPV4」",东方卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265018&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" tvg-logo="https://epg.iill.top/logo/北京卫视.png" group-title="•卫视「IPV4」",北京卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" tvg-logo="https://epg.iill.top/logo/广东卫视.png" group-title="•卫视「IPV4」",广东卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265034&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" tvg-logo="https://epg.iill.top/logo/深圳卫视.png" group-title="•卫视「IPV4」",深圳卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265028&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" tvg-logo="https://epg.iill.top/logo/重庆卫视.png" group-title="•卫视「IPV4」",重庆卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265017&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" tvg-logo="https://epg.iill.top/logo/四川卫视.png" group-title="•卫视「IPV4」",四川卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000004000006119&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" tvg-logo="https://epg.iill.top/logo/广西卫视.png" group-title="•卫视「IPV4」",广西卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031118&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" tvg-logo="https://epg.iill.top/logo/天津卫视.png" group-title="•卫视「IPV4」",天津卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" tvg-logo="https://epg.iill.top/logo/安徽卫视.png" group-title="•卫视「IPV4」",安徽卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" tvg-logo="https://epg.iill.top/logo/山东卫视.png" group-title="•卫视「IPV4」",山东卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265019&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" tvg-logo="https://epg.iill.top/logo/江西卫视.png" group-title="•卫视「IPV4」",江西卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265032&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" tvg-logo="https://epg.iill.top/logo/河北卫视.png" group-title="•卫视「IPV4」",河北卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000006000040016&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" tvg-logo="https://epg.iill.top/logo/河南卫视.png" group-title="•卫视「IPV4」",河南卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000002000027731&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" tvg-logo="https://epg.iill.top/logo/海南卫视.png" group-title="•卫视「IPV4」",海南卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" tvg-logo="https://epg.iill.top/logo/东南卫视.png" group-title="•卫视「IPV4」",东南卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265033&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" tvg-logo="https://epg.iill.top/logo/湖北卫视.png" group-title="•卫视「IPV4」",湖北卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" tvg-logo="https://epg.iill.top/logo/贵州卫视.png" group-title="•卫视「IPV4」",贵州卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" tvg-logo="https://epg.iill.top/logo/辽宁卫视.png" group-title="•卫视「IPV4」",辽宁卫视「IPV4 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265022&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" tvg-logo="https://epg.iill.top/logo/吉林卫视.png" group-title="•卫视「IPV4」",吉林卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" tvg-logo="https://epg.iill.top/logo/黑龙江卫视.png" group-title="•卫视「IPV4」",黑龙江卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000265029&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" tvg-logo="https://epg.iill.top/logo/云南卫视.png" group-title="•卫视「IPV4」",云南卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031120&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" tvg-logo="https://epg.iill.top/logo/甘肃卫视.png" group-title="•卫视「IPV4」",甘肃卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031121&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" tvg-logo="https://epg.iill.top/logo/青海卫视.png" group-title="•卫视「IPV4」",青海卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000006000040015&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" tvg-logo="https://epg.iill.top/logo/三沙卫视.png" group-title="•卫视「IPV4」",三沙卫视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288016&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱喜剧" tvg-name="爱喜剧" tvg-logo="https://epg.iill.top/logo/iHOT爱喜剧.png" group-title="•iHOT「IPV6」",iHOT 爱喜剧「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000032/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000032&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱科幻" tvg-name="爱科幻" tvg-logo="https://epg.iill.top/logo/iHOT爱科幻.png" group-title="•iHOT「IPV6」",iHOT 爱科幻「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000033/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000033&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱院线" tvg-name="爱院线" tvg-logo="https://epg.iill.top/logo/iHOT爱院线.png" group-title="•iHOT「IPV6」",iHOT 爱院线「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000034/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000034&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱浪漫" tvg-name="爱浪漫" tvg-logo="https://epg.iill.top/logo/iHOT爱浪漫.png" group-title="•iHOT「IPV6」",iHOT 爱浪漫「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000035/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000035&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱悬疑" tvg-name="爱悬疑" tvg-logo="https://epg.iill.top/logo/iHOT爱悬疑.png" group-title="•iHOT「IPV6」",iHOT 爱悬疑「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000036/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000036&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱谍战" tvg-name="爱谍战" tvg-logo="https://epg.iill.top/logo/iHOT爱谍战.png" group-title="•iHOT「IPV6」",iHOT 爱谍战「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000038/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000038&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱历史" tvg-name="爱历史" tvg-logo="https://epg.iill.top/logo/iHOT爱历史.png" group-title="•iHOT「IPV6」",iHOY 爱历史「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000046/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000046&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱科学" tvg-name="爱科学" tvg-logo="https://epg.iill.top/logo/iHOT爱科学.png" group-title="•iHOT「IPV6」",iHOT 爱科学「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000047/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000047&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱幼教" tvg-name="爱幼教" tvg-logo="https://epg.iill.top/logo/iHOT爱幼教.png" group-title="•iHOT「IPV6」",iHOT 爱幼教「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000049/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000049&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱玩具" tvg-name="爱玩具" tvg-logo="https://epg.iill.top/logo/iHOT爱玩具.png" group-title="•iHOT「IPV6」",iHOT 爱玩具「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000053/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000053&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱赛车" tvg-name="爱赛车" tvg-logo="https://epg.iill.top/logo/iHOT爱赛车.png" group-title="•iHOT「IPV6」",iHOT 爱赛车「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000055/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000055&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱旅行" tvg-name="爱旅行" tvg-logo="https://epg.iill.top/logo/iHOT爱旅行.png" group-title="•iHOT「IPV6」",iHOT 爱旅行「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000056/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000056&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱奇谈" tvg-name="爱奇谈" tvg-logo="https://epg.iill.top/logo/iHOT爱奇谈.png" group-title="•iHOT「IPV6」",iHOT 爱奇谈「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000058/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000058&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱动漫" tvg-name="爱动漫" tvg-logo="https://epg.iill.top/logo/iHOT爱动漫.png" group-title="•iHOT「IPV6」",iHOT 爱动漫「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000059/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000059&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="爱体育" tvg-name="爱体育" tvg-logo="https://epg.iill.top/logo/iHOT爱体育.png" group-title="•iHOT「IPV6」",iHOT 爱体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000004000000060/index.m3u8?&channel-id=hnbblive&Contentid=2000000004000000060&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱喜剧" tvg-name="爱喜剧" tvg-logo="https://epg.iill.top/logo/iHOT爱喜剧.png" group-title="•iHOT「IPV4」",iHOT 爱喜剧「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000032&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱科幻" tvg-name="爱科幻" tvg-logo="https://epg.iill.top/logo/iHOT爱科幻.png" group-title="•iHOT「IPV4」",iHOT 爱科幻「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000033&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱院线" tvg-name="爱院线" tvg-logo="https://epg.iill.top/logo/iHOT爱院线.png" group-title="•iHOT「IPV4」",iHOT 爱院线「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000034&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱浪漫" tvg-name="爱浪漫" tvg-logo="https://epg.iill.top/logo/iHOT爱浪漫.png" group-title="•iHOT「IPV4」",iHOT 爱浪漫「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000035&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱悬疑" tvg-name="爱悬疑" tvg-logo="https://epg.iill.top/logo/iHOT爱悬疑.png" group-title="•iHOT「IPV4」",iHOT 爱悬疑「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000036&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱谍战" tvg-name="爱谍战" tvg-logo="https://epg.iill.top/logo/iHOT爱谍战.png" group-title="•iHOT「IPV4」",iHOT 爱谍战「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000038&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱历史" tvg-name="爱历史" tvg-logo="https://epg.iill.top/logo/iHOT爱历史.png" group-title="•iHOT「IPV4」",iHOY 爱历史「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000046&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱科学" tvg-name="爱科学" tvg-logo="https://epg.iill.top/logo/iHOT爱科学.png" group-title="•iHOT「IPV4」",iHOT 爱科学「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000047&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱幼教" tvg-name="爱幼教" tvg-logo="https://epg.iill.top/logo/iHOT爱幼教.png" group-title="•iHOT「IPV4」",iHOT 爱幼教「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000049&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱玩具" tvg-name="爱玩具" tvg-logo="https://epg.iill.top/logo/iHOT爱玩具.png" group-title="•iHOT「IPV4」",iHOT 爱玩具「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000053&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱赛车" tvg-name="爱赛车" tvg-logo="https://epg.iill.top/logo/iHOT爱赛车.png" group-title="•iHOT「IPV4」",iHOT 爱赛车「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000055&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱旅行" tvg-name="爱旅行" tvg-logo="https://epg.iill.top/logo/iHOT爱旅行.png" group-title="•iHOT「IPV4」",iHOT 爱旅行「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000056&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱奇谈" tvg-name="爱奇谈" tvg-logo="https://epg.iill.top/logo/iHOT爱奇谈.png" group-title="•iHOT「IPV4」",iHOT 爱奇谈「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000058&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱动漫" tvg-name="爱动漫" tvg-logo="https://epg.iill.top/logo/iHOT爱动漫.png" group-title="•iHOT「IPV4」",iHOT 爱动漫「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000059&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="爱体育" tvg-name="爱体育" tvg-logo="https://epg.iill.top/logo/iHOT爱体育.png" group-title="•iHOT「IPV4」",iHOT 爱体育「IPV4」 +https://itv.iill.top/itv/PLTV/&channel-id=hnbblive&Contentid=2000000004000000060&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="哒啵电竞" tvg-name="哒啵电竞" tvg-logo="https://epg.iill.top/logo/NewTV哒啵电竞.png" group-title="•NewTV「IPV6」",NewTV 哒啵电竞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000006000032327/index.m3u8?channel-id=ystenlive&Contentid=1000000006000032327&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="哒啵赛事" tvg-name="哒啵赛事" tvg-logo="https://epg.iill.top/logo/NewTV哒啵赛事.png" group-title="•NewTV「IPV6」",NewTV 哒啵赛事「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000001000003775/index.m3u8?channel-id=ystenlive&Contentid=1000000001000003775&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="黑莓动画" tvg-name="黑莓动画" tvg-logo="https://epg.iill.top/logo/NewTV黑莓动画.png" group-title="•NewTV「IPV6」",NewTV 黑莓动画「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000021734/index.m3u8?channel-id=ystenlive&Contentid=1000000004000021734&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="黑莓电影" tvg-name="黑莓电影" tvg-logo="https://epg.iill.top/logo/NewTV黑莓电影.png" group-title="•NewTV「IPV6」",NewTV 黑莓电影「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000019624/index.m3u8?channel-id=ystenlive&Contentid=1000000004000019624&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="超级电影" tvg-name="超级电影" tvg-logo="https://epg.iill.top/logo/NewTV超级电影.png" group-title="•NewTV「IPV6」",NewTV 超级电影「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000003000012426/index.m3u8?channel-id=ystenlive&Contentid=1000000003000012426&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="超级电视剧" tvg-name="超级电视剧" tvg-logo="https://epg.iill.top/logo/NewTV超级电视剧.png" group-title="•NewTV「IPV6」",NewTV 超级电视剧「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000024993/index.m3u8?channel-id=ystenlive&Contentid=1000000004000024993&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="超级体育" tvg-name="超级体育" tvg-logo="https://epg.iill.top/logo/NewTV超级体育.png" group-title="•NewTV「IPV6」",NewTV 超级体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000001000009601/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009601&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="超级综艺" tvg-name="超级综艺" tvg-logo="https://epg.iill.top/logo/NewTV超级综艺.png" group-title="•NewTV「IPV6」",NewTV 超级综艺「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000023658/index.m3u8?channel-id=ystenlive&Contentid=1000000004000023658&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="金牌综艺" tvg-name="金牌综艺" tvg-logo="https://epg.iill.top/logo/NewTV金牌综艺.png" group-title="•NewTV「IPV6」",NewTV 金牌综艺「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000026167/index.m3u8?channel-id=ystenlive&Contentid=1000000004000026167&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="魅力潇湘" tvg-name="魅力潇湘" tvg-logo="https://epg.iill.top/logo/NewTV魅力潇湘.png" group-title="•NewTV「IPV6」",NewTV 魅力潇湘「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000001000006197/index.m3u8?channel-id=ystenlive&Contentid=1000000001000006197&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="东北热剧" tvg-name="东北热剧" tvg-logo="https://epg.iill.top/logo/NewTV东北热剧.png" group-title="•NewTV「IPV6」",NewTV 东北热剧「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000266013/index.m3u8?channel-id=ystenlive&Contentid=1000000005000266013&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="古装剧场" tvg-name="古装剧场" tvg-logo="https://epg.iill.top/logo/NewTV古装剧场.png" group-title="•NewTV「IPV6」",NewTV 古装剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000024/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000024&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="欢乐剧场" tvg-name="欢乐剧场" tvg-logo="https://epg.iill.top/logo/NewTV欢乐剧场.png" group-title="•NewTV「IPV6」",NewTV 欢乐剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000266012/index.m3u8?channel-id=ystenlive&Contentid=1000000005000266012&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="怡伴健康" tvg-name="怡伴健康" tvg-logo="https://epg.iill.top/logo/NewTV怡伴健康.png" group-title="•NewTV「IPV6」",NewTV 怡伴健康「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000005000266011/index.m3u8?channel-id=ystenlive&Contentid=1000000005000266011&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="潮妈辣婆" tvg-name="潮妈辣婆" tvg-logo="https://epg.iill.top/logo/NewTV潮妈辣婆.png" group-title="•NewTV「IPV6」",NewTV 潮妈辣婆「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000018/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000018&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="军旅剧场" tvg-name="军旅剧场" tvg-logo="https://epg.iill.top/logo/NewTV军旅剧场.png" group-title="•NewTV「IPV6」",NewTV 军旅剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000014/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000014&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="军事评论" tvg-name="军事评论" tvg-logo="https://epg.iill.top/logo/NewTV军事评论.png" group-title="•NewTV「IPV6」",NewTV 军事评论「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000022/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000022&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="中国功夫" tvg-name="中国功夫" tvg-logo="https://epg.iill.top/logo/NewTV中国功夫.png" group-title="•NewTV「IPV6」",NewTV 中国功夫「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000009/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000009&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="农业致富" tvg-name="农业致富" tvg-logo="https://epg.iill.top/logo/NewTV农业致富.png" group-title="•NewTV「IPV6」",NewTV 农业致富「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6193684637634073625/index.m3u8?channel-id=ystenlive&Contentid=6193684637634073625&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="动作电影" tvg-name="动作电影" tvg-logo="https://epg.iill.top/logo/NewTV动作电影.png" group-title="•NewTV「IPV6」",NewTV 动作电影「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000018653/index.m3u8?channel-id=ystenlive&Contentid=1000000004000018653&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="家庭剧场" tvg-name="家庭剧场" tvg-logo="https://epg.iill.top/logo/NewTV家庭剧场.png" group-title="•NewTV「IPV6」",NewTV 家庭剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000008284/index.m3u8?channel-id=ystenlive&Contentid=1000000004000008284&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="惊悚悬疑" tvg-name="惊悚悬疑" tvg-logo="https://epg.iill.top/logo/NewTV惊悚悬疑.png" group-title="•NewTV「IPV6」",NewTV 惊悚悬疑「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000024282/index.m3u8?channel-id=ystenlive&Contentid=1000000004000024282&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="炫舞未来" tvg-name="炫舞未来" tvg-logo="https://epg.iill.top/logo/NewTV炫舞未来.png" group-title="•NewTV「IPV6」",NewTV 炫舞未来「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000001000000515/index.m3u8?channel-id=ystenlive&Contentid=1000000001000000515&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="精品萌宠" tvg-name="精品萌宠" tvg-logo="https://epg.iill.top/logo/NewTV精品萌宠.png" group-title="•NewTV「IPV6」",NewTV 精品萌宠「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000006000032328/index.m3u8?channel-id=ystenlive&Contentid=1000000006000032328&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="精品体育" tvg-name="精品体育" tvg-logo="https://epg.iill.top/logo/NewTV精品体育.png" group-title="•NewTV「IPV6」",NewTV 精品体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000014634/index.m3u8?channel-id=ystenlive&Contentid=1000000004000014634&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="精品大剧" tvg-name="精品大剧" tvg-logo="https://epg.iill.top/logo/NewTV精品大剧.png" group-title="•NewTV「IPV6」",NewTV 精品大剧「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000013968/index.m3u8?channel-id=ystenlive&Contentid=1000000004000013968&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="精品记录" tvg-name="精品记录" tvg-logo="https://epg.iill.top/logo/NewTV精品记录.png" group-title="•NewTV「IPV6」",NewTV 精品记录「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000013730/index.m3u8?channel-id=ystenlive&Contentid=1000000004000013730&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="武搏世界" tvg-name="武搏世界" tvg-logo="https://epg.iill.top/logo/NewTV武搏世界.png" group-title="•NewTV「IPV6」",NewTV 武搏世界「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000007/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000007&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="明星大片" tvg-name="明星大片" tvg-logo="https://epg.iill.top/logo/NewTV明星大片.png" group-title="•NewTV「IPV6」",NewTV 明星大片「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000004000019008/index.m3u8?channel-id=ystenlive&Contentid=1000000004000019008&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="哒啵电竞" tvg-name="哒啵电竞" tvg-logo="https://epg.iill.top/logo/NewTV哒啵电竞.png" group-title="•NewTV「IPV4」",NewTV 哒啵电竞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000006000032327&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="哒啵赛事" tvg-name="哒啵赛事" tvg-logo="https://epg.iill.top/logo/NewTV哒啵赛事.png" group-title="•NewTV「IPV4」",NewTV 哒啵赛事「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000001000003775&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="黑莓动画" tvg-name="黑莓动画" tvg-logo="https://epg.iill.top/logo/NewTV黑莓动画.png" group-title="•NewTV「IPV4」",NewTV 黑莓动画「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000021734&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="黑莓电影" tvg-name="黑莓电影" tvg-logo="https://epg.iill.top/logo/NewTV黑莓电影.png" group-title="•NewTV「IPV4」",NewTV 黑莓电影「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000019624&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="超级电影" tvg-name="超级电影" tvg-logo="https://epg.iill.top/logo/NewTV超级电影.png" group-title="•NewTV「IPV4」",NewTV 超级电影「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000003000012426&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="超级电视剧" tvg-name="超级电视剧" tvg-logo="https://epg.iill.top/logo/NewTV超级电视剧.png" group-title="•NewTV「IPV4」",NewTV 超级电视剧「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000024993&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="超级体育" tvg-name="超级体育" tvg-logo="https://epg.iill.top/logo/NewTV超级体育.png" group-title="•NewTV「IPV4」",NewTV 超级体育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000001000009601&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="超级综艺" tvg-name="超级综艺" tvg-logo="https://epg.iill.top/logo/NewTV超级综艺.png" group-title="•NewTV「IPV4」",NewTV 超级综艺「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000023658&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="金牌综艺" tvg-name="金牌综艺" tvg-logo="https://epg.iill.top/logo/NewTV金牌综艺.png" group-title="•NewTV「IPV4」",NewTV 金牌综艺「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000026167&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="魅力潇湘" tvg-name="魅力潇湘" tvg-logo="https://epg.iill.top/logo/NewTV魅力潇湘.png" group-title="•NewTV「IPV4」",NewTV 魅力潇湘「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000001000006197&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="东北热剧" tvg-name="东北热剧" tvg-logo="https://epg.iill.top/logo/NewTV东北热剧.png" group-title="•NewTV「IPV4」",NewTV 东北热剧「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000266013&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="古装剧场" tvg-name="古装剧场" tvg-logo="https://epg.iill.top/logo/NewTV古装剧场.png" group-title="•NewTV「IPV4」",NewTV 古装剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000024&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="欢乐剧场" tvg-name="欢乐剧场" tvg-logo="https://epg.iill.top/logo/NewTV欢乐剧场.png" group-title="•NewTV「IPV4」",NewTV 欢乐剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000266012&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="怡伴健康" tvg-name="怡伴健康" tvg-logo="https://epg.iill.top/logo/NewTV怡伴健康.png" group-title="•NewTV「IPV4」",NewTV 怡伴健康「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000005000266011&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="潮妈辣婆" tvg-name="潮妈辣婆" tvg-logo="https://epg.iill.top/logo/NewTV潮妈辣婆.png" group-title="•NewTV「IPV4」",NewTV 潮妈辣婆「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000018&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="军旅剧场" tvg-name="军旅剧场" tvg-logo="https://epg.iill.top/logo/NewTV军旅剧场.png" group-title="•NewTV「IPV4」",NewTV 军旅剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000014&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="军事评论" tvg-name="军事评论" tvg-logo="https://epg.iill.top/logo/NewTV军事评论.png" group-title="•NewTV「IPV4」",NewTV 军事评论「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000022&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="中国功夫" tvg-name="中国功夫" tvg-logo="https://epg.iill.top/logo/NewTV中国功夫.png" group-title="•NewTV「IPV4」",NewTV 中国功夫「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000009&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="农业致富" tvg-name="农业致富" tvg-logo="https://epg.iill.top/logo/NewTV农业致富.png" group-title="•NewTV「IPV4」",NewTV 农业致富「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=6193684637634073625&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="动作电影" tvg-name="动作电影" tvg-logo="https://epg.iill.top/logo/NewTV动作电影.png" group-title="•NewTV「IPV4」",NewTV 动作电影「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000018653&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="家庭剧场" tvg-name="家庭剧场" tvg-logo="https://epg.iill.top/logo/NewTV家庭剧场.png" group-title="•NewTV「IPV4」",NewTV 家庭剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000008284&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="惊悚悬疑" tvg-name="惊悚悬疑" tvg-logo="https://epg.iill.top/logo/NewTV惊悚悬疑.png" group-title="•NewTV「IPV4」",NewTV 惊悚悬疑「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000024282&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="炫舞未来" tvg-name="炫舞未来" tvg-logo="https://epg.iill.top/logo/NewTV炫舞未来.png" group-title="•NewTV「IPV4」",NewTV 炫舞未来「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000001000000515&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="精品萌宠" tvg-name="精品萌宠" tvg-logo="https://epg.iill.top/logo/NewTV精品萌宠.png" group-title="•NewTV「IPV4」",NewTV 精品萌宠「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000006000032328&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="精品体育" tvg-name="精品体育" tvg-logo="https://epg.iill.top/logo/NewTV精品体育.png" group-title="•NewTV「IPV4」",NewTV 精品体育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000014634&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="精品大剧" tvg-name="精品大剧" tvg-logo="https://epg.iill.top/logo/NewTV精品大剧.png" group-title="•NewTV「IPV4」",NewTV 精品大剧「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000013968&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="精品记录" tvg-name="精品记录" tvg-logo="https://epg.iill.top/logo/NewTV精品记录.png" group-title="•NewTV「IPV4」",NewTV 精品记录「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000013730&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="武搏世界" tvg-name="武搏世界" tvg-logo="https://epg.iill.top/logo/NewTV武搏世界.png" group-title="•NewTV「IPV4」",NewTV 武搏世界「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000007&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="明星大片" tvg-name="明星大片" tvg-logo="https://epg.iill.top/logo/NewTV明星大片.png" group-title="•NewTV「IPV4」",NewTV 明星大片「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000004000019008&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="中国天气" tvg-name="中国天气" tvg-logo="https://epg.iill.top/logo/中国天气.png" group-title="•数字「IPV6」",中国天气「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000005000031974/index.m3u8?channel-id=bestzb&Contentid=5000000005000031974&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="CHC家庭影院" tvg-name="CHC家庭影院" tvg-logo="https://epg.iill.top/logo/家庭影院.png" group-title="•数字「IPV6」",CHC 家庭影院「IPV6」 -http://[2409:8087:7008:20::8]/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/1.m3u8 -#EXTINF:-1 tvg-id="CHC动作电影" tvg-name="CHC动作电影" tvg-logo="https://epg.iill.top/logo/动作电影.png" group-title="•数字「IPV6」",CHC 动作电影「IPV6」 -http://[2409:8087:7008:20::2]/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/1.m3u8 -#EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" tvg-logo="https://epg.iill.top/logo/影迷电影.png" group-title="•数字「IPV6」",CHC 影迷电影「IPV6」 -http://[2409:8087:7008:20::8]/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/1.m3u8 -#EXTINF:-1 tvg-id="求索纪录" tvg-name="求索纪录" tvg-logo="https://epg.iill.top/logo/求索纪录.png" group-title="•数字「IPV6」",求索纪录「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000002000032052/index.m3u8?channel-id=wasusyt&Contentid=6000000002000032052&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="求索生活" tvg-name="求索生活" tvg-logo="https://epg.iill.top/logo/求索生活.png" group-title="•数字「IPV6」",求索生活「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000002000003382/index.m3u8?channel-id=wasusyt&Contentid=6000000002000003382&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="求索动物" tvg-name="求索动物" tvg-logo="https://epg.iill.top/logo/求索动物.png" group-title="•数字「IPV6」",求索动物「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000002000010046/index.m3u8?channel-id=wasusyt&Contentid=6000000002000010046&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="求索科学" tvg-name="求索科学" tvg-logo="https://epg.iill.top/logo/求索科学.png" group-title="•数字「IPV6」",求索科学「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000002000032344/index.m3u8?channel-id=wasusyt&Contentid=6000000002000032344&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" tvg-logo="https://epg.iill.top/logo/五星体育.png" group-title="•数字「IPV6」",SiTV 五星体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000010000017540/index.m3u8?channel-id=bestzb&Contentid=5000000010000017540&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="劲爆体育" tvg-name="劲爆体育" tvg-logo="https://epg.iill.top/logo/劲爆体育.png" group-title="•数字「IPV6」",SiTV 劲爆体育「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000002000029972/index.m3u8?channel-id=bestzb&Contentid=5000000002000029972&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="魅力足球" tvg-name="魅力足球" tvg-logo="https://epg.iill.top/logo/魅力足球.png" group-title="•数字「IPV6」",SiTV 魅力足球「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031207/index.m3u8?channel-id=bestzb&Contentid=5000000011000031207&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="欢笑剧场" tvg-name="欢笑剧场" tvg-logo="https://epg.iill.top/logo/欢笑剧场.png" group-title="•数字「IPV6」",SiTV 欢笑剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000002000009455/index.m3u8?channel-id=bestzb&Contentid=5000000002000009455&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" tvg-logo="https://epg.iill.top/logo/法治天地.png" group-title="•数字「IPV6」",SiTV 法治天地「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/9001547084732463424/index.m3u8?channel-id=bestzb&Contentid=9001547084732463424&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="乐游" tvg-name="乐游" tvg-logo="https://epg.iill.top/logo/乐游.png" group-title="•数字「IPV6」",SiTV 乐游「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031112/index.m3u8?channel-id=bestzb&Contentid=5000000011000031112&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="动漫秀场" tvg-name="动漫秀场" tvg-logo="https://epg.iill.top/logo/动漫秀场.png" group-title="•数字「IPV6」",SiTV 动漫秀场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031113/index.m3u8?channel-id=bestzb&Contentid=5000000011000031113&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="游戏风云" tvg-name="游戏风云" tvg-logo="https://epg.iill.top/logo/游戏风云.png" group-title="•数字「IPV6」",SiTV 游戏风云「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031114/index.m3u8?channel-id=bestzb&Contentid=5000000011000031114&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="生活时尚" tvg-name="生活时尚" tvg-logo="https://epg.iill.top/logo/生活时尚.png" group-title="•数字「IPV6」",SiTV 生活时尚「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000002000019634/index.m3u8?channel-id=bestzb&Contentid=5000000002000019634&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="都市剧场" tvg-name="都市剧场" tvg-logo="https://epg.iill.top/logo/都市剧场.png" group-title="•数字「IPV6」",SiTV 都市剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031111/index.m3u8?channel-id=bestzb&Contentid=5000000011000031111&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="金色学堂" tvg-name="金色学堂" tvg-logo="https://epg.iill.top/logo/金色学堂.png" group-title="•数字「IPV6」",SiTV 金色学堂「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000010000026105/index.m3u8?channel-id=bestzb&Contentid=5000000010000026105&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" tvg-logo="https://epg.iill.top/logo/第一财经.png" group-title="•数字「IPV6」",SiTV 第一财经「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000010000027146/index.m3u8?channel-id=bestzb&Contentid=5000000010000027146&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" tvg-logo="https://epg.iill.top/logo/东方财经.png" group-title="•数字「IPV6」",SiTV 东方财经「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000007000010003/index.m3u8?channel-id=bestzb&Contentid=5000000007000010003&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" tvg-logo="https://epg.iill.top/logo/东方影视.png" group-title="•数字「IPV6」",SiTV 东方影视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000010000032212/index.m3u8?channel-id=bestzb&Contentid=5000000010000032212&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" tvg-logo="https://epg.iill.top/logo/上海都市.png" group-title="•数字「IPV6」",SiTV 上海都市「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000010000018926/index.m3u8?channel-id=bestzb&Contentid=5000000010000018926&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="上海新闻综合" tvg-name="上海新闻综合" tvg-logo="https://epg.iill.top/logo/上海新闻.png" group-title="•数字「IPV6」",SiTV 上海新闻「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031110/index.m3u8?channel-id=bestzb&Contentid=5000000011000031110&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="北京纪实科教" tvg-name="北京纪实科教" tvg-logo="https://epg.iill.top/logo/纪实科教.png" group-title="•数字「IPV6」",纪实科教「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/1000000001000001910/index.m3u8?channel-id=ystenlive&Contentid=1000000001000001910&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" tvg-logo="https://epg.iill.top/logo/广东珠江.png" group-title="•数字「IPV6」",广东珠江「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/2000000003000000033/index.m3u8?channel-id=hnbblive&Contentid=2000000003000000033&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="精彩影视" tvg-name="精彩影视" tvg-logo="https://epg.iill.top/logo/精彩影视.png" group-title="•数字「IPV6」",精彩影视「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000006000320630/index.m3u8?channel-id=wasusyt&Contentid=6000000006000320630&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" tvg-logo="https://epg.iill.top/logo/卡酷少儿.png" group-title="•数字「IPV6」",卡酷少儿「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000265008/index.m3u8?channel-id=bestzb&Contentid=5000000011000265008&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" tvg-logo="https://epg.iill.top/logo/哈哈炫动.png" group-title="•数字「IPV6」",哈哈炫动「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031123/index.m3u8?channel-id=bestzb&Contentid=5000000011000031123&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" tvg-logo="https://epg.iill.top/logo/金鹰卡通.png" group-title="•数字「IPV6」",金鹰卡通「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" tvg-logo="https://epg.iill.top/logo/金鹰纪实.png" group-title="•数字「IPV6」",金鹰纪实「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031203/index.m3u8?channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="茶频道" tvg-name="茶频道" tvg-logo="https://epg.iill.top/logo/茶频道.png" group-title="•数字「IPV6」",茶频道「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031209/index.m3u8?channel-id=bestzb&Contentid=5000000011000031209&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" tvg-logo="https://epg.iill.top/logo/快乐垂钓.png" group-title="•数字「IPV6」",快乐垂钓「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000031206/index.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="健康养生" tvg-name="健康养生" tvg-logo="https://epg.iill.top/logo/健康养生.png" group-title="•数字「IPV6」", 健康养生「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288006/index.m3u8?channel-id=bestzb&Contentid=5000000011000288006&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",星光影院「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288013/index.m3u8?channel-id=bestzb&Contentid=5000000011000288013&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",谍战剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288004/index.m3u8?channel-id=bestzb&Contentid=5000000011000288004&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",华语影院「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288005/index.m3u8?channel-id=bestzb&Contentid=5000000011000288005&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",全球大片「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288009/index.m3u8?channel-id=bestzb&Contentid=5000000011000288009&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",热门剧场「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288010/index.m3u8?channel-id=bestzb&Contentid=5000000011000288010&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",宝宝动画「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288002/index.m3u8?channel-id=bestzb&Contentid=5000000011000288002&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",精品综合「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5595720619887440144/index.m3u8?channel-id=ystenlive&Contentid=5595720619887440144&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",电竞天堂「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288003/index.m3u8?channel-id=bestzb&Contentid=5000000011000288003&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",热门综艺「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288011/index.m3u8?channel-id=bestzb&Contentid=5000000011000288011&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",戏曲精选「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288012/index.m3u8?channel-id=bestzb&Contentid=5000000011000288012&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",热播精选「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/7681593242002292003/index.m3u8?channel-id=ystenlive&Contentid=7681593242002292003&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",看天下精选「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288007/index.m3u8?channel-id=bestzb&Contentid=5000000011000288007&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",亚洲影院「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5841816227539527643/index.m3u8?channel-id=wasusyt&Contentid=5841816227539527643&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",欧美影院「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/7185203501769528108/index.m3u8?channel-id=wasusyt&Contentid=7185203501769528108&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",探索纪录「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5359008697329269813/index.m3u8?channel-id=wasusyt&Contentid=5359008697329269813&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",少儿动漫「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/8145334647720731271/index.m3u8?channel-id=wasusyt&Contentid=8145334647720731271&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",青春动漫「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288008/index.m3u8?channel-id=bestzb&Contentid=5000000011000288008&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",百变课堂「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5000000011000288001/index.m3u8?channel-id=bestzb&Contentid=5000000011000288001&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",电子竞技「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000003000011654/index.m3u8?channel-id=wasusyt&Contentid=6000000003000011654&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",风尚音乐「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/5529729098703832176/index.m3u8?channel-id=wasusyt&Contentid=5529729098703832176&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",高清娱乐「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000003000001569/index.m3u8?channel-id=wasusyt&Contentid=6000000003000001569&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",漫游世界「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/6000000003000028434/index.m3u8?channel-id=wasusyt&Contentid=6000000003000028434&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV6」",英雄联盟音乐节「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/8978605063318475207/index.m3u8?channel-id=ystenlive&Contentid=8978605063318475207&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="中国天气" tvg-name="中国天气" tvg-logo="https://epg.iill.top/logo/中国天气.png" group-title="•数字「IPV4」",中国天气「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000005000031974&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="求索纪录" tvg-name="求索纪录" tvg-logo="https://epg.iill.top/logo/求索纪录.png" group-title="•数字「IPV4」",求索纪录「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000002000032052&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="求索生活" tvg-name="求索生活" tvg-logo="https://epg.iill.top/logo/求索生活.png" group-title="•数字「IPV4」",求索生活「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000002000003382&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="求索动物" tvg-name="求索动物" tvg-logo="https://epg.iill.top/logo/求索动物.png" group-title="•数字「IPV4」",求索动物「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000002000010046&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="求索科学" tvg-name="求索科学" tvg-logo="https://epg.iill.top/logo/求索科学.png" group-title="•数字「IPV4」",求索科学「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000002000032344&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" tvg-logo="https://epg.iill.top/logo/五星体育.png" group-title="•数字「IPV4」",SiTV 五星体育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000010000017540&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="劲爆体育" tvg-name="劲爆体育" tvg-logo="https://epg.iill.top/logo/劲爆体育.png" group-title="•数字「IPV4」",SiTV 劲爆体育「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000002000029972&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="魅力足球" tvg-name="魅力足球" tvg-logo="https://epg.iill.top/logo/魅力足球.png" group-title="•数字「IPV4」",SiTV 魅力足球「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031207&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="欢笑剧场" tvg-name="欢笑剧场" tvg-logo="https://epg.iill.top/logo/欢笑剧场.png" group-title="•数字「IPV4」",SiTV 欢笑剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000002000009455&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" tvg-logo="https://epg.iill.top/logo/法治天地.png" group-title="•数字「IPV4」",SiTV 法治天地「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=9001547084732463424&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="乐游" tvg-name="乐游" tvg-logo="https://epg.iill.top/logo/乐游.png" group-title="•数字「IPV4」",SiTV 乐游「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031112&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="动漫秀场" tvg-name="动漫秀场" tvg-logo="https://epg.iill.top/logo/动漫秀场.png" group-title="•数字「IPV4」",SiTV 动漫秀场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031113&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="游戏风云" tvg-name="游戏风云" tvg-logo="https://epg.iill.top/logo/游戏风云.png" group-title="•数字「IPV4」",SiTV 游戏风云「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031114&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="生活时尚" tvg-name="生活时尚" tvg-logo="https://epg.iill.top/logo/生活时尚.png" group-title="•数字「IPV4」",SiTV 生活时尚「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000002000019634&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="都市剧场" tvg-name="都市剧场" tvg-logo="https://epg.iill.top/logo/都市剧场.png" group-title="•数字「IPV4」",SiTV 都市剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031111&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="金色学堂" tvg-name="金色学堂" tvg-logo="https://epg.iill.top/logo/金色学堂.png" group-title="•数字「IPV4」",SiTV 金色学堂「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000010000026105&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" tvg-logo="https://epg.iill.top/logo/第一财经.png" group-title="•数字「IPV4」",SiTV 第一财经「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000010000027146&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" tvg-logo="https://epg.iill.top/logo/东方财经.png" group-title="•数字「IPV4」",SiTV 东方财经「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000007000010003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" tvg-logo="https://epg.iill.top/logo/东方影视.png" group-title="•数字「IPV4」",SiTV 东方影视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000010000032212&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" tvg-logo="https://epg.iill.top/logo/上海都市.png" group-title="•数字「IPV4」",SiTV 上海都市「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000010000018926&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="上海新闻综合" tvg-name="上海新闻综合" tvg-logo="https://epg.iill.top/logo/上海新闻.png" group-title="•数字「IPV4」",SiTV 上海新闻「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031110&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="广东珠江" tvg-name="广东珠江" tvg-logo="https://epg.iill.top/logo/广东珠江.png" group-title="•数字「IPV4」",广东珠江「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=hnbblive&Contentid=2000000003000000033&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="北京纪实科教" tvg-name="北京纪实科教" tvg-logo="https://epg.iill.top/logo/纪实科教.png" group-title="•数字「IPV4」",纪实科教「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=1000000001000001910&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="精彩影视" tvg-name="精彩影视" tvg-logo="https://epg.iill.top/logo/精彩影视.png" group-title="•数字「IPV4」",精彩影视「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000006000320630&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" tvg-logo="https://epg.iill.top/logo/卡酷少儿.png" group-title="•数字「IPV4」",卡酷少儿「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000265008&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" tvg-logo="https://epg.iill.top/logo/哈哈炫动.png" group-title="•数字「IPV4」",哈哈炫动「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031123&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" tvg-logo="https://epg.iill.top/logo/金鹰卡通.png" group-title="•数字「IPV4」",金鹰卡通「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" tvg-logo="https://epg.iill.top/logo/金鹰纪实.png" group-title="•数字「IPV4」",金鹰纪实「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="茶频道" tvg-name="茶频道" tvg-logo="https://epg.iill.top/logo/茶频道.png" group-title="•数字「IPV4」",茶频道「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031209&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" tvg-logo="https://epg.iill.top/logo/快乐垂钓.png" group-title="•数字「IPV4」",快乐垂钓「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="健康养生" tvg-name="健康养生" tvg-logo="https://epg.iill.top/logo/健康养生.png" group-title="•数字「IPV4」", 健康养生「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288006&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",星光影院「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288013&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",谍战剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288004&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",华语影院「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288005&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",全球大片「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288009&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",热门剧场「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288010&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",宝宝动画「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288002&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",精品综合「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=5595720619887440144&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",电竞天堂「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",热门综艺「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288011&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",戏曲精选「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288012&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",热播精选「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=7681593242002292003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",看天下精选「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288007&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",亚洲影院「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=5841816227539527643&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",欧美影院「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=7185203501769528108&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",探索纪录「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=5359008697329269813&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",少儿动漫「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=8145334647720731271&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",青春动漫「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288008&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",百变课堂「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=bestzb&Contentid=5000000011000288001&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",电子竞技「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000003000011654&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",风尚音乐「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=5529729098703832176&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",高清娱乐「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000003000001569&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",漫游世界「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=wasusyt&Contentid=6000000003000028434&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-id="YanG-1989" tvg-name="YanG-1989" tvg-logo="https://epg.iill.top/logo/百事通.png" group-title="•数字「IPV4」",英雄联盟音乐节「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=ystenlive&Contentid=8978605063318475207&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",晴彩广场舞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011523/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011523&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",晴彩少年「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011525/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011525&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",晴彩竞技「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011528/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011528&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",晴彩篮球「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011529/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011529&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播4K「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000005180/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000005180&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000005308/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000005308&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000005969/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000005969&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000007218/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000007218&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟜「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000008001/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000008001&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟝「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000008176/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000008176&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000008379/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000008379&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟟「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000010129/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000010129&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟠「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000010948/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000010948&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟡「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000028638/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000028638&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟘「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000001000031494/index.m3u8?channel-id=FifastbLive&Contentid=3000000001000031494&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟙「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000000097/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000000097&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟚「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000002019/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000002019&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟛「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000002809/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000002809&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟜「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000003915/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000003915&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟝「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000004193/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000004193&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000005837/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000005837&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟟「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000006077/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000006077&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟠「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000006658/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000006658&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟙𝟡「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000009788/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000009788&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟘「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000010833/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000010833&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟙「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000011297/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000011297&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟚「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000011518/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟛「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000012558/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000012558&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟜「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000012616/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000012616&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟝「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000015470/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000015470&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000015560/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000015560&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟟「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000017678/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000017678&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟠「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000019839/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000019839&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟚𝟡「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000021904/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000021904&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟘「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000023434/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000023434&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟙「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000025380/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000025380&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟚「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000027691/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000027691&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟛「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000010000031669/index.m3u8?channel-id=FifastbLive&Contentid=3000000010000031669&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟜「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011518/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011518&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟝「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011519/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011519&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟞「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011520/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011520&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟟「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011521/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011521&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV6」",咪咕直播 𝟛𝟠「IPV6」 -http://[2409:8087:5e00:24::2a]:6610/000000001000/1/3000000020000011522/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011522&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",晴彩广场舞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011523&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",晴彩少年「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011525&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",晴彩竞技「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011528&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",晴彩篮球「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011529&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播4K「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000005180&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000005308&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000005969&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000007218&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟜「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000008001&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟝「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000008176&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000008379&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟟「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000010129&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟠「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000010948&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟡「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000028638&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟘「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000001000031494&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟙「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000000097&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟚「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000002019&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟛「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000002809&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟜「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000003915&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟝「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000004193&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000005837&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟟「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000006077&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟠「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000006658&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟙𝟡「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000009788&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟘「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000010833&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟙「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000011297&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟚「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟛「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000012558&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟜「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000012616&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟝「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000015470&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000015560&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟟「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000017678&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟠「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000019839&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟚𝟡「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000021904&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟘「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000023434&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟙「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000025380&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟚「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000027691&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟛「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000010000031669&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟜「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011518&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟝「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011519&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟞「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011520&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟟「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011521&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「IPV4」",咪咕直播 𝟛𝟠「IPV4」 +https://itv.iill.top/itv/PLTV/channel-id=FifastbLive&Contentid=3000000020000011522&livemode=1&stbId=YanG-1989 #INSERT_HERE -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 森林狼vs奇才 邢晨 -https://tv.iill.top/NBA/ZkR9p7 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 森林狼vs奇才 英文原声 -https://tv.iill.top/NBA/mdC6rt -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 活塞vs尼克斯 刘芳宇 -https://tv.iill.top/NBA/l6VYiI -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 活塞vs尼克斯 英文原声 -https://tv.iill.top/NBA/THxLlZ -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 勇士vs猛龙 孙博 闫宇峰 -https://tv.iill.top/NBA/jsC6Fd -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 勇士vs猛龙 拜月宁 -https://tv.iill.top/NBA/ZaNuxp -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 勇士vs猛龙 英文原声 -https://tv.iill.top/NBA/0mloEZ -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 灰熊vs火箭 连睿 周鹏 -https://tv.iill.top/NBA/MJo73g -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 灰熊vs火箭 英文原声 -https://tv.iill.top/NBA/ufyxlv -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:15 常规赛 热火vs快船 姜帆 苏群 裴优 -https://tv.iill.top/NBA/xQ514P -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:25 常规赛 热火vs快船 英文原声 -https://tv.iill.top/NBA/qDo55m -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:15 常规赛 马刺vs湖人 李天宇 陈正昊 魏欣怡 -https://tv.iill.top/NBA/DlnrEX -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:15 常规赛 马刺vs湖人 莫俊祺 -https://tv.iill.top/NBA/Bkz5rx -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:25 常规赛 马刺vs湖人 英文原声 -https://tv.iill.top/NBA/z3r8G6 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」11:15 常规赛 马刺vs湖人 洪荒 -https://tv.iill.top/NBA/lV68Ej -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「足总杯」03:20 第三轮比赛 米尔沃尔 vs 达根汉姆 周楚雄 -https://tv.iill.top/FB/HtUMPr -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「意甲」03:35 联赛 蒙扎 vs 佛罗伦萨 谭逸雄 -https://tv.iill.top/FB/6dW7Uj -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「西甲」03:50 联赛 皇家社会 vs 比利亚雷亚尔 兰子非 -https://tv.iill.top/FB/jdSzZs -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「斯诺克」03:00 2025斯诺克大师赛第一轮:马克·塞尔比VS阿里·卡特 马克·塞尔比VS阿里·卡特 1号台 -https://tv.iill.top/Migu/KlJ2dF -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 混双德比!向鹏/蒯曼迎战黄石组合 混双德比!向鹏/蒯曼迎战黄石组合 周冠达 肖扬 -https://tv.iill.top/Migu/cKcwpk -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 混双德比!向鹏/蒯曼迎战黄石组合 混双德比!向鹏/蒯曼迎战黄石组合 1号桌 -https://tv.iill.top/Migu/cEvVYR -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 混双德比!向鹏/蒯曼迎战黄石组合 混双德比!向鹏/蒯曼迎战黄石组合 2号桌 -https://tv.iill.top/Migu/ksK8o6 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 混双德比!向鹏/蒯曼迎战黄石组合 混双德比!向鹏/蒯曼迎战黄石组合 3号桌 -https://tv.iill.top/Migu/ZepzGl -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 混双德比!向鹏/蒯曼迎战黄石组合 混双德比!向鹏/蒯曼迎战黄石组合 4号桌 -https://tv.iill.top/Migu/X7beeA -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「LPL」16:30 RNG vs FPX RNG vs FPX 官方解说 -https://tv.iill.top/Migu/AwBneY -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 辽宁本钢vs上海久事 连睿 周鹏 丁伟 -https://tv.iill.top/Migu/r9dHvJ -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 辽宁本钢vs上海久事 星际广场 -https://tv.iill.top/Migu/f6RLAM -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 辽宁本钢vs上海久事 哈秋 -https://tv.iill.top/Migu/gRWmLS -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 辽宁本钢vs上海久事 陈渤胄 -https://tv.iill.top/Migu/XUVelU -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 辽宁本钢vs上海久事 现场原声 -https://tv.iill.top/Migu/aMqhki -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 辽宁本钢vs上海久事 明星机位1 -https://tv.iill.top/Migu/huS0BV -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 辽宁本钢vs上海久事 明星机位2 -https://tv.iill.top/Migu/3V6p94 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 江苏肯帝亚vs新疆伊力特 蔡凯臣 -https://tv.iill.top/Migu/omOLEL -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 江苏肯帝亚vs新疆伊力特 田宏强 -https://tv.iill.top/Migu/b40csV -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 江苏肯帝亚vs新疆伊力特 新疆主队 -https://tv.iill.top/Migu/ZUUtHP -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 江苏肯帝亚vs新疆伊力特 现场原声 -https://tv.iill.top/Migu/UhE5PQ -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「斯诺克」21:00 2025斯诺克大师赛第一轮:贾德·特鲁姆普VS巴里·霍金斯 贾德·特鲁姆普VS巴里·霍金斯 1号台 -https://tv.iill.top/Migu/0Iwntn -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 小马哥 周泽昊 -https://tv.iill.top/Migu/j31zF8 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 1号桌 -https://tv.iill.top/Migu/VgvhLC -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 2号桌 -https://tv.iill.top/Migu/CVU0cH -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 3号桌 -https://tv.iill.top/Migu/sDg2ir -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 4号桌 -https://tv.iill.top/Migu/3yQITQ -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 向鹏率先出战!徐瑛彬PK奥恰洛夫 向鹏率先出战!徐瑛彬PK奥恰洛夫 1号桌英文解说 -https://tv.iill.top/Migu/nq7lty +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 骑士VS步行者 姜帆 贾磊 +https://tv.iill.top/NBA/0MuwhC +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 骑士VS步行者 英文原声 +https://tv.iill.top/NBA/nud0bj +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 雷霆VS76人 罗森 +https://tv.iill.top/NBA/shiUTr +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」07:55 常规赛 雷霆VS76人 英文原声 +https://tv.iill.top/NBA/P5q7tJ +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 太阳VS老鹰 王晓晨 孔德昕 +https://tv.iill.top/NBA/2Jxr83 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:25 常规赛 太阳VS老鹰 英文原声 +https://tv.iill.top/NBA/vS6z9N +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 鹈鹕VS公牛 吴博文 +https://tv.iill.top/NBA/MqPohB +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 鹈鹕VS公牛 英文原声 +https://tv.iill.top/NBA/QJSGvA +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 国王VS雄鹿 李天宇 +https://tv.iill.top/NBA/ZKLGLj +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」08:55 常规赛 国王VS雄鹿 英文原声 +https://tv.iill.top/NBA/oPT54K +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」10:15 常规赛 掘金VS独行侠 杨健 孙悦 秋童 +https://tv.iill.top/NBA/Ne2QFc +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」10:25 常规赛 掘金VS独行侠 英文原声 +https://tv.iill.top/NBA/fmqtSP +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」10:55 常规赛 篮网VS开拓者 王凯 +https://tv.iill.top/NBA/uHUaVw +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/NBA.png" group-title="•咪咕「NBA」", 「NBA」10:55 常规赛 篮网VS开拓者 英文原声 +https://tv.iill.top/NBA/FueWEs +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「意甲」01:15 联赛 科莫 vs AC米兰 石庆圣 李彦 +https://tv.iill.top/FB/hnYJCB +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「德甲」01:15 联赛 荷尔斯泰因基尔 vs 多特蒙德 沈云怡 秦游夏 +https://tv.iill.top/FB/3Aq6iD +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「英超」03:20 联赛 西汉姆联 vs 富勒姆 涂远 +https://tv.iill.top/FB/gr6IRc +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「英超」03:15 联赛 布伦特福德 vs 曼城 刘畅 颜强 +https://tv.iill.top/FB/aUKaYC +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「英超」03:15 联赛 切尔西 vs 伯恩茅斯 刘焕 贺宇 +https://tv.iill.top/FB/457EY2 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「德甲」03:20 联赛 沃尔夫斯堡 vs 门兴格拉德巴赫 周楚雄 +https://tv.iill.top/FB/FYyDzo +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「德甲」03:20 联赛 法兰克福 vs 弗赖堡 王子睿 +https://tv.iill.top/FB/C5Ampc +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「德甲」03:20 联赛 勒沃库森 vs 美因茨 鲁靖明 +https://tv.iill.top/FB/wrec0v +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「意甲」03:30 联赛 亚特兰大 vs 尤文图斯 吴桐 刘腾 +https://tv.iill.top/FB/qlRKxz +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「足总杯」03:35 第三轮比赛 莱顿东方 vs 德比郡 郭灿亮 +https://tv.iill.top/FB/ZgMLNk +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「足总杯」03:35 第三轮比赛 曼斯菲尔德 vs 维冈竞技 黄航 +https://tv.iill.top/FB/i9HAsq +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「足总杯」03:35 第三轮比赛 普雷斯顿 vs 查尔顿 乔迁 +https://tv.iill.top/FB/IDcVLz +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/足球.png" group-title="•咪咕「足球」", 「英超」03:45 联赛 诺丁汉森林 vs 利物浦 娄一晨 刘越 +https://tv.iill.top/FB/FKuUTU +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「斯诺克」03:00 2025斯诺克大师赛第一轮:马克·艾伦6-2斯佳辉 马克·艾伦VS斯佳辉 1号台 +https://tv.iill.top/Migu/JOxHY5 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 向鹏不敌小孩哥 蒯曼横扫徐孝元 向鹏不敌小孩哥 蒯曼横扫徐孝元 周冠达 杨硕 +https://tv.iill.top/Migu/9i7Hi9 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 向鹏不敌小孩哥 蒯曼横扫徐孝元 向鹏不敌小孩哥 蒯曼横扫徐孝元 1号桌 +https://tv.iill.top/Migu/HjJV3B +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 向鹏不敌小孩哥 蒯曼横扫徐孝元 向鹏不敌小孩哥 蒯曼横扫徐孝元 2号桌 +https://tv.iill.top/Migu/tLwHMu +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」15:00 向鹏不敌小孩哥 蒯曼横扫徐孝元 向鹏不敌小孩哥 蒯曼横扫徐孝元 3号桌 +https://tv.iill.top/Migu/ZJRoNY +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「LPL」16:30 WBG vs UP WBG vs UP 官方解说 +https://tv.iill.top/Migu/QpGdXx +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:25 常规赛A组 山东赤水河酒 VS 山西竹叶青酒 清流播出 +https://tv.iill.top/Migu/h1HmsJ +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:20 常规赛A组 东莞新彤盛 VS 四川蜀道远达 解说 +https://tv.iill.top/Migu/wB6Q4I +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:25 常规赛B组 江西赣星 VS 合肥文旅 清流播出 +https://tv.iill.top/Migu/HPUSie +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:25 常规赛B组 陕西天泽 VS 天津冠岚 清流播出 +https://tv.iill.top/Migu/L10XV9 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:25 常规赛B组 辽宁大连体产 VS 河南豫光金铅 清流播出 +https://tv.iill.top/Migu/hMbzcl +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:20 常规赛B组 武汉盛帆黄鹤 VS 黑龙江上东 解说 +https://tv.iill.top/Migu/kIeRJQ +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 宁波町渥vs浙江方兴渡 吴博文 +https://tv.iill.top/Migu/QLtvtr +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 宁波町渥vs浙江方兴渡 现场原声 +https://tv.iill.top/Migu/T4u5n5 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 青岛国信制药vs九台农商银行 寇逸豪 +https://tv.iill.top/Migu/mkQA59 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 青岛国信制药vs九台农商银行 现场原声 +https://tv.iill.top/Migu/wEEW0B +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」18:30 常规赛第31轮 北京北汽vs北京控股 杨健 张九龄 霍楠 +https://tv.iill.top/Migu/MlUBn7 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 北京北汽vs北京控股 谭成国 +https://tv.iill.top/Migu/WEXzN2 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 北京北汽vs北京控股 周赫 +https://tv.iill.top/Migu/F5uPEV +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 北京北汽vs北京控股 现场原声 +https://tv.iill.top/Migu/W7TUQI +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 深圳马可波罗vs南京头排苏酒 王冠证 +https://tv.iill.top/Migu/ArLIc5 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 深圳马可波罗vs南京头排苏酒 现场原声 +https://tv.iill.top/Migu/kZipV4 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:00 常规赛第31轮 山西汾酒vs天津先行者 张浩岳 +https://tv.iill.top/Migu/UplOfm +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 山西汾酒vs天津先行者 石楷文 +https://tv.iill.top/Migu/9Xjj3s +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 山西汾酒vs天津先行者 荣浩达 +https://tv.iill.top/Migu/7tW69r +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 山西汾酒vs天津先行者 现场原声 +https://tv.iill.top/Migu/QDI0pC +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:20 常规赛第31轮 山东高速vs浙江稠州金租 连睿 殳海 +https://tv.iill.top/Migu/28jfoP +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「CBA」19:25 常规赛第31轮 山东高速vs浙江稠州金租 现场原声 +https://tv.iill.top/Migu/NXl84a +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WCBA」19:50 常规赛A组 新疆天山 VS 浙江稠州银行 解说 +https://tv.iill.top/Migu/quvZ7g +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「斯诺克」21:00 2025斯诺克大师赛第一轮:凯伦·威尔逊VS张安达 凯伦·威尔逊VS张安达 1号台 +https://tv.iill.top/Migu/YO1z3M +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 陈垣宇迎战奥恰 黄友政vs高兹 陈垣宇迎战奥恰 黄友政vs高兹 小马哥 周泽昊 +https://tv.iill.top/Migu/Hb8uvu +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 陈垣宇迎战奥恰 黄友政vs高兹 陈垣宇迎战奥恰 黄友政vs高兹 1号桌 +https://tv.iill.top/Migu/JxredF +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 陈垣宇迎战奥恰 黄友政vs高兹 陈垣宇迎战奥恰 黄友政vs高兹 2号桌 +https://tv.iill.top/Migu/tLA75r +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/咪咕.png" group-title="•咪咕「体育」", 「WTT」21:30 陈垣宇迎战奥恰 黄友政vs高兹 陈垣宇迎战奥恰 黄友政vs高兹 1号桌英文解说 +https://tv.iill.top/Migu/iKuFNr #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" tvg-logo="https://epg.iill.top/logo/CCTV1.png" group-title="•咪咕「TV」",CCTV 1 综合 https://tv.iill.top/migu/cctv1 diff --git a/天微/lives/天微livev3.txt b/天微/lives/天微livev3.txt index 5fdbcaa..5c596ed 100644 --- a/天微/lives/天微livev3.txt +++ b/天微/lives/天微livev3.txt @@ -1,16 +1,16 @@ #EXTM3U x-tvg-url="https://raw.githubusercontent.com/fanmingming/live/main/e.xml" -#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="🕘️更新时间",2025-01-13 18:21:45 -http://z.b.bkpcp.top/m.php?id=cctv1 +#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="🕘️更新时间",2025-01-15 06:22:02 +http://112.46.85.60:8009/hls/501/index.m3u8 +#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 +http://112.46.85.60:8009/hls/501/index.m3u8 +#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 +http://221.224.4.170:1111/tsfile/live/0001_1.m3u8 #EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 http://z.b.bkpcp.top/m.php?id=cctv1 #EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 https://www.freetv.top/migu/608807420.m3u8?migutoken=5b04cf0d91179ab2d3d71703f0a8bc3d32dd02f7d8fb55ee70e05c216b8a9d1a73d911fbde798459fb66d94934157c996f8306c0dd37917775f2ed73dcc22cf84b25ca500bff5c636ff48d6344 #EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078203.m3u8 -#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 -http://183.94.1.118:8801/tsfile/live/0001_1.m3u8 -#EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 -http://112.46.85.60:8009/hls/501/index.m3u8 +http://101.66.199.54:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 http://[2409:8087:1a0a:df::4038]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221226559/index.m3u8 #EXTINF:-1 tvg-name="CCTV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV1.png" group-title="📺央视频道",CCTV-1 @@ -24,14 +24,14 @@ http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226733/index.m3u #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-2hd/2500.m3u8?innersid=18203640774999492907& #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 +http://112.46.85.60:8009/hls/502/index.m3u8 +#EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 +http://221.224.4.170:1111/tsfile/live/0002_1.m3u8 +#EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 http://z.b.bkpcp.top/m.php?id=cctv2 #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 https://www.freetv.top/migu/631780532.m3u8?migutoken=11ecfe0a296dcd532df72244565e20008b5a2e6936c05e73d9c90abe54b5bbffc942f2912e3fdd518714c4a7ad984beed028d07db3d49b8d1e21c54686ebfa8546f79a57d969866753cca722cc #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024075403.m3u8 -#EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 -http://183.94.1.118:8801/tsfile/live/0002_1.m3u8 -#EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 http://[2409:8087:5e01:34::21]:6610/ZTE_CMS/00000001000000060000000000000372/index.m3u8?IAS #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 http://[2409:8087:1a0a:df::4038]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225588/index.m3u8 @@ -42,7 +42,7 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/6000000001000014161/1.m3u8?chan #EXTINF:-1 tvg-name="CCTV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV2.png" group-title="📺央视频道",CCTV-2 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/8/3221225588/index.m3u8 #EXTINF:-1 tvg-name="CCTV3" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV3.png" group-title="📺央视频道",CCTV-3 -http://z.b.bkpcp.top/m.php?id=cctv3 +http://112.46.85.60:8009/hls/3/index.m3u8 #EXTINF:-1 tvg-name="CCTV3" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV3.png" group-title="📺央视频道",CCTV-3 http://39.134.136.161:6610/000000001000/1000000005000265003/index.m3u8?livemode=1&stbId=10&channel-id=ystenlive&Contentid=1000000005000265003 #EXTINF:-1 tvg-name="CCTV3" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV3.png" group-title="📺央视频道",CCTV-3 @@ -62,16 +62,16 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010212/index.m3u8 #EXTINF:-1 tvg-name="CCTV3" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV3.png" group-title="📺央视频道",CCTV-3 http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN638727c125355/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUSPTZ4CK5oLfjaEYe9dogNMUNNEYLCPUtKY62j1Wp5u04wipypKUQ1TTuR2lXvBl5YpHqBJmlA19x22TD9bUOjk #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 +http://112.46.85.60:8009/hls/4/index.m3u8 +#EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 +http://221.224.4.170:1111/tsfile/live/0004_1.m3u8 +#EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 http://z.b.bkpcp.top/m.php?id=cctv4 #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 http://z.b.bkpcp.top/m.php?id=cctv4o #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 https://www.freetv.top/migu/608807416.m3u8?migutoken=94d24df192f212e52d7c222dfab7df5ce4aad53db2766a6c4275a4c1e796cf13fb231906f792af9bc717ce1ccafa62165ebdc66b02fb0882cd5beac443921d36883a491d2b549a5509d63534e1 #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 -https://www.freetv.top/migu/608807419.m3u8?migutoken=77b074e1b49cf260629d9642f9505e978eaabf572bfa1abe5f2e3ef60f5e4929c900274758111d707a7cca2a7368eb2b1af1415da7e0b2dbfcbdbeb4cb8566210f2994ffde97ad1e11a037a174 -#EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 -https://www.freetv.top/migu/631780421.m3u8?migutoken=fefc6a44400a0dd448699ae0ce3d6e2c5a0f49b8d48adb36e747c4fbab039337eb3244f9951acbddaf26b7bf51597a7d1b43c8845e67fd5914ece875dcad325bb388200bc0f12fdff727d03e2d -#EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 http://[2409:8087:1a0a:df::4031]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226007/index.m3u8 #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226428/index.m3u8 @@ -82,15 +82,15 @@ http://[2409:8087:74d9:21::6]:80/270000001322/69900158041111100000002173/index.m #EXTINF:-1 tvg-name="CCTV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV4.png" group-title="📺央视频道",CCTV-4 http://[2409:8087:2001:20:2800:0:df6e:eb21]:80/PLTV/1/224/3221231032/1.m3u8 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 +http://112.46.85.60:8009/hls/503/index.m3u8 +#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 +http://221.224.4.170:1111/tsfile/live/0005_1.m3u8 +#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 http://z.b.bkpcp.top/m.php?id=cctv5 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 https://www.freetv.top/migu/641886683.m3u8?migutoken=3e5c01f93922de8d1c940fe15bb47349b27e8f7a2e624dde1a83dff3b2a80f58b7624151a3a4d00488edee34f202818557340903382fae02bb754084eb942bd50e59061df36fab62fb5b908903 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078403.m3u8 -#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 -http://183.94.1.118:8801/tsfile/live/0005_1.m3u8 -#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 -http://112.46.85.60:8009/hls/503/index.m3u8 +http://101.66.199.54:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 http://[2409:8087:5e01:34::21]:6610/ZTE_CMS/00000001000000060000000000000461/index.m3u8?key=tvbox6_com #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="📺央视频道",CCTV-5 @@ -106,9 +106,9 @@ http://z.b.bkpcp.top/m.php?id=cctv5p #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ https://www.freetv.top/migu/641886773.m3u8?migutoken=03a1b82e35e58cd89a95034ecb29e77e50493397000ec2b1e4d1ce59af01e6420d6dbc068c8230ec03be3a35a20eed8714e0959e3570a08713a7a2e8d86085eabf8f1aa85744c80c38343988b2 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078003.m3u8 +http://221.0.78.198:1681/hls/10217/index.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ -https://api.olelive.com/dis/live/CCTV5PHD/hls.m3u8 +http://60.208.61.2:352/tsfile/live/0016_1.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ http://58.221.214.82:9901/tsfile/live/0016_1.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ @@ -122,15 +122,15 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000018504/1.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="📺央视频道",CCTV-5+ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000316/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 +http://221.224.4.170:1111/tsfile/live/0006_1.m3u8 +#EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 http://z.b.bkpcp.top/m.php?id=cctv6 #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 https://www.freetv.top/migu/624878396.m3u8?migutoken=8e4f91b7950497f8570c74e50003b7fa23f6565c16a6b361ff855d3a969ddf7ea3826b04d20d76b6eeb472f0cb8b86284614a835429165709ec8c3055f8e9a7879e9594a4309b5d50f59f8a535 #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2022574303.m3u8 +http://101.66.199.54:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 -http://183.94.1.118:8801/tsfile/live/0006_1.m3u8 -#EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 -http://111.9.163.109:9901/tsfile/live/0006_1.m3u8 +http://113.140.86.162:8009/hls/6/index.m3u8 #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 http://[2409:8087:5e08:24::11]:6610/000000001000/1000000005000265006/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=3 #EXTINF:-1 tvg-name="CCTV6" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV6.png" group-title="📺央视频道",CCTV-6 @@ -144,14 +144,14 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000016466/1.m3u8 #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-7hd/2500.m3u8?innersid=12706415551557919057& #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 +http://112.46.85.60:8009/hls/504/index.m3u8 +#EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 +http://221.224.4.170:1111/tsfile/live/0007_1.m3u8 +#EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 http://z.b.bkpcp.top/m.php?id=cctv7 #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 https://www.freetv.top/migu/673168121.m3u8?migutoken=a878b713604abd82c57cce75de174e0284d3f101e21d0c3e362670e4b5a5e75d9b42846e5e0adf92c1ad15c63d60934f3e68c25f787bc0665d12acde75a6db4761278e79b762292ed5b5a2fae3 #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024072003.m3u8 -#EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 -http://183.94.1.118:8801/tsfile/live/0007_1.m3u8 -#EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000005000265007/ #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/8/3221225733/index.m3u8 @@ -162,15 +162,15 @@ http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/322 #EXTINF:-1 tvg-name="CCTV7" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV7.png" group-title="📺央视频道",CCTV-7 http://[2409:8087:5e01:34::21]:6610/ZTE_CMS/00000001000000060000000000000380/index.m3u8?IAS #EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 +http://112.46.85.60:8009/hls/8/index.m3u8 +#EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 +http://221.224.4.170:1111/tsfile/live/0008_1.m3u8 +#EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 http://z.b.bkpcp.top/m.php?id=cctv8 #EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 https://www.freetv.top/migu/624878356.m3u8?migutoken=170b73b07e0cf0d307afea3545da5b9609d7c15461a2f4ac0f43634101df9baf391a446b91e5f84446b6a3b0934bb4730e2f3c4a32a565f904f22c8ff745a094d45dfd49c54f31b0b78156a080 #EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078503.m3u8 -#EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 -http://183.94.1.118:8801/tsfile/live/0008_1.m3u8 -#EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 -http://112.46.85.60:8009/hls/8/index.m3u8 +http://101.66.199.54:9901/tsfile/live/0008_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226008/index.m3u8? #EXTINF:-1 tvg-name="CCTV8" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV8.png" group-title="📺央视频道",CCTV-8 @@ -184,14 +184,14 @@ http://[2409:8087:5e00:24::1f]:6060/ZTE_CMS/00000001000000060000000000000371/ind #EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-9hd/2500.m3u8?innersid=17686352686599982856& #EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 +http://112.46.85.60:8009/hls/509/index.m3u8 +#EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 +http://221.224.4.170:1111/tsfile/live/0009_1.m3u8 +#EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 http://z.b.bkpcp.top/m.php?id=cctv9 #EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 https://www.freetv.top/migu/673168140.m3u8?migutoken=749c49cdc31bb395e0349adc81010adc8707f80e51e9d3491ad67bfa71388ad768f7b52c8064338a7ef45eb7ddb192fb4937b21681c82499a0c16653ad9a9bec98ff5ce6ab183e4029bbdf269e #EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078603.m3u8 -#EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 -http://183.94.1.118:8801/tsfile/live/0009_1.m3u8 -#EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000014583/ #EXTINF:-1 tvg-name="CCTV9" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV9.png" group-title="📺央视频道",CCTV-9 http://[2409:8087:74d9:21::9]/270000001128/index.m3u8?cmcc_cid=9900000505 @@ -204,13 +204,13 @@ http://[2409:8087:1a01:df::4077]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-10hd/2500.m3u8?innersid=9053765528789506188 #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 +http://221.224.4.170:1111/tsfile/live/0010_1.m3u8 +#EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 http://z.b.bkpcp.top/m.php?id=cctv10 #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 https://www.freetv.top/migu/624878405.m3u8?migutoken=07b6e1d4124dd85ca8138b8d8dcd646323952053748d7d5ac0a2b31dcb6626c605fb05470545bd0f7e0d23e807e6909b517b2b8b5e2eaa926600edaa15d80aee9b900245924108c86040411cd4 #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078703.m3u8 -#EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 -http://183.94.1.118:8801/tsfile/live/0010_1.m3u8 +http://101.66.199.54:9901/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226164/index.m3u8 #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 @@ -222,16 +222,16 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/1000000005000265010/1.m3u8?chan #EXTINF:-1 tvg-name="CCTV10" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV10.png" group-title="📺央视频道",CCTV-10 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000321/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 +http://221.224.4.170:1111/tsfile/live/0011_1.m3u8 +#EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 http://z.b.bkpcp.top/m.php?id=cctv11 #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 https://www.freetv.top/migu/667987558.m3u8?migutoken=16827d54043eba69d051685229b1d0623c01f398f643b3a7d912c9929d6525025ef57eb61666d45bb70dfc86405aa336ca762f0bda4f0284d98eddae4042805df42661f954a1d40820829ec8c2 #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078803.m3u8 +http://101.66.199.54:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 http://183.94.1.118:8801/tsfile/live/0011_1.m3u8 #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 -http://59.48.75.130:3052/tsfile/live/0011_1.m3u8 -#EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 http://[2409:8087:5e01:34::38]:6610/ZTE_CMS/00000001000000060000000000000497/index.m3u8? #EXTINF:-1 tvg-name="CCTV11" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV11.png" group-title="📺央视频道",CCTV-11 http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN6000053BESTVSMGSMG/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUTWDyIgRkFJBAHMhA2ayG0Qj2xHA4vdPGsjBbxSL3p%2FmAObVTfznR%2Fpc%2B76QYmLRMuL3Lj9iabhv8arW7kJe6%2F4 @@ -244,14 +244,14 @@ http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/ #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-12hd/2500.m3u8?innersid=8190402369178717730 #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 +http://112.46.85.60:8009/hls/507/index.m3u8 +#EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 +http://221.224.4.170:1111/tsfile/live/0012_1.m3u8 +#EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 http://z.b.bkpcp.top/m.php?id=cctv12 #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 https://www.freetv.top/migu/673168185.m3u8?migutoken=37acadb43b1d7932b0a1e8a4f2d01a06b42a10c31f3ccb417bae200ac3028f30a8110509f2cd6cd130aee4b21c85693aa49817f3381e4d28e140d8db1a20b6fecea22fec17a70ff1341efe6081 #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078903.m3u8 -#EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 -http://183.94.1.118:8801/tsfile/live/0012_1.m3u8 -#EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 http://[2409:8087:5e08:24::11]:6610/000000001000/1000000001000032494/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=3 #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/2/224/3221225731/2.m3u8 @@ -262,16 +262,16 @@ http://[2409:8087:1a0a:df::404e]:80/wh7f454c46tw1801993293_427444497/ottrrs.hl.c #EXTINF:-1 tvg-name="CCTV12" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV12.png" group-title="📺央视频道",CCTV-12 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226568/index.m3u8 #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 +http://221.224.4.170:1111/tsfile/live/0013_1.m3u8 +#EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 http://z.b.bkpcp.top/m.php?id=cctv13 #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 https://www.freetv.top/migu/608807423.m3u8?migutoken=ac19a58805588401a8e818b6dd00df9b327912af3611ba95f89235e7020821668a2b6dc65ccc3904967da59d0a9742565c56ea582baf8915d068035054818ef0f369dab64705a6a7f7120529ec #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024079003.m3u8 +http://101.66.199.54:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 http://183.94.1.118:8801/tsfile/live/0013_1.m3u8 #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 -http://223.112.219.174:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN6000054BESTVSMGSMG/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUTWDyIgRkFJBAHMhA2ayG0SuXozn3alq9%2BUx7ZLG1w9awc14iEUxQ5VsTsr5pEBsmF56tXUfsukRUpygmTCKvAI #EXTINF:-1 tvg-name="CCTV13" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV13.png" group-title="📺央视频道",CCTV-13 http://[2409:8087:5e01:34::22]:6610/ZTE_CMS/00000001000000060000000000000516/index.m3u8?key=tvbox6_com @@ -284,13 +284,13 @@ http://[2409:8087:1a0a:df::4033]:80/wh7f454c46tw1917467835_-2108786972/ottrrs.hl #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 http://cc-ynbit-wszhibo.ifengli.com:2000/live/cctv-14hd/2500.m3u8?innersid=10749977474028640862 #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 -http://z.b.bkpcp.top/m.php?id=cctv14 -#EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 http://39.134.136.161:6610/000000001000/1000000001000021973/index.m3u8?livemode=1&stbId=10&channel-id=ystenlive&Contentid=1000000001000021973 #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 http://39.134.136.161:6610/000000001000/5000000010000030810/index.m3u8?livemode=1&stbId=10&channel-id=bestzb&Contentid=5000000010000030810 #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 -https://www.freetv.top/migu/624878440.m3u8?migutoken=239edad94ac0bbff14f123c7f8996ed7639110bd6cf64ec8ba8cf85842224956d452ec8b683385cb27f8a7685224a03e3aa4d914b8fe33249da9df699351b105c795452d03f2be0a1f1e39adb0 +http://221.224.4.170:1111/tsfile/live/0014_1.m3u8 +#EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 +http://z.b.bkpcp.top/m.php?id=cctv14 #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 http://[2409:8087:5e08:24::11]:6610/000000001000/1000000001000008170/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=3 #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 @@ -302,16 +302,16 @@ http://[2409:8087:1a0a:df::404d]:80/wh7f454c46tw1988565230_-380430064/ottrrs.hl. #EXTINF:-1 tvg-name="CCTV14" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV14.png" group-title="📺央视频道",CCTV-14 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000001000008170/ #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 +http://221.224.4.170:1111/tsfile/live/0015_1.m3u8 +#EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 http://z.b.bkpcp.top/m.php?id=cctv15 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 https://www.freetv.top/migu/673168223.m3u8?migutoken=4e8d5766579c6bef231494cabd07e5b49d965804790214280c9791e4c331fd90311cb62ea43d3a1899229bfa57be4afe5a567b32a6b78153fc9a9801e28a39435e078b48c211e71d6083519be4 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024079203.m3u8 +http://101.66.199.54:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 http://183.94.1.118:8801/tsfile/live/0015_1.m3u8 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 -http://59.48.75.130:3052/tsfile/live/0015_1.m3u8 -#EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031109/ #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="📺央视频道",CCTV-15 http://[2409:8087:5e01:34::22]:6610/ZTE_CMS/00000001000000060000000000000501/index.m3u8?IAS @@ -324,13 +324,13 @@ http://[2409:8087:1a0a:df::4038]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/322 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 http://39.134.136.161:6610/000000001000/5000000008000023254/index.m3u8?livemode=1&stbId=10&channel-id=bestzb&Contentid=5000000008000023254 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024079303.m3u8 +http://58.17.48.228:808/hls/25/index.m3u8 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024083703.m3u8 +http://58.221.214.82:9901/tsfile/live/0002_2.m3u8 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 -http://112.103.140.109:9003/hls/16/index.m3u8 +http://202.100.46.58:9901/tsfile/live/1016_1.m3u8 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 -https://api.olelive.com/dis/live/CCTV16HD/hls.m3u8 +http://202.100.46.58:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 http://[2409:8087:1a0a:df::404b]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226100/index.m3u8 #EXTINF:-1 tvg-name="CCTV16" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV16.png" group-title="📺央视频道",CCTV-16 @@ -348,9 +348,9 @@ http://z.b.bkpcp.top/m.php?id=cctv17 #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 https://www.freetv.top/migu/673168256.m3u8?migutoken=11fec7586772852c5b34d75ff515080f8def9861a030c98c5861b036729d642445a7bc5b0cd43e7086ca1903346f6cbad01b639771ee3bd13e653bdb2d14f169744862c9695688b0b177bc144a #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024079503.m3u8 +http://113.57.111.4:1111/tsfile/live/1014_1.m3u8 #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 -https://api.olelive.com/dis/live/CCTV17HD/hls.m3u8 +http://60.208.61.2:352/tsfile/live/0019_1.m3u8 #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010210/ #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 @@ -362,6 +362,10 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010210/index.m3u8 #EXTINF:-1 tvg-name="CCTV17" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV17.png" group-title="📺央视频道",CCTV-17 http://[2409:8087:2001:20:2800:0:df6e:eb22]/ott.mobaibox.com/PLTV/1/224/3221228407/index.m3u8 #EXTINF:-1 tvg-name="CETV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV1.png" group-title="📺央视频道",CETV1 +http://139.129.231.228:3529/rtp/239.21.2.7:5002 +#EXTINF:-1 tvg-name="CETV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV1.png" group-title="📺央视频道",CETV1 +http://120.55.49.231:3095/rtp/233.50.201.75:5140 +#EXTINF:-1 tvg-name="CETV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV1.png" group-title="📺央视频道",CETV1 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000076/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CETV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV1.png" group-title="📺央视频道",CETV1 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000076/index.m3u8?IASHttpSessionId= @@ -378,6 +382,8 @@ http://[2409:8087:74d6:22::7]:6410/270000001128/9900000046/index.m3u8? #EXTINF:-1 tvg-name="CETV1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV1.png" group-title="📺央视频道",CETV1 http://[2409:8087:74d6:22::7]:6410/270000001128/9900000046/index.m3u8?channel-id=newtv&livemode=4&Contentid=9900000046 #EXTINF:-1 tvg-name="CETV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV2.png" group-title="📺央视频道",CETV2 +http://139.129.231.228:3529/rtp/239.21.2.8:5002 +#EXTINF:-1 tvg-name="CETV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV2.png" group-title="📺央视频道",CETV2 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000077/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CETV2" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV2.png" group-title="📺央视频道",CETV2 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000077/index.m3u8?IASHttpSessionId= @@ -392,6 +398,10 @@ http://[2409:8087:74d6:22::7]:6410/270000001128/9900000071/index.m3u8?channel-id #EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001 #EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 +http://139.129.231.228:3529/rtp/239.21.1.222:5002 +#EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 +http://120.55.49.231:3095/rtp/233.50.200.162:5140 +#EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000666/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000666/index.m3u8?IASHttpSessionId= @@ -405,22 +415,32 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031126/index.m3u8? http://[2409:8087:5e08:24::2]:6610/000000001000/5000000011000031126/index.m3u8?channel-id=bestzb&Contentid=5000000011000031126&livemode=1&stbId=3 #EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 http://[2409:8087:74d6:22::7]:6410/270000001128/9900000072/index.m3u8? -#EXTINF:-1 tvg-name="CETV4" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CETV4.png" group-title="📺央视频道",CETV4 -http://[2409:8087:74d6:22::7]:6410/270000001128/9900000072/index.m3u8?channel-id=newtv&livemode=4&Contentid=9900000072 +#EXTINF:-1 tvg-name="央视台球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/央视台球.png" group-title="💰央视付费频道",央视台球 +http://livetv.wqwqwq.sbs/rptv/G_TAIQIU-CQ.m3u8?license=gitv +#EXTINF:-1 tvg-name="第一剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一剧场.png" group-title="💰央视付费频道",第一剧场 +http://58.19.38.162:9901/tsfile/live/1035_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="💰央视付费频道",风云足球 +http://113.57.111.4:1111/tsfile/live/1033_1.m3u8 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="💰央视付费频道",风云足球 +http://58.19.38.162:9901/tsfile/live/1034_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="💰央视付费频道",风云足球 http://120.238.94.10:9901/tsfile/live/1087_1.m3u8 #EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="💰央视付费频道",风云足球 http://183.11.239.36:808/hls/133/index.m3u8 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="💰央视付费频道",风云足球 +http://livetv.wqwqwq.sbs/rptv/G_FENGSHANGZQ-CQ.m3u8?license=gitv +#EXTINF:-1 tvg-name="世界地理" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/世界地理.png" group-title="💰央视付费频道",世界地理 +http://livetv.wqwqwq.sbs/rptv/G_SHIJIEDL-CQ.m3u8?license=gitv #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/gdws-hd/2500.m3u8?innersid=2310031483208039305 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 http://z.b.bkpcp.top/m.php?id=gdws #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 +http://101.66.199.54:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 http://183.94.1.118:8801/tsfile/live/0125_1.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 -http://59.48.75.130:3052/tsfile/live/0121_1.m3u8 -#EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 -http://111.61.236.247:9081/hls/43/index.m3u8 +http://113.57.111.4:1111/tsfile/live/1022_1.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/yinhe/88888888/224/3221226248/index.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 @@ -432,15 +452,15 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="📡卫视频道",广东卫视 http://[2409:8087:3869:8021:1001::e5]:6610/PLTV/88888888/224/3221225742/2/index.m3u8 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 -http://183.94.1.118:8801/tsfile/live/0124_1.m3u8 -#EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 http://112.46.85.60:8009/hls/34/index.m3u8 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 -http://223.112.219.174:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0 +http://221.224.4.170:1111/tsfile/live/0124_1.m3u8 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 -http://59.48.75.130:3052/tsfile/live/0142_1.m3u8 +http://101.66.199.54:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 -http://111.61.236.247:9081/hls/25/index.m3u8 +http://113.140.86.162:8009/hls/34/index.m3u8 +#EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 +http://183.94.1.118:8801/tsfile/live/0124_1.m3u8 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 http://[2409:8087:2001:20:2800:0:df6e:eb10]:80/wh7f454c46tw207135716_1985466075/ott.mobaibox.com/PLTV/3/224/3221227491/index.m3u8?icpid=3&RTS=1674380322&from=40&popid=40&hms_devid=2110&prioritypopid=40&vqe=3 #EXTINF:-1 tvg-name="浙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江卫视.png" group-title="📡卫视频道",浙江卫视 @@ -460,7 +480,7 @@ http://39.134.136.161:6610/000000001000/6954818217931477266/index.m3u8?livemode= #EXTINF:-1 tvg-name="湖南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南卫视.png" group-title="📡卫视频道",湖南卫视 http://39.134.136.161:6610/000000001000/6837496099179515295/index.m3u8?livemode=1&stbId=10&channel-id=wasusyt&Contentid=6837496099179515295 #EXTINF:-1 tvg-name="湖南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南卫视.png" group-title="📡卫视频道",湖南卫视 -http://183.94.1.118:8801/tsfile/live/0128_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0128_1.m3u8 #EXTINF:-1 tvg-name="湖南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南卫视.png" group-title="📡卫视频道",湖南卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226307/index.m3u8 #EXTINF:-1 tvg-name="湖南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南卫视.png" group-title="📡卫视频道",湖南卫视 @@ -492,16 +512,16 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010143/1.m3u8 #EXTINF:-1 tvg-name="北京卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/北京卫视.png" group-title="📡卫视频道",北京卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000004000031556/1.m3u8 #EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 +http://221.224.4.170:1111/tsfile/live/0132_1.m3u8 +#EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 http://z.b.bkpcp.top/m.php?id=hubws #EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 https://www.freetv.top/migu/738906825.m3u8?migutoken=959fce041a0fecbe0bdf2b300a4d13c986661650b877856aabade568eaf9f549143a65c212325030ca99ac119635c6c4daa7c93ba8863508e6aeef100965a31ae4a8152b02337aea453f42988d #EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 +http://101.66.199.54:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 http://183.94.1.118:8801/tsfile/live/0132_1.m3u8 #EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 -http://36.32.174.67:60080/newlive/live/hls/28/live.m3u8 -#EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 -http://59.48.75.130:3052/tsfile/live/0127_1.m3u8 -#EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226477/index.m3u8? #EXTINF:-1 tvg-name="湖北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北卫视.png" group-title="📡卫视频道",湖北卫视 http://[2409:8087:74d9:21::6]:80/270000001128/9900000522/index.m3u8 @@ -514,13 +534,13 @@ http://[2409:8087:3869:8021:1001::e5]:6610/PLTV/88888888/224/3221225740/2/index. #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/hljws-hd/2500.m3u8?innersid=3559146512286674480 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 -http://59.48.75.130:3052/tsfile/live/0138_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0143_1.m3u8 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 -http://111.61.236.247:9081/hls/34/index.m3u8 +http://101.66.199.54:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 -http://219.145.93.74:9999/tsfile/live/1009_1.m3u8 +http://183.66.15.146:60901/tsfile/live/0143_1.m3u8 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 -http://219.145.93.74:9999/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0 +http://60.208.61.2:352/tsfile/live/0143_1.m3u8 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226327/index.m3u8 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 @@ -532,15 +552,15 @@ http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/322 #EXTINF:-1 tvg-name="黑龙江卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江卫视.png" group-title="📡卫视频道",黑龙江卫视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/yinhe/88888888/8/3221226327/index.m3u8 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 +http://101.66.199.54:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 http://183.94.1.118:8801/tsfile/live/0130_1.m3u8 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 -http://59.48.75.130:3052/tsfile/live/1000_1.m3u8 +http://113.220.234.228:9999/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 -http://111.61.236.247:9081/hls/27/index.m3u8 +http://223.241.247.214:85//tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 -http://202.100.46.58:9901/tsfile/live/1028_1.m3u8 -#EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 -http://202.100.46.58:9901/tsfile/live/1028_1.m3u8?key=txiptv&playlive=1&authid=0 +http://113.57.111.4:1111/tsfile/live/1021_1.m3u8 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/2/224/3221226391/2.m3u8 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 @@ -552,16 +572,16 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000514/index.m3u8 #EXTINF:-1 tvg-name="安徽卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽卫视.png" group-title="📡卫视频道",安徽卫视 http://[2409:8087:74f0:22::4]:6410/270000001128/9900000514/index.m3u8?channel-id=newtv&livemode=4&Contentid=9900000121 #EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 +http://221.224.4.170:1111/tsfile/live/0142_1.m3u8 +#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 +http://101.66.199.54:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 http://183.94.1.118:8801/tsfile/live/0142_1.m3u8 #EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 +http://113.57.111.4:1111/tsfile/live/1030_1.m3u8 +#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 http://36.32.174.67:60080/newlive/live/hls/34/live.m3u8 #EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 -http://59.48.75.130:3052/tsfile/live/0130_1.m3u8 -#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 -http://111.61.236.247:9081/hls/41/index.m3u8 -#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 -http://202.100.46.58:9901/tsfile/live/1029_1.m3u8 -#EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 http://[2409:8087:2001:20:2800:0:df6e:eb09]/wh7f454c46tw2787424866_142914197/ott.mobaibox.com/PLTV/3/224/3221228133/index.m3u8?icpid=3&RTS=1669701388&from=40&popid=40&hms_devid=2037&prioritypopid=40&vqe=3 #EXTINF:-1 tvg-name="重庆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆卫视.png" group-title="📡卫视频道",重庆卫视 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000341/index.m3u8?IASHttpSessionId= @@ -574,14 +594,14 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000517/index.m3u8 #EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/shdfws-hd/2500.m3u8?innersid=6998114529464369318 #EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 +http://112.46.85.60:8009/hls/31/index.m3u8 +#EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 http://39.134.136.161:6610/000000001000/2000000002000000001/index.m3u8?livemode=1&stbId=10&channel-id=hnbblive&Contentid=2000000002000000001 #EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 +http://221.224.4.170:1111/tsfile/live/0107_1.m3u8 +#EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 https://www.freetv.top/migu/651632648.m3u8?migutoken=67b4219a3e6acdcf288118ed6bf84d3197052966f0bc854079b6038b3fca6437744ca78bb0ea1fad6f61b4c73d0df57bd8b539ec247fd28ce16d1375716bbf774ea19c99e4585bb828fa3851c0 #EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 -http://183.94.1.118:8801/tsfile/live/0107_1.m3u8 -#EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 -http://112.46.85.60:8009/hls/31/index.m3u8 -#EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226345/index.m3u8 #EXTINF:-1 tvg-name="东方卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方卫视.png" group-title="📡卫视频道",东方卫视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/8/3221226345/index.m3u8 @@ -594,13 +614,13 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010054/1.m3u8 #EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/fjws-hd/2500.m3u8?innersid=10943554111088989087 #EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 +http://221.224.4.170:1111/tsfile/live/0137_1.m3u8 +#EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 +http://101.66.199.54:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 http://183.94.1.118:8801/tsfile/live/0137_1.m3u8 #EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 -http://59.48.75.130:3052/tsfile/live/0125_1.m3u8 -#EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 -http://111.61.236.247:9081/hls/42/index.m3u8 -#EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 -http://202.100.46.58:9901/tsfile/live/1031_1.m3u8?key=txiptv&playlive=1&authid=0 +http://183.66.15.146:60901/tsfile/live/0137_1.m3u8 #EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226341/index.m3u8 #EXTINF:-1 tvg-name="东南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东南卫视.png" group-title="📡卫视频道",东南卫视 @@ -614,14 +634,14 @@ http://[2409:8087:1a0a:df::404b]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 rtmp://livein.gstv.com.cn/49048r/y3nga4.flv #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 -http://59.48.75.130:3052/tsfile/live/1001_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0141_1.m3u8 +#EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 +http://183.66.15.146:60901/tsfile/live/0141_1.m3u8 #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 http://111.61.236.247:9081/hls/54/index.m3u8 #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 http://202.100.46.58:9901/tsfile/live/1035_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 -http://202.100.46.58:9901/tsfile/live/1035_1.m3u8 -#EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010098/1.m3u8 #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221225845/index.m3u8?servicetype=1&IASHttpSessionId=RR423820220409134714119178 @@ -632,16 +652,16 @@ http://[2409:8087:1a0a:df::4015]:80/wh7f454c46tw3287197471_1365623238/ottrrs.hl. #EXTINF:-1 tvg-name="甘肃卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/甘肃卫视.png" group-title="📡卫视频道",甘肃卫视 http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225633/index.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 -http://36.32.174.67:60080/newlive/live/hls/38/live.m3u8 +http://221.224.4.170:1111/tsfile/live/0113_1.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 http://110.53.52.63:8888/newlive/live/hls/25/live.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 -http://59.48.75.130:3052/tsfile/live/0139_1.m3u8 -#EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 -http://111.61.236.247:9081/hls/44/index.m3u8 +http://36.32.174.67:60080/newlive/live/hls/38/live.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 http://58.221.214.82:9901/tsfile/live/0113_1.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 +http://58.19.43.46:9901/tsfile/live/1004_1.m3u8 +#EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226452/index.m3u8 #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 http://[2409:8087:2001:20:2800:0:df6e:eb04]:80/ott.mobaibox.com/PLTV/4/224/3221228183/index.m3u8 @@ -652,15 +672,15 @@ http://[2409:8087:74f0:22::4]:6410/270000001128/9900000034/index.m3u8?channel-id #EXTINF:-1 tvg-name="广西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广西卫视.png" group-title="📡卫视频道",广西卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/yinhe/88888888/224/3221226549/index.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 -http://59.48.75.130:3052/tsfile/live/0015_2.m3u8 +http://101.66.199.54:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 -http://111.61.236.247:9081/hls/37/index.m3u8 +http://183.66.15.146:60901/tsfile/live/0120_1.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 -http://202.100.46.58:9901/tsfile/live/1034_1.m3u8 +http://113.57.111.4:1111/tsfile/live/1029_1.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 -http://202.100.46.58:9901/tsfile/live/1034_1.m3u8?key=txiptv&playlive=1&authid=0 +http://221.0.78.198:1681/hls/10249/index.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 -http://219.145.93.74:9999/tsfile/live/0112_1.m3u8 +http://58.221.214.82:9901/tsfile/live/0120_1.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 http://[2409:8087:1a01:df::4030]:80/TVOD/88888888/224/3221225974/main.m3u8 #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 @@ -672,16 +692,16 @@ http://[2409:8087:74f0:22::4]:6410/270000001128/9900000036/index.m3u8?channel-id #EXTINF:-1 tvg-name="贵州卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/贵州卫视.png" group-title="📡卫视频道",贵州卫视 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000329/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 +http://113.57.111.4:1111/tsfile/live/1031_1.m3u8 +#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 http://36.32.174.67:60080/newlive/live/hls/46/live.m3u8 #EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 -http://59.48.75.130:3052/tsfile/live/0141_1.m3u8 -#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 -http://219.145.93.74:9999/tsfile/live/0107_1.m3u8 -#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 -http://219.145.93.74:9999/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 http://58.221.214.82:9901/tsfile/live/0016_2.m3u8 #EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 +http://lu.wqwqwq.sbs/itv/5000000004000006211.m3u8?cdn=bestzb +#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=hinws +#EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 http://[2409:8087:74d9:21::6]:80/270000001128/9900000037/index.m3u8 #EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000004000006211/1.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3 @@ -692,15 +712,15 @@ http://[2409:8087:2001:20:2800:0:df6e:eb08]/wh7f454c46tw2843123663_1489055229/ot #EXTINF:-1 tvg-name="海南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海南卫视.png" group-title="📡卫视频道",海南卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221226465/index.m3u8 #EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 +http://221.224.4.170:1111/tsfile/live/0117_1.m3u8 +#EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 +http://183.66.15.146:60901/tsfile/live/0117_1.m3u8 +#EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 http://36.32.174.67:60080/newlive/live/hls/36/live.m3u8 #EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 -http://59.48.75.130:3052/tsfile/live/0136_1.m3u8 +http://60.208.61.2:352/tsfile/live/0117_1.m3u8 #EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 -http://111.61.236.247:9081/hls/17/index.m3u8 -#EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 -http://116.128.242.83:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 -http://116.128.242.83:9901/tsfile/live/0142_1.m3u8 +http://111.14.181.15:9901/tsfile/live/0117_1.m3u8 #EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/8/3221226406/index.m3u8 #EXTINF:-1 tvg-name="河北卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北卫视.png" group-title="📡卫视频道",河北卫视 @@ -716,12 +736,12 @@ http://39.134.136.161:6610/000000001000/5000000011000031119/index.m3u8?livemode= #EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 http://39.134.136.161:6610/000000001000/1000000002000027731/index.m3u8?livemode=1&stbId=10&channel-id=ystenlive&Contentid=1000000002000027731 #EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 +http://221.224.4.170:1111/tsfile/live/0139_1.m3u8 +#EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 +http://101.66.199.54:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 http://183.94.1.118:8801/tsfile/live/1006_1.m3u8 #EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 -http://59.48.75.130:3052/tsfile/live/0126_1.m3u8 -#EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 -http://111.61.236.247:9081/hls/33/index.m3u8 -#EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 http://[2409:8087:3428:20:500::1009]:6610/PLTV/88888888/224/3221227095/index.m3u8?servicetype=1&IASHttpSessionId=RR423820220409134714119178 #EXTINF:-1 tvg-name="河南卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南卫视.png" group-title="📡卫视频道",河南卫视 http://[2409:8087:2001:20:2800:0:df6e:eb17]:80/wh7f454c46tw2373527465_-419963710/ott.mobaibox.com/PLTV/3/224/3221228221/index.m3u8?icpid=3&RTS=1674386783&from=40&popid=40&hms_devid=2114&prioritypopid=40&vqe=3 @@ -734,13 +754,13 @@ http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221227095/index.m3u #EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/jxws-hd/2500.m3u8?innersid=14570431181364255736 #EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 +http://221.224.4.170:1111/tsfile/live/0116_1.m3u8 +#EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 +http://101.66.199.54:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 http://110.53.52.63:8888/newlive/live/hls/34/live.m3u8 #EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 -http://59.48.75.130:3052/tsfile/live/0118_1.m3u8 -#EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 -http://111.61.236.247:9081/hls/45/index.m3u8 -#EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 -http://219.145.93.74:9999/tsfile/live/1011_1.m3u8 +http://58.221.214.82:9901/tsfile/live/0116_1.m3u8 #EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031117/1.m3u8 #EXTINF:-1 tvg-name="吉林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉林卫视.png" group-title="📡卫视频道",吉林卫视 @@ -754,14 +774,14 @@ http://[2409:8087:5e08:24::17]:6610/000000001000/5000000011000031117/index.m3u8? #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/jsws-hd/2500.m3u8?innersid=14912719076157451667 #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 +http://112.46.85.60:8009/hls/33/index.m3u8 +#EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 +http://221.224.4.170:1111/tsfile/live/0127_1.m3u8 +#EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 http://z.b.bkpcp.top/m.php?id=jsws #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 https://www.freetv.top/migu/623899368.m3u8?migutoken=3ec7add32f2108ed670e526f58207033f492fc81ffe6044df4e04bf88bca3cfbe3f1af7bd4fa10e5a6663f276475985da275dfa9a568feed08fbc90f40838156a2167089cb6b35aaaf231e8ae8 #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 -http://183.94.1.118:8801/tsfile/live/0127_1.m3u8 -#EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 -http://112.46.85.60:8009/hls/33/index.m3u8 -#EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 http://[2409:8087:1a0a:df::402f]:80/wh7f454c46tw3223665652_2134146582/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226310/index.m3u8?icpid=88888888&RTS=1713970052&from=4&hms_devid=1144&online=1713970052&vqe=3 #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 http://[2409:8087:3869:8021:1001::e5]:6610/PLTV/88888888/224/3221225488/2/index.m3u8 @@ -772,16 +792,16 @@ http://[2409:8087:74d9:21::6]/270000001322/69900158041111100000002137/index.m3u8 #EXTINF:-1 tvg-name="江苏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江苏卫视.png" group-title="📡卫视频道",江苏卫视 http://[2409:8087:1a0a:df::4015]:80/wh7f454c46tw3251136475_-1261873562/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225613/index.m3u8?icpid=88888888&RTS=1713970080&from=4&hms_devid=992&online=1713970080&vqe=3 #EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 +http://221.224.4.170:1111/tsfile/live/0138_1.m3u8 +#EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 http://z.b.bkpcp.top/m.php?id=jxws #EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 https://www.freetv.top/migu/783847495.m3u8?migutoken=fddcc05dc0245329d3208607a5b1f5a1980bc31a7ced510e345af6cc68f5b86d2d9178b45706a0b6a0ceddc82ce06e53375cfedbc96fd0b00c12195c7d77b6f23811a67970bcfeb47629aa5aa6 #EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 +http://101.66.199.54:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 http://183.94.1.118:8801/tsfile/live/0138_1.m3u8 #EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 -http://36.32.174.67:60080/newlive/live/hls/22/live.m3u8 -#EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 -http://36.32.174.67:60080/newlive/live/hls/31/live.m3u8 -#EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 http://[2409:8087:3869:8021:1001::e5]:6610/PLTV/88888888/224/3221225492/2/index.m3u8 #EXTINF:-1 tvg-name="江西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江西卫视.png" group-title="📡卫视频道",江西卫视 http://[2409:8087:74f0:22::4]:6410/270000001128/9900000525/index.m3u8? @@ -794,13 +814,13 @@ http://[2409:8087:2001:20:2800:0:df6e:eb17]:80/ott.mobaibox.com/PLTV/4/224/32212 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/lnws-hd/2500.m3u8?innersid=6324592032119595697 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 +http://101.66.199.54:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 http://183.94.1.118:8801/tsfile/live/0121_1.m3u8 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 -http://59.48.75.130:3052/tsfile/live/0143_1.m3u8 +http://183.66.15.146:60901/tsfile/live/0121_1.m3u8 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 -http://111.61.236.247:9081/hls/30/index.m3u8 -#EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 -http://202.100.46.58:9901/tsfile/live/1037_1.m3u8 +http://113.57.111.4:1111/tsfile/live/1026_1.m3u8 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000002000024033/1.m3u8 #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 @@ -812,16 +832,16 @@ http://[2409:8087:74f0:22::4]:6410/270000001128/9900000526/index.m3u8? #EXTINF:-1 tvg-name="辽宁卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁卫视.png" group-title="📡卫视频道",辽宁卫视 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226209/index.m3u8 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 -http://59.48.75.130:3052/tsfile/live/1005_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0114_1.m3u8 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 -http://59.48.75.130:3052/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0 +http://183.66.15.146:60901/tsfile/live/0109_1.m3u8 +#EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 +http://60.208.61.2:352/tsfile/live/0109_1.m3u8 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 http://111.61.236.247:9081/hls/48/index.m3u8 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 http://182.92.109.190:1668/migu720/migu720.php?id=nmws #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 -http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=nmws -#EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 http://[2409:8087:1a01:df::401a]:80/wh7f454c46tw3029083262_-802204014/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225634/index.m3u8?icpid=88888888&RTS=1713969858&from=4&hms_devid=128&prioritypopid=4&online=1713969858&vqe=3 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 http://[2409:8087:74d9:21::6]:80/270000001128/9900000044/index.m3u8 @@ -832,15 +852,15 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000002000014080/1.m3u8 #EXTINF:-1 tvg-name="内蒙古卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内蒙古卫视.png" group-title="📡卫视频道",内蒙古卫视 http://[2409:8087:74d9:21::6]/270000001322/69900158041111100000002237/index.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 +http://221.224.4.170:1111/tsfile/live/0112_1.m3u8 +#EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 +http://183.66.15.146:60901/tsfile/live/0112_1.m3u8 +#EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 http://36.32.174.67:60080/newlive/live/hls/49/live.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 -http://59.48.75.130:3052/tsfile/live/0115_1.m3u8 +http://60.208.61.2:352/tsfile/live/0112_1.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 -http://111.61.236.247:9081/hls/51/index.m3u8 -#EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 -http://202.100.46.58:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 -http://202.100.46.58:9901/tsfile/live/1036_1.m3u8 +http://58.19.43.46:9901/tsfile/live/1003_1.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010110/1.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 @@ -852,15 +872,15 @@ http://[2409:8087:1e03:21::2]:6060/cms001/ch00000090990000001074/index.m3u8 #EXTINF:-1 tvg-name="宁夏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宁夏卫视.png" group-title="📡卫视频道",宁夏卫视 http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221225849/index.m3u8?servicetype=1&IASHttpSessionId=RR423820220409134714119178 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 +http://183.66.15.146:60901/tsfile/live/0140_1.m3u8 +#EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 http://110.53.52.63:8888/newlive/live/hls/38/live.m3u8 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 -http://59.48.75.130:3052/tsfile/live/0113_1.m3u8 +http://60.208.61.2:352/tsfile/live/0140_1.m3u8 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 -http://111.61.236.247:9081/hls/49/index.m3u8 +http://58.221.214.82:9901/tsfile/live/0018_1.m3u8 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 -http://202.100.46.58:9901/tsfile/live/1038_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 -http://202.100.46.58:9901/tsfile/live/1038_1.m3u8 +http://58.19.43.46:9901/tsfile/live/1014_1.m3u8 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 http://[2409:8087:2001:20:2800:0:df6e:eb1a]:80/wh7f454c46tw348498084_-2063977587/ott.mobaibox.com/PLTV/3/224/3221227554/index.m3u8?icpid=3&RTS=1674380463&from=40&popid=40&hms_devid=2116&prioritypopid=40&vqe=3 #EXTINF:-1 tvg-name="青海卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青海卫视.png" group-title="📡卫视频道",青海卫视 @@ -874,13 +894,13 @@ http://[2409:8087:3428:20:500::1009]:6610/PLTV/88888888/224/3221227119/index.m3u #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/sdws-hd/2500.m3u8?innersid=3721212644869031100 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 -http://59.48.75.130:3052/tsfile/live/0119_1.m3u8 +http://101.66.199.54:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 -http://111.61.236.247:9081/hls/31/index.m3u8 +http://183.66.15.146:60901/tsfile/live/0131_1.m3u8 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 -http://202.100.46.58:9901/tsfile/live/1026_1.m3u8 +http://60.208.61.2:352/tsfile/live/0131_1.m3u8 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 -http://202.100.46.58:9901/tsfile/live/1026_1.m3u8?key=txiptv&playlive=1&authid=0 +http://58.221.214.82:9901/tsfile/live/0131_1.m3u8 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 http://[2409:8087:5e08:24::11]:6610/000000001000/6000000001000004134/1.m3u8?channel-id=wasusyt&Contentid=6000000001000004134&livemode=1&stbId=3 #EXTINF:-1 tvg-name="山东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东卫视.png" group-title="📡卫视频道",山东卫视 @@ -894,13 +914,13 @@ http://[2409:8087:1a0a:df::404b]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 http://36.32.174.67:60080/newlive/live/hls/43/live.m3u8 #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 -http://59.48.75.130:3052/tsfile/live/1002_1.m3u8 +http://58.221.214.82:9901/tsfile/live/0017_1.m3u8 +#EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 +http://58.19.43.46:9901/tsfile/live/1009_1.m3u8 #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 http://111.61.236.247:9081/hls/47/index.m3u8 #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 -http://219.145.93.74:9999/tsfile/live/0120_1.m3u8 -#EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 -http://58.221.214.82:9901/tsfile/live/0017_1.m3u8 +http://222.169.85.8:9901/tsfile/live/0118_1.m3u8 #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 http://[2409:8087:1a0a:df::402c]:80/wh7f454c46tw3180575873_-409685816/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225624/index.m3u8 #EXTINF:-1 tvg-name="山西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山西卫视.png" group-title="📡卫视频道",山西卫视 @@ -916,11 +936,11 @@ http://z.b.bkpcp.top/m.php?id=sxws #EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 https://www.freetv.top/migu/738910838.m3u8?migutoken=35df06ac83a8fe0b0d98f96b8dbf5821d2a57fbd279c10148f5eb543353c48d828c15e639a63919e023774c69fac3a6f5a2bbfd1ee773d77c0dc154b9acd0c77e84c99627dd15f852e56ab3281 #EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 -http://36.32.174.67:60080/newlive/live/hls/44/live.m3u8 -#EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 http://110.53.52.63:8888/newlive/live/hls/40/live.m3u8 #EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 -http://59.48.75.130:3052/tsfile/live/0135_1.m3u8 +http://36.32.174.67:60080/newlive/live/hls/44/live.m3u8 +#EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 +http://60.208.61.2:352/tsfile/live/0136_1.m3u8 #EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 http://[2409:8087:1a09:df::401d]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225625/1.m3u8?icpid=88888888&from=5&hms_devid=980&online=1720054946&vqe=3 #EXTINF:-1 tvg-name="陕西卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西卫视.png" group-title="📡卫视频道",陕西卫视 @@ -934,13 +954,13 @@ http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226444/index. #EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/scws-hd/2500.m3u8?innersid=17534924581903335933 #EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 +http://221.224.4.170:1111/tsfile/live/0123_1.m3u8 +#EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 +http://101.66.199.54:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 http://183.94.1.118:8801/tsfile/live/0123_1.m3u8 #EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 -http://36.32.174.67:60080/newlive/live/hls/29/live.m3u8 -#EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 -http://59.48.75.130:3052/tsfile/live/0128_1.m3u8 -#EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 -http://111.61.236.247:9081/hls/35/index.m3u8 +http://113.57.111.4:1111/tsfile/live/1032_1.m3u8 #EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226338/index.m3u8? #EXTINF:-1 tvg-name="四川卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/四川卫视.png" group-title="📡卫视频道",四川卫视 @@ -954,13 +974,13 @@ http://[2409:8087:74d9:21::4]/270000001128/index.m3u8?cmcc_cid=9900000025 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/szws-hd/2500.m3u8?innersid=15000776628606995758 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 -http://59.48.75.130:3052/tsfile/live/0123_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0126_1.m3u8 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 -http://111.61.236.247:9081/hls/38/index.m3u8 +http://113.220.234.228:9999/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 -http://202.100.46.58:9901/tsfile/live/1024_1.m3u8 +http://113.57.111.4:1111/tsfile/live/1023_1.m3u8 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 -http://202.100.46.58:9901/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0 +http://113.57.111.4:1111/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221225848/index.m3u8?servicetype=1&IASHttpSessionId=RR423820220409134714119178 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 @@ -972,16 +992,16 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000004000007410/1.m3u8 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="📡卫视频道",深圳卫视 http://[2409:8087:1a0a:df::4037]:80/wh7f454c46tw2706720003_917179827/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226313/index.m3u8?icpid=88888888&RTS=1713969535&from=4&hms_devid=1211&online=1713969535&vqe=3 #EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 -http://119.36.148.115:59901/tsfile/live/1009_1.m3u8 +http://113.195.45.40:9901/tsfile/live/1078_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 +http://139.129.231.228:3529/rtp/239.21.2.9:5002 +#EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 +http://111.160.17.2:59901/tsfile/live/0001_45.m3u8 #EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 http://61.138.128.226:19901/tsfile/live/1020_1.m3u8 #EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 http://61.138.128.226:19901/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 -http://220.249.114.102:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0 -#EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 -http://220.249.114.102:9901/tsfile/live/1017_1.m3u8 -#EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 http://[2409:8087:1e03:21::2]:6060/cms001/ch00000090990000001185/index.m3u8 #EXTINF:-1 tvg-name="三沙卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三沙卫视.png" group-title="📡卫视频道",三沙卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/4600001000000000117/1.m3u8 @@ -994,13 +1014,13 @@ http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221227172/index.m3u #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 http://112.46.85.60:8009/hls/44/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 -http://36.32.174.67:60080/newlive/live/hls/26/live.m3u8 +http://221.224.4.170:1111/tsfile/live/0135_1.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 -http://59.48.75.130:3052/tsfile/live/0116_1.m3u8 +http://101.66.199.54:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 -http://111.61.236.247:9081/hls/29/index.m3u8 +http://113.140.86.162:8009/hls/44/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 -http://202.100.46.58:9901/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0 +http://113.57.111.4:1111/tsfile/live/1024_1.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010069/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 @@ -1012,16 +1032,16 @@ http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226191/index.m3u #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="📡卫视频道",天津卫视 http://[2409:8087:1a0a:df::4036]:80/wh7f454c46tw2843203949_-1782618395/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226459/index.m3u8?icpid=88888888&RTS=1713969672&from=4&hms_devid=1209&online=1713969672&vqe=3 #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 +http://183.66.15.146:60901/tsfile/live/0111_1.m3u8 +#EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 http://36.32.174.67:60080/newlive/live/hls/48/live.m3u8 #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 -http://59.48.75.130:3052/tsfile/live/0109_1.m3u8 +http://60.208.61.2:352/tsfile/live/0111_1.m3u8 #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 http://111.61.236.247:9081/hls/52/index.m3u8 #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 http://182.92.109.190:1668/migu720/migu720.php?id=xzws #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 -http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=xzws -#EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 http://[2409:8087:1a0a:df::402e]:80/wh7f454c46tw2357852280_-2104487458/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226433/index.m3u8?icpid=88888888&RTS=1713969186&from=4&hms_devid=1103&online=1713969186&vqe=3 #EXTINF:-1 tvg-name="西藏卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/西藏卫视.png" group-title="📡卫视频道",西藏卫视 http://[2409:8087:5e01:34::23]:6610/ZTE_CMS/00000001000000060000000000000317/index.m3u8?IAS @@ -1034,7 +1054,7 @@ http://[2409:8087:74d9:21::4]/270000001128/index.m3u8?cmcc_cid=9900000043 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="📡卫视频道",新疆卫视 http://36.32.174.67:60080/newlive/live/hls/47/live.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="📡卫视频道",新疆卫视 -http://59.48.75.130:3052/tsfile/live/1004_1.m3u8 +http://60.208.61.2:352/tsfile/live/0110_1.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="📡卫视频道",新疆卫视 http://106.124.91.222:9901/tsfile/live/21212_1.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="📡卫视频道",新疆卫视 @@ -1074,13 +1094,13 @@ http://[2409:8087:2001:20:2800:0:df6e:eb04]/ott.mobaibox.com/PLTV/3/224/32212255 #EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 http://120.238.94.10:9901/tsfile/live/1009_1.m3u8 #EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 -http://mzitv.cn:32/tsfile/live/1006_1.m3u8 -#EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 -http://gmxw.7766.org:808/hls/83/index.m3u8 -#EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 http://183.11.239.36:808/hls/83/index.m3u8 #EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 -http://120.77.205.62:8087/rtp/239.77.0.1:5146 +http://mzitv.cn:32/tsfile/live/1006_1.m3u8 +#EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 +http://121.33.239.242:9901/tsfile/live/1007_1.m3u8 +#EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 +http://121.33.239.242:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000003000000033/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000003000000033&IASHttpSessionId=OTT19019320240419154124000281&yang-1989 #EXTINF:-1 tvg-name="广东珠江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东珠江.png" group-title="☘️广东频道",广东珠江 @@ -1094,9 +1114,11 @@ http://[2409:8087:5e08:24::17]:6610/000000001000/2000000003000000033/index.m3u8? #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 http://120.238.94.10:9901/tsfile/live/1012_1.m3u8 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 +http://183.11.239.36:808/hls/2/index.m3u8 +#EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 http://mzitv.cn:32/tsfile/live/1008_1.m3u8 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 -http://183.11.239.36:808/hls/2/index.m3u8 +http://121.33.239.242:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 http://120.77.205.62:8087/rtp/239.77.0.168:5146 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 @@ -1104,21 +1126,25 @@ http://120.77.205.62:8087/rtp/239.77.0.112:5146 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="☘️广东频道",广东体育 http://120.77.205.62:8087/rtp/239.77.1.97:5146 #EXTINF:-1 tvg-name="广东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东新闻.png" group-title="☘️广东频道",广东新闻 +http://mom.coms.hk:9901/tsfile/live/1008_1.m3u8 +#EXTINF:-1 tvg-name="广东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东新闻.png" group-title="☘️广东频道",广东新闻 http://120.238.94.10:9901/tsfile/live/1010_1.m3u8 #EXTINF:-1 tvg-name="广东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东新闻.png" group-title="☘️广东频道",广东新闻 +http://183.11.239.36:808/hls/5/index.m3u8 +#EXTINF:-1 tvg-name="广东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东新闻.png" group-title="☘️广东频道",广东新闻 http://mzitv.cn:32/tsfile/live/1007_1.m3u8 #EXTINF:-1 tvg-name="广东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东新闻.png" group-title="☘️广东频道",广东新闻 -http://183.11.239.36:808/hls/5/index.m3u8 +http://121.33.239.242:9901/tsfile/live/1008_1.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/gdws-hd/2500.m3u8?innersid=2310031483208039305 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 http://z.b.bkpcp.top/m.php?id=gdws #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 +http://101.66.199.54:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 http://183.94.1.118:8801/tsfile/live/0125_1.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 -http://59.48.75.130:3052/tsfile/live/0121_1.m3u8 -#EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 -http://111.61.236.247:9081/hls/43/index.m3u8 +http://113.57.111.4:1111/tsfile/live/1022_1.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/yinhe/88888888/224/3221226248/index.m3u8 #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 @@ -1130,14 +1156,20 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN #EXTINF:-1 tvg-name="广东卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东卫视.png" group-title="☘️广东频道",广东卫视 http://[2409:8087:3869:8021:1001::e5]:6610/PLTV/88888888/224/3221225742/2/index.m3u8 #EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 +http://183.11.239.36:808/hls/18/index.m3u8 +#EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 http://mzitv.cn:32/tsfile/live/1009_1.m3u8 #EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 -http://183.11.239.36:808/hls/18/index.m3u8 +http://121.33.239.242:9901/tsfile/live/1003_1.m3u8 +#EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 +http://121.33.239.242:9901/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 http://120.77.205.62:8087/rtp/239.77.0.225:5146 #EXTINF:-1 tvg-name="广东民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东民生.png" group-title="☘️广东频道",广东民生 http://120.77.205.62:8087/rtp/239.77.0.5:5146 #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=dwqws +#EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://182.92.109.190:1668/72/72.php?id=dwqws #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://182.92.109.190:1668/migu720/migu720.php?id=dwqws @@ -1146,8 +1178,6 @@ http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=dwqws #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://8.138.90.107/公众号【睡眼迷离的猫】/migu.php?id=dwqws #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 -http://mzitv.cn:32/tsfile/live/1012_1.m3u8 -#EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000002000011619/1.m3u8 #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000002000011619/index.m3u8 @@ -1158,19 +1188,41 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010108/1.m3u8 #EXTINF:-1 tvg-name="大湾区卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/大湾区卫视.png" group-title="☘️广东频道",大湾区卫视 http://[2409:8087:5e08:24::11]:6610/000000001000/1000000002000011619/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=3 #EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 +https://tencentplaywebsite.gztv.com/live/zonghes.m3u8?txSecret=751b5ecd94a0d9d34c7e37e25bb8b27a&txTime=193108637cb +#EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 +http://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=c8dbe86d6f86eb1a21999ab479fd5667&txTime=18d3c4690e8 +#EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 http://tencentplaygzrb01.gztv.com/live/zonghes.m3u8 #EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=dce137597806f62ae6fdfc40328a336e&txTime=191b5fc1c86 +#EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=6d9c0311929fc12857f6b810fab0188b&txTime=1913a3ed516 +#EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 +https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=9e5008d4b91944fa76a957a93ae54870&txTime=1903e5f1cfd +#EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 http://120.77.205.62:8087/rtp/239.253.43.66:5146 #EXTINF:-1 tvg-name="广州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州综合.png" group-title="☘️广东频道",广州综合 http://120.77.205.62:8087/rtp/239.253.43.71:5146 #EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 +https://tencentplaywebsite.gztv.com/live/yingshi.m3u8?txSecret=074974bc25835d38fda6936ae40aabe9&txTime=193108637cb +#EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 +http://tencentplay.gztv.com/live/yingshi.m3u8?txSecret=1bd3a1082ab5b89f48c1bff9a3760da4&txTime=18d57929bd4 +#EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 http://tencentplaygzrb01.gztv.com/live/yingshi.m3u8 #EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 +https://tencentplay.gztv.com/live/yingshi.m3u8?txSecret=2b09d952702fe2c67ddad695faa4c27c&txTime=191b5db5ed0 +#EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 +https://tencentplay.gztv.com/live/yingshi.m3u8?txSecret=ec79a0d817981989c161f548c48c2954&txTime=1903e79e680 +#EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 http://120.77.205.62:8087/rtp/239.253.43.68:5146 #EXTINF:-1 tvg-name="广州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州影视.png" group-title="☘️广东频道",广州影视 http://120.77.205.62:8087/rtp/239.253.43.73:5146 #EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="☘️广东频道",广州竞赛 +https://tencentplaywebsite.gztv.com/live/jingsai.m3u8?txSecret=cd5eb475078e689b230ada7df792e4de&txTime=193108637cb +#EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="☘️广东频道",广州竞赛 http://tencentplaygzrb01.gztv.com/live/jingsai.m3u8 +#EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="☘️广东频道",广州竞赛 +https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=a4d04c27d0d1d8b7efef2ed7ff1c3eae&txTime=191b60cc9ca #EXTINF:-1 tvg-name="江门综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江门综合.png" group-title="☘️广东频道",江门综合 http://120.77.205.62:8087/rtp/239.77.0.195:5146 #EXTINF:-1 tvg-name="江门综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江门综合.png" group-title="☘️广东频道",江门综合 @@ -1186,13 +1238,13 @@ http://120.77.205.62:8087/rtp/239.253.43.57:5146 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 http://cc-ynbit-wszhibo.ifengli.com:2000/live/szws-hd/2500.m3u8?innersid=15000776628606995758 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 -http://59.48.75.130:3052/tsfile/live/0123_1.m3u8 +http://221.224.4.170:1111/tsfile/live/0126_1.m3u8 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 -http://111.61.236.247:9081/hls/38/index.m3u8 +http://113.220.234.228:9999/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 -http://202.100.46.58:9901/tsfile/live/1024_1.m3u8 +http://113.57.111.4:1111/tsfile/live/1023_1.m3u8 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 -http://202.100.46.58:9901/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0 +http://113.57.111.4:1111/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 http://[2409:8087:3428:20:500::100f]:6610/PLTV/88888888/224/3221225848/index.m3u8?servicetype=1&IASHttpSessionId=RR423820220409134714119178 #EXTINF:-1 tvg-name="深圳卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/深圳卫视.png" group-title="☘️广东频道",深圳卫视 @@ -1235,6 +1287,8 @@ https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 #EXTINF:-1 tvg-name="浙江钱江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江.png" group-title="☘️浙江频道",浙江钱江 http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8 +#EXTINF:-1 tvg-name="浙江钱江" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江.png" group-title="☘️浙江频道",浙江钱江 +http://120.55.49.231:3095/rtp/233.50.201.132:5140 #EXTINF:-1 tvg-name="浙江钱江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江都市.png" group-title="☘️浙江频道",浙江钱江都市 https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 #EXTINF:-1 tvg-name="浙江钱江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江都市.png" group-title="☘️浙江频道",浙江钱江都市 @@ -1247,6 +1301,8 @@ https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 #EXTINF:-1 tvg-name="浙江钱江台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江台.png" group-title="☘️浙江频道",浙江钱江台 http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8 +#EXTINF:-1 tvg-name="浙江钱江台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江钱江台.png" group-title="☘️浙江频道",浙江钱江台 +http://120.55.49.231:3095/rtp/233.50.201.132:5140 #EXTINF:-1 tvg-name="浙江生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江生活.png" group-title="☘️浙江频道",浙江生活 https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 #EXTINF:-1 tvg-name="浙江生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江生活.png" group-title="☘️浙江频道",浙江生活 @@ -1255,6 +1311,8 @@ https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8? http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8 #EXTINF:-1 tvg-name="浙江生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江生活.png" group-title="☘️浙江频道",浙江生活 http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江生活.png" group-title="☘️浙江频道",浙江生活 +http://120.55.49.231:3095/rtp/233.50.201.133:5140 #EXTINF:-1 tvg-name="浙江经济生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经济生活.png" group-title="☘️浙江频道",浙江经济生活 https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 #EXTINF:-1 tvg-name="浙江经济生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经济生活.png" group-title="☘️浙江频道",浙江经济生活 @@ -1265,6 +1323,8 @@ http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8 https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8? #EXTINF:-1 tvg-name="浙江教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江教育.png" group-title="☘️浙江频道",浙江教育 https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江教育.png" group-title="☘️浙江频道",浙江教育 +http://120.55.49.231:3095/rtp/233.50.201.134:5140 #EXTINF:-1 tvg-name="浙江民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江民生.png" group-title="☘️浙江频道",浙江民生 https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8 #EXTINF:-1 tvg-name="浙江民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江民生.png" group-title="☘️浙江频道",浙江民生 @@ -1273,6 +1333,8 @@ https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8? http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8 #EXTINF:-1 tvg-name="浙江民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江民生.png" group-title="☘️浙江频道",浙江民生 http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江民生.png" group-title="☘️浙江频道",浙江民生 +http://120.55.49.231:3095/rtp/233.50.201.136:5140 #EXTINF:-1 tvg-name="浙江新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江新闻.png" group-title="☘️浙江频道",浙江新闻 https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8 #EXTINF:-1 tvg-name="浙江新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江新闻.png" group-title="☘️浙江频道",浙江新闻 @@ -1291,6 +1353,12 @@ http://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8 http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8 #EXTINF:-1 tvg-name="浙江新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江新闻.png" group-title="☘️浙江频道",浙江新闻 http://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江新闻.png" group-title="☘️浙江频道",浙江新闻 +http://120.55.49.231:3095/rtp/233.50.201.137:5140 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 +https://qiniup-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 +https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8? #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 @@ -1298,15 +1366,39 @@ https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 -https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 +http://120.55.49.231:2693/rtp/233.50.201.138:5140 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 +http://120.55.49.231:3543/rtp/233.50.201.138:5140 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="☘️浙江频道",浙江少儿 +http://120.55.49.231:3095/rtp/233.50.201.138:5140 +#EXTINF:-1 tvg-name="杭州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州综合.png" group-title="☘️浙江频道",杭州综合 +http://120.55.49.231:3095/rtp/233.50.201.173:5140 +#EXTINF:-1 tvg-name="杭州明珠" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州明珠.png" group-title="☘️浙江频道",杭州明珠 +http://120.55.49.231:3095/rtp/233.50.201.174:5140 +#EXTINF:-1 tvg-name="杭州生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州生活.png" group-title="☘️浙江频道",杭州生活 +http://120.55.49.231:3095/rtp/233.50.201.175:5140 +#EXTINF:-1 tvg-name="杭州影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州影视.png" group-title="☘️浙江频道",杭州影视 +http://120.55.49.231:3095/rtp/233.50.201.176:5140 +#EXTINF:-1 tvg-name="杭州青少" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州青少.png" group-title="☘️浙江频道",杭州青少 +http://120.55.49.231:3095/rtp/233.50.201.177:5140 +#EXTINF:-1 tvg-name="杭州导视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/杭州导视.png" group-title="☘️浙江频道",杭州导视 +http://120.55.49.231:3095/rtp/233.50.201.182:5140 #EXTINF:-1 tvg-name="浙江教科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江教科.png" group-title="☘️浙江频道",浙江教科 https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8 #EXTINF:-1 tvg-name="浙江经济" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经济.png" group-title="☘️浙江频道",浙江经济 https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江经济" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经济.png" group-title="☘️浙江频道",浙江经济 +http://120.55.49.231:3095/rtp/233.50.201.133:5140 #EXTINF:-1 tvg-name="之江纪录" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/之江纪录.png" group-title="☘️浙江频道",之江纪录 https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8 #EXTINF:-1 tvg-name="之江纪录" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/之江纪录.png" group-title="☘️浙江频道",之江纪录 https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8 +#EXTINF:-1 tvg-name="之江纪录" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/之江纪录.png" group-title="☘️浙江频道",之江纪录 +http://120.55.49.231:3095/rtp/233.50.202.25:5140 +#EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 +https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 +https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 #EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 #EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 @@ -1315,12 +1407,14 @@ https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8? http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 #EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8 -#EXTINF:-1 tvg-name="浙江国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江国际.png" group-title="☘️浙江频道",浙江国际 -https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 #EXTINF:-1 tvg-name="丽水新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/丽水新闻.png" group-title="☘️浙江频道",丽水新闻 http://120.55.49.231:8872/rtp/233.50.201.162:5140 +#EXTINF:-1 tvg-name="丽水新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/丽水新闻.png" group-title="☘️浙江频道",丽水新闻 +http://120.55.49.231:3095/rtp/233.50.201.162:5140 #EXTINF:-1 tvg-name="衢州公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/衢州公共.png" group-title="☘️浙江频道",衢州公共 http://120.55.49.231:8872/rtp/233.50.202.12:5140 +#EXTINF:-1 tvg-name="衢州公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/衢州公共.png" group-title="☘️浙江频道",衢州公共 +http://120.55.49.231:3095/rtp/233.50.202.12:5140 #EXTINF:-1 tvg-name="浙江经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经视.png" group-title="☘️浙江频道",浙江经视 https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 #EXTINF:-1 tvg-name="浙江经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江经视.png" group-title="☘️浙江频道",浙江经视 @@ -1575,15 +1669,25 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8 #EXTINF:-1 tvg-name="上虞文化影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上虞文化影视.png" group-title="☘️浙江频道",上虞文化影视 http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8 +#EXTINF:-1 tvg-name="北京新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/北京新闻.png" group-title="☘️北京频道",北京新闻 +https://fmbox.cc/公众号玉玉软件库/tv/beijing.php?id=bjxw +#EXTINF:-1 tvg-name="北京生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/北京生活.png" group-title="☘️北京频道",北京生活 +https://fmbox.cc/公众号玉玉软件库/tv/beijing.php?id=bjsh #EXTINF:-1 tvg-name="北京科教" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/北京科教.png" group-title="☘️北京频道",北京科教 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225729/index.m3u8 +#EXTINF:-1 tvg-name="北京财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/北京财经.png" group-title="☘️北京频道",北京财经 +https://fmbox.cc/公众号玉玉软件库/tv/beijing.php?id=bjcj #EXTINF:-1 tvg-name="通州电视台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/通州电视台.png" group-title="☘️北京频道",通州电视台 http://pull.dayuntongzhou.com/live/tztv.m3u8 #EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 http://z.b.bkpcp.top/m.php?id=qcxj #EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=qcxj +#EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=qcxj #EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 +http://139.196.151.191:2051/rtp/239.45.3.61:5140 +#EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000010/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000010&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000010/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000010&IAS @@ -1595,8 +1699,8 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000010/index.m3u8? http://[2409:8087:5e01:24::8]:6610/000000001000/2000000002000000010/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000010&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000010/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000010&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="七彩戏剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七彩戏剧.png" group-title="☘️上海频道",七彩戏剧 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000010/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000010&IASHttpSessionId=OTT19019320240419154124000281 +#EXTINF:-1 tvg-name="上海外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海外语.png" group-title="☘️上海频道",上海外语 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=shics #EXTINF:-1 tvg-name="上海外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海外语.png" group-title="☘️上海频道",上海外语 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=shics #EXTINF:-1 tvg-name="上海外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海外语.png" group-title="☘️上海频道",上海外语 @@ -1615,8 +1719,6 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000001/index.m3u8? http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226201/index.m3u8 #EXTINF:-1 tvg-name="上海外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海外语.png" group-title="☘️上海频道",上海外语 http://[2409:8087:5e01:24::8]:6610/000000001000/2000000002000000001/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000001&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="上海外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海外语.png" group-title="☘️上海频道",上海外语 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000001/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000001&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="上海教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海教育.png" group-title="☘️上海频道",上海教育 http://61.173.144.157:9901/tsfile/live/1007_1.m3u8 #EXTINF:-1 tvg-name="上海教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海教育.png" group-title="☘️上海频道",上海教育 @@ -1648,6 +1750,8 @@ http://61.173.144.157:9901/tsfile/live/1005_1.m3u8 #EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 http://61.173.144.157:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 +http://139.129.231.228:3529/rtp/239.21.1.171:5002 +#EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000333/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 http://[2409:8087:74d9:21::6]:80/270000001128/9900000528/index.m3u8 @@ -1661,11 +1765,11 @@ http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte. http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225738/index.m3u8 #EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225738/index.m3u8 -#EXTINF:-1 tvg-name="上海纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海纪实.png" group-title="☘️上海频道",上海纪实 -http://[2409:8087:5e08:24::11]:6610/000000001000/5000000004000010282/index.m3u8?channel-id=bestzb&Contentid=5000000004000010282&livemode=1&stbId=3 #EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 http://39.134.136.161:6610/000000001000/2000000002000000012/index.m3u8?livemode=1&stbId=10&channel-id=hnbblive&Contentid=2000000002000000012 #EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 +http://livetv.wqwqwq.sbs/itv/5000000010000018926.m3u8?cdn=bestzb +#EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000012/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000012&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000010000018926/1.m3u8?channel-id=bestzb&Contentid=5000000010000018926&livemode=1&stbId=3 @@ -1681,15 +1785,17 @@ http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000012/index.m3u8? http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000010000018926/1.m3u8 #EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226753/index.m3u8 -#EXTINF:-1 tvg-name="上海都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海都市.png" group-title="☘️上海频道",上海都市 -http://[2409:8087:5e01:24::8]:6610/000000001000/2000000002000000012/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000012&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 -http://z.b.bkpcp.top/m.php?id=shys +#EXTINF:-1 tvg-name="上视外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上视外语.png" group-title="☘️上海频道",上视外语 +http://139.196.151.191:2051/rtp/239.45.1.127:5140 #EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 http://39.134.136.161:6610/000000001000/2000000002000000013/index.m3u8?livemode=1&stbId=10&channel-id=hnbblive&Contentid=2000000002000000013 #EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 +http://z.b.bkpcp.top/m.php?id=shys +#EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c #EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=dfys +#EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=dfys #EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 http://[2409:8087:5e08:24::12]:6610/000000001000/2000000002000000013/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000013&IAShttpSessionId=OTT19019320240419154124000281 @@ -1701,8 +1807,8 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000013/index.m3u8? http://[2409:8087:5e08:24::11]:6610/000000001000/5000000010000032212/1.m3u8?channel-id=bestzb&Contentid=5000000010000032212&livemode=1&stbId=3 #EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000013/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000013&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="东方影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方影视.png" group-title="☘️上海频道",东方影视 -http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000013/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000013&IASHttpSessionId=OTT19019320240419154124000281 +#EXTINF:-1 tvg-name="东方财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方财经.png" group-title="☘️上海频道",东方财经 +http://139.196.151.191:2051/rtp/239.45.1.119:5140 #EXTINF:-1 tvg-name="东方财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方财经.png" group-title="☘️上海频道",东方财经 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000090/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000090&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="东方财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方财经.png" group-title="☘️上海频道",东方财经 @@ -1721,13 +1827,19 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/5000000007000010003/1.m3u8?chan http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000090/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000090&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="东方财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方财经.png" group-title="☘️上海频道",东方财经 http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000090/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000090&IAS -#EXTINF:-1 tvg-name="东方财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东方财经.png" group-title="☘️上海频道",东方财经 -http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000007000010003/1.m3u8 +#EXTINF:-1 tvg-name="全纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/全纪实.png" group-title="☘️上海频道",全纪实 +http://139.196.151.191:2051/rtp/239.45.3.135:5140 #EXTINF:-1 tvg-name="全纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/全纪实.png" group-title="☘️上海频道",全纪实 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002016/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 http://221.226.4.10:9901/tsfile/live/1027_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 +http://113.195.45.40:9901/tsfile/live/1082_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 +http://139.196.151.191:2051/rtp/239.45.3.134:5140 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 +http://120.55.49.231:3095/rtp/233.50.201.184:5140 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 http://[2409:8087:1e03:21::42]:6610/cms001/ch00000090990000001196/index.m3u8? #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226197/index.m3u8 @@ -1739,20 +1851,16 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031113/1.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002000/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002000/index.m3u8?IASHttpSessionId= -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 -http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226197/index.m3u8 -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 -http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226197/index.m3u8•IPV6『线路2』 -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="☘️上海频道",动漫秀场 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000009/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000009&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 http://39.134.136.161:6610/000000001000/5101217554085087042/index.m3u8?livemode=1&stbId=10&channel-id=ystenlive&Contentid=5101217554085087042 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 +http://113.195.45.40:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=0&authid=0 +#EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 +http://175.10.230.91:8081/tsfile/live/1007_1.m3u8 +#EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 http://120.238.94.10:9901/tsfile/live/1037_1.m3u8 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 -http://61.138.128.226:19901/tsfile/live/1016_1.m3u8 -#EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 -http://60.29.124.66:6080/hls/62/index.m3u8 +http://139.129.231.228:3529/rtp/239.21.1.51:5002 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 http://[2409:8087:74d9:21::4]:80/270000001128/index.m3u8?cmcc_cid=9900000069 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 @@ -1763,8 +1871,8 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN http://[2409:8087:74d9:21::6]/270000001128/9900000069/index.m3u8 #EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226618/index.m3u8 -#EXTINF:-1 tvg-name="哈哈炫动" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈哈炫动.png" group-title="☘️上海频道",哈哈炫动 -http://[2409:8087:74d9:21::6]:80/270000001128/9900000069/index.m3u8 +#EXTINF:-1 tvg-name="嘉定电视台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/嘉定电视台.png" group-title="☘️上海频道",嘉定电视台 +http://139.196.151.191:2051/rtp/239.45.3.185:5140 #EXTINF:-1 tvg-name="崇明电视台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/崇明电视台.png" group-title="☘️上海频道",崇明电视台 https://pili-live-hls.wdit.com.cn/wditlive/c038f4fafbdf4f97ba74c74ad67259b931ee.m3u8 #EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 @@ -1776,6 +1884,8 @@ http://61.173.144.157:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid= #EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=shxwzh #EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 +http://223.166.234.78:7777/tsfile/live/1025_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226620/index.m3u8 #EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000005/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000005&IASHttpSessionId=OTT19019320240419154124000281 @@ -1785,8 +1895,12 @@ http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000005/index.m3u8? http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000005/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000005&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000005/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000005&IASHttpSessionId=OTT19019320240419154124000281&yang-1989 -#EXTINF:-1 tvg-name="新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新闻综合.png" group-title="☘️上海频道",新闻综合 -http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031110/1.m3u8?channel-id=bestzb&Contentid=5000000011000031110&livemode=1&stbId=3 +#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 +http://139.196.151.191:2051/rtp/239.45.3.196:5140 +#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 +http://139.196.151.191:2051/rtp/239.45.1.4:5140 +#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 +http://120.55.49.231:3095/rtp/233.50.201.189:5140 #EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226203/index.m3u8 #EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 @@ -1801,12 +1915,10 @@ http://[2409:8087:74d6:22::7]:6410/000000001000PLTV/88888888/224/3221226203/inde http://[2409:8087:74d6:22::7]:6410/000000001000PLTV/88888888/224/3221226203/index.m3u8? #EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000016/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000016&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 -http://[2409:8087:5e08:24::17]:6610/000000001000/5000000007000010001/index.m3u8?channel-id=bestzb&Contentid=5000000007000010001&livemode=1&stbId=3 -#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 -http://[2409:8087:5e08:24::17]:6610/000000001000/5000000007000010001/index.m3u8?channel-id=bestzb&Contentid=5000000007000010001&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-name="欢笑剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/欢笑剧场.png" group-title="☘️上海频道",欢笑剧场 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000016/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000016&IASHttpSessionId=OTT19019320240419154124000281 +#EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 +http://139.196.151.191:2051/rtp/239.45.1.46:5140 +#EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 +http://120.55.49.231:3095/rtp/233.50.201.191:5140 #EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000014/1.m3u8?channel-id=hnbblive&Contentid=2000000002000000014&livemode=1&stbId=3 #EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 @@ -1823,13 +1935,15 @@ http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000014/index.m3u8? http://[2409:8087:5e01:24::8]:6610/000000001000/2000000002000000014/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000014&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000014/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000014&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="法治天地" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/法治天地.png" group-title="☘️上海频道",法治天地 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000014/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000014&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 http://39.134.136.161:6610/000000001000/2000000002000000006/index.m3u8?livemode=1&stbId=10&channel-id=hnbblive&Contentid=2000000002000000006 #EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 http://221.0.78.198:1681/hls/10275/index.m3u8 #EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 +http://139.196.151.191:2051/rtp/239.45.3.132:5140 +#EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 +http://120.55.49.231:3095/rtp/233.50.201.187:5140 +#EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002019/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000006/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000006&IASHttpSessionId=OTT19019320240419154124000281 @@ -1841,17 +1955,17 @@ http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226358/index.m3u http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000006/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000006&IASHttpSessionId=OTT19019320240419154124000281&yang-1989 #EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002019/index.m3u8?IASHttpSessionId= -#EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000006/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000006&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="生活时尚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/生活时尚.png" group-title="☘️上海频道",生活时尚 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000006/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000006&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://39.134.136.161:6610/000000001000/2000000002000000004/index.m3u8?livemode=1&stbId=10&channel-id=hnbblive&Contentid=2000000002000000004 #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=dycj +#EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=dycj #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://139.196.151.191:6456/rtp/239.45.3.211:5140 #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 +http://139.196.151.191:2051/rtp/239.45.3.211:5140 +#EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000004/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000004&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://[2409:8087:5e08:24::12]:6610/000000001000/2000000002000000004/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000004&IAShttpSessionId=OTT19019320240419154124000281 @@ -1861,13 +1975,15 @@ http://[2409:8087:1e03:21::42]:6610/cms001/ch00000090990000001017/index.m3u8? http://[2409:8087:5e08:24::11]:6610/000000001000/5000000010000027146/1.m3u8?channel-id=bestzb&Contentid=5000000010000027146&livemode=1&stbId=3 #EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226172/index.m3u8 -#EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 -http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000004/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000004&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="第一财经" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/第一财经.png" group-title="☘️上海频道",第一财经 -http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000004/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000004&IAS #EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 http://39.134.136.161:6610/000000001000/7081356299464623208/index.m3u8?livemode=1&stbId=10&channel-id=bestzb&Contentid=7081356299464623208 #EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 +http://223.166.234.78:7777/tsfile/live/1027_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 +http://139.129.231.228:3529/rtp/239.21.1.195:5002 +#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 +http://139.196.151.191:2051/rtp/239.45.3.212:5140 +#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000004000010282/1.m3u8?channel-id=bestzb&Contentid=5000000004000010282&livemode=1&stbId=3 #EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 http://[2409:8087:74d9:21::6]/270000001322/69900158041111100000002199/index.m3u8 @@ -1879,15 +1995,13 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN http://[2409:8087:5e01:34::20]:6610/ZTE_CMS/00000001000000060000000000000365/index.m3u8?fmmv6 #EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226174/index.m3u8 -#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 -http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225738/index.m3u8 -#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 -http://[2409:8087:2001:20:2800:0:df6e:eb12]/wh7f454c46tw1293235676_155310184/ott.mobaibox.com/PLTV/3/224/3221227635/index.m3u8?icpid=3&RTS=1669704189&from=40&popid=40&hms_devid=2112&prioritypopid=40&vqe=3 -#EXTINF:-1 tvg-name="纪实人文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纪实人文.png" group-title="☘️上海频道",纪实人文 -http://[2409:8087:5e08:24::11]:6610/000000001000/1000000005000265021/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265021&livemode=1&stbId=3 #EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 http://61.173.144.157:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 +http://139.196.151.191:2051/rtp/239.45.3.136:5140 +#EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 +http://120.55.49.231:3095/rtp/233.50.201.190:5140 +#EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002022/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031111/1.m3u8 @@ -1901,42 +2015,48 @@ http://[2409:8087:5e08:24::2]:6610/000000001000/5000000011000031111/index.m3u8?c http://[2409:8087:74d6:22::7]:6410/000000001000PLTV/88888888/224/3221226176/index.m3u8? #EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 http://[2409:8087:74d6:22::7]:6410/000000001000PLTV/88888888/224/3221226176/index.m3u8 -#EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000015/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000015&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="都市剧场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/都市剧场.png" group-title="☘️上海频道",都市剧场 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000015/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000015&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️重庆频道",万源新闻综合 -http://live.wanyuannews.com:80/wytv/hd/live.m3u8 +#EXTINF:-1 tvg-name="金色频道" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金色频道.png" group-title="☘️上海频道",金色频道 +http://139.196.151.191:2051/rtp/239.45.1.118:5140 #EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️重庆频道",万源新闻综合 http://live.wanyuannews.com/wytv/hd/live.m3u8 #EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️重庆频道",万源新闻综合 http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd +#EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️重庆频道",万源新闻综合 +http://live.wanyuannews.com:80/wytv/hd/live.m3u8 +#EXTINF:-1 tvg-name="铜梁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/铜梁综合.png" group-title="☘️重庆频道",铜梁综合 +http://183.64.174.171:40123/ch1.m3u8?zzhongqd +#EXTINF:-1 tvg-name="荣昌综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/荣昌综合.png" group-title="☘️重庆频道",荣昌综合 +http://183.64.181.25:40023/rongchang01.m3u8 #EXTINF:-1 tvg-name="万州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州综合.png" group-title="☘️重庆频道",万州综合 http://wanzhoulive.cbg.cn:8017/iTXwrGs/800/live.m3u8?zzhongqd #EXTINF:-1 tvg-name="万州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州综合.png" group-title="☘️重庆频道",万州综合 -http://123.146.162.24:8013/tslslive/noEX9SG/hls/live_sd.m3u8?zzhongqd -#EXTINF:-1 tvg-name="万州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州综合.png" group-title="☘️重庆频道",万州综合 http://123.146.162.24:8017/iTXwrGs/800/live.m3u8 #EXTINF:-1 tvg-name="万州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州综合.png" group-title="☘️重庆频道",万州综合 http://123.146.162.24:8017/iTXwrGs/800/live.m3u8?zzhongqd +#EXTINF:-1 tvg-name="万州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州综合.png" group-title="☘️重庆频道",万州综合 +http://123.146.162.24:8013/tslslive/noEX9SG/hls/live_sd.m3u8?zzhongqd #EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 http://wanzhoulive.cbg.cn:8017/c2F0hmi/1000/live.m3u8?zzhongqd #EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 http://wanzhoulive.cbg.cn:8017/c2F0hmi/1000/live.m3u8 #EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 -http://123.146.162.24:8013/tslslive/PU2vzMI/hls/live_sd.m3u8 -#EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 http://123.146.162.24:8017/c2F0hmi/1000/live.m3u8 #EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 http://123.146.162.24:8017/c2F0hmi/1000/live.m3u8?zzhongqd +#EXTINF:-1 tvg-name="万州三峡移民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万州三峡移民.png" group-title="☘️重庆频道",万州三峡移民 +http://123.146.162.24:8013/tslslive/PU2vzMI/hls/live_sd.m3u8 #EXTINF:-1 tvg-name="重庆时尚购物" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/重庆时尚购物.png" group-title="☘️重庆频道",重庆时尚购物 https://tvlive.ugoshop.com/ugotvlive/ssgotv.m3u8?auth_key=2312509421-0-0-6642ec3645caa943da6855a9ef7e2129 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 http://58.221.214.82:9901/tsfile/live/0008_2.m3u8 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=ymkt +#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=ymkt #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 -http://110.53.218.182:9902/tsfile/live/1006_1.m3u8 +http://175.10.230.91:8081/tsfile/live/1006_1.m3u8 +#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 +http://139.129.231.228:3529/rtp/239.21.1.50:5002 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/2/224/3221225656/2.m3u8 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 @@ -1947,30 +2067,32 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000070/index.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000049/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 http://[2409:8087:74d9:21::6]/270000001128/9900000070/index.m3u8 -#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 -http://[2409:8087:1a0b:df::4005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225656/index.m3u8 -#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="☘️江苏频道",优漫卡通 -http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010118/1.m3u8 +#EXTINF:-1 tvg-name="南京十八" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京十八.png" group-title="☘️江苏频道",南京十八 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=njsb #EXTINF:-1 tvg-name="南京十八" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京十八.png" group-title="☘️江苏频道",南京十八 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=njsb #EXTINF:-1 tvg-name="南京教科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京教科.png" group-title="☘️江苏频道",南京教科 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=njkj +#EXTINF:-1 tvg-name="南京教科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京教科.png" group-title="☘️江苏频道",南京教科 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=njkj #EXTINF:-1 tvg-name="南京新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京新闻综合.png" group-title="☘️江苏频道",南京新闻综合 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=njxwzh +#EXTINF:-1 tvg-name="南京新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南京新闻综合.png" group-title="☘️江苏频道",南京新闻综合 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=njxwzh -#EXTINF:-1 tvg-name="武进新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武进新闻.png" group-title="☘️江苏频道",武进新闻 -https://live.wjyanghu.com/live/CH1.m3u8 -#EXTINF:-1 tvg-name="武进生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武进生活.png" group-title="☘️江苏频道",武进生活 -https://live.wjyanghu.com/live/CH2.m3u8 +#EXTINF:-1 tvg-name="宜兴新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宜兴新闻.png" group-title="☘️江苏频道",宜兴新闻 +http://yixing-tv-ori-hls.jstv.com/yixing-tv-ori/yixing_xw.m3u8?zjiangsd +#EXTINF:-1 tvg-name="宜兴紫砂" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宜兴紫砂.png" group-title="☘️江苏频道",宜兴紫砂 +http://yixing-tv-ori-hls.jstv.com/yixing-tv-ori/yixing_zs.m3u8?zjiangsd #EXTINF:-1 tvg-name="泰州一套新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/泰州一套新闻综合.png" group-title="☘️江苏频道",泰州一套新闻综合 http://stream1.mytaizhou.net/xwzh/playlist.m3u8?_upt=2f3c2e461725409415 #EXTINF:-1 tvg-name="泰州三套影视娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/泰州三套影视娱乐.png" group-title="☘️江苏频道",泰州三套影视娱乐 http://stream1.mytaizhou.net/ysyl/playlist.m3u8?_upt=16dfe82d1725409426 #EXTINF:-1 tvg-name="淮安新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/淮安新闻综合.png" group-title="☘️江苏频道",淮安新闻综合 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=haxwzh +#EXTINF:-1 tvg-name="淮安新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/淮安新闻综合.png" group-title="☘️江苏频道",淮安新闻综合 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=haxwzh #EXTINF:-1 tvg-name="苏州新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/苏州新闻综合.png" group-title="☘️江苏频道",苏州新闻综合 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=szxwzh -#EXTINF:-1 tvg-name="连云港公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/连云港公共.png" group-title="☘️江苏频道",连云港公共 -http://live.lyg1.com/ggpd/sd/live.m3u8 #EXTINF:-1 tvg-name="镇江二套社会民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/镇江二套社会民生.png" group-title="☘️江苏频道",镇江二套社会民生 http://zjtv-wshls.homecdn.com/live/2aa16.m3u8 #EXTINF:-1 tvg-name="靖江新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/靖江新闻综合.png" group-title="☘️江苏频道",靖江新闻综合 @@ -1979,16 +2101,28 @@ http://visit.jjbctv.com:1935/live/xwzhmb/playlist.m3u8?zjiangsd http://visit.jjbctv.com:1935/live/xwzhmb/playlist.m3u8 #EXTINF:-1 tvg-name="靖江新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/靖江新闻综合.png" group-title="☘️江苏频道",靖江新闻综合 http://visit.jjbctv.com:1935/live/xwzhpc/playlist.m3u8 +#EXTINF:-1 tvg-name="辽宁影视剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁影视剧.png" group-title="☘️辽宁频道",辽宁影视剧 +https://fmbox.cc/公众号玉玉软件库/tv/yc.php?id=lnshj-1 +#EXTINF:-1 tvg-name="辽宁影视剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁影视剧.png" group-title="☘️辽宁频道",辽宁影视剧 +https://fmbox.cc/公众号玉玉软件库/tv/yc.php?id=lnshj-2 +#EXTINF:-1 tvg-name="辽宁教育青少" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁教育青少.png" group-title="☘️辽宁频道",辽宁教育青少 +https://fmbox.cc/公众号玉玉软件库/tv/yc.php?id=lnjqsh-2 +#EXTINF:-1 tvg-name="辽宁教育青少" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/辽宁教育青少.png" group-title="☘️辽宁频道",辽宁教育青少 +https://fmbox.cc/公众号玉玉软件库/tv/yc.php?id=lnjqsh-1 #EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 http://116.128.242.83:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 http://116.128.242.83:9901/tsfile/live/0139_1.m3u8 #EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 +http://175.10.230.91:8081/tsfile/live/0018_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 +http://175.10.230.91:8081/tsfile/live/0018_1.m3u8 +#EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 http://220.170.241.204:9901/tsfile/live/1002_1.m3u8 #EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 -http://110.53.218.182:9902/tsfile/live/0127_1.m3u8 -#EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 http://[2409:8087:5e08:24::11]:6610/000000001000/4682579636905393407/1.m3u8?channel-id=hnbblive&Contentid=4682579636905393407&livemode=1&stbId=3 +#EXTINF:-1 tvg-name="湖南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南都市.png" group-title="☘️湖南频道",湖南都市 +http://110.53.218.182:9902/tsfile/live/0127_1.m3u8 #EXTINF:-1 tvg-name="湖南经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南经视.png" group-title="☘️湖南频道",湖南经视 http://116.128.242.83:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖南经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南经视.png" group-title="☘️湖南频道",湖南经视 @@ -2008,6 +2142,10 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/8765482907954673867/1.m3u8?chan #EXTINF:-1 tvg-name="湖南电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南电影.png" group-title="☘️湖南频道",湖南电影 http://116.128.242.83:9901/tsfile/live/1009_1.m3u8 #EXTINF:-1 tvg-name="湖南电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南电影.png" group-title="☘️湖南频道",湖南电影 +http://175.10.230.91:8081/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="湖南电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南电影.png" group-title="☘️湖南频道",湖南电影 +http://175.10.230.91:8081/tsfile/live/0019_1.m3u8 +#EXTINF:-1 tvg-name="湖南电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南电影.png" group-title="☘️湖南频道",湖南电影 http://[2409:8087:5e08:24::11]:6610/000000001000/7884242846753128038/1.m3u8?channel-id=hnbblive&Contentid=7884242846753128038&livemode=1&stbId=3 #EXTINF:-1 tvg-name="湖南爱晚" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南爱晚.png" group-title="☘️湖南频道",湖南爱晚 http://[2409:8087:5e08:24::11]:6610/000000001000/6307875884530512195/1.m3u8?channel-id=hnbblive&Contentid=6307875884530512195&livemode=1&stbId=3 @@ -2016,7 +2154,15 @@ http://116.128.242.83:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid= #EXTINF:-1 tvg-name="湖南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南娱乐.png" group-title="☘️湖南频道",湖南娱乐 http://116.128.242.83:9901/tsfile/live/0125_1.m3u8 #EXTINF:-1 tvg-name="湖南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南娱乐.png" group-title="☘️湖南频道",湖南娱乐 +http://175.10.230.91:8081/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="湖南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南娱乐.png" group-title="☘️湖南频道",湖南娱乐 +http://175.10.230.91:8081/tsfile/live/1000_1.m3u8 +#EXTINF:-1 tvg-name="湖南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南娱乐.png" group-title="☘️湖南频道",湖南娱乐 http://[2409:8087:5e08:24::11]:6610/000000001000/6427893650335440392/1.m3u8?channel-id=hnbblive&Contentid=6427893650335440392&livemode=1&stbId=3 +#EXTINF:-1 tvg-name="湖南国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南国际.png" group-title="☘️湖南频道",湖南国际 +http://175.10.230.91:8081/tsfile/live/1001_1.m3u8 +#EXTINF:-1 tvg-name="湖南国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南国际.png" group-title="☘️湖南频道",湖南国际 +http://175.10.230.91:8081/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖南公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南公共.png" group-title="☘️湖南频道",湖南公共 http://116.128.242.83:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖南公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南公共.png" group-title="☘️湖南频道",湖南公共 @@ -2026,11 +2172,11 @@ http://116.128.242.83:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid= #EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 http://116.128.242.83:9901/tsfile/live/1001_1.m3u8 #EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 +http://58.19.38.162:9901/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 http://120.238.94.10:9901/tsfile/live/1059_1.m3u8 #EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 -http://119.36.148.115:59901/tsfile/live/1010_1.m3u8 -#EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 -http://121.19.134.222:808/tsfile/live/1037_1.m3u8 +http://139.129.231.228:3529/rtp/239.21.1.170:5002 #EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010106/1.m3u8 #EXTINF:-1 tvg-name="金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰纪实.png" group-title="☘️湖南频道",金鹰纪实 @@ -2043,8 +2189,8 @@ http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte. http://[2409:8087:74d9:21::6]/270000001128/9900000074/index.m3u8 #EXTINF:-1 tvg-name="湖南金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南金鹰纪实.png" group-title="☘️湖南频道",湖南金鹰纪实 http://220.170.241.204:9901/tsfile/live/1007_1.m3u8 -#EXTINF:-1 tvg-name="湖北综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北综合.png" group-title="☘️湖北频道",湖北综合 -http://119.36.148.115:59901/tsfile/live/1005_1.m3u8 +#EXTINF:-1 tvg-name="湖南金鹰纪实" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖南金鹰纪实.png" group-title="☘️湖南频道",湖南金鹰纪实 +http://livetv.wqwqwq.sbs/itv/5000000011000031203.m3u8?cdn=bestzb #EXTINF:-1 tvg-name="湖北综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北综合.png" group-title="☘️湖北频道",湖北综合 http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN638072216f7da/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUUAdKgLqNB5aOAUhcp5CeNLx3R3LdIBdA5q61lut1LwZcw4SC2tJubc%2Bq5t%2F61jvWCtjrJL0x%2BHncPgdmcbBW9I #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 @@ -2052,14 +2198,14 @@ http://183.94.1.118:8801/tsfile/live/1017_1.m3u8 #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 http://58.19.43.46:9901/tsfile/live/1017_1.m3u8 #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 -http://119.36.148.115:59901/tsfile/live/1004_1.m3u8 -#EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 -http://119.36.148.115:59901/tsfile/live/1004_1.m3u8?key=txiptv -#EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 http://59.173.243.210:9901/tsfile/live/1019_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 http://59.173.243.210:9901/tsfile/live/1019_1.m3u8 #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 +http://113.57.93.165:9900/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 +http://113.57.93.165:9900/tsfile/live/1017_1.m3u8 +#EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 http://220.249.114.102:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北经视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北经视.png" group-title="☘️湖北频道",湖北经视 http://220.249.114.102:9901/tsfile/live/1007_1.m3u8 @@ -2088,8 +2234,6 @@ http://220.249.114.102:9901/tsfile/live/1010_1.m3u8 #EXTINF:-1 tvg-name="湖北公共新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北公共新闻.png" group-title="☘️湖北频道",湖北公共新闻 http://59.173.243.210:9901/tsfile/live/1034_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北公共.png" group-title="☘️湖北频道",湖北公共 -http://119.36.148.115:59901/tsfile/live/1007_1.m3u8 -#EXTINF:-1 tvg-name="湖北公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北公共.png" group-title="☘️湖北频道",湖北公共 http://59.173.243.210:9901/tsfile/live/1034_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北公共.png" group-title="☘️湖北频道",湖北公共 http://59.173.243.210:9901/tsfile/live/1034_1.m3u8 @@ -2100,17 +2244,15 @@ http://220.249.114.102:9901/tsfile/live/1006_1.m3u8 #EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 http://58.19.43.46:9901/tsfile/live/1015_1.m3u8 #EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 -http://119.36.148.115:59901/tsfile/live/1006_1.m3u8 -#EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 http://59.173.243.210:9901/tsfile/live/1031_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 http://59.173.243.210:9901/tsfile/live/1031_1.m3u8 #EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 http://220.249.114.102:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 -http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN638072463c333/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUUAdKgLqNB5aOAUhcp5CeNL%2Be1h4FfA5QqwJ7IPOz3p2qIS7djSxm17Htd%2FckZkm%2FVqsKHEJFJt26ju9iibzMEo -#EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 http://220.249.114.102:9901/tsfile/live/1009_1.m3u8 +#EXTINF:-1 tvg-name="湖北垄上" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/湖北垄上.png" group-title="☘️湖北频道",湖北垄上 +http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN638072463c333/index.m3u8?AuthInfo=9kOOdBn7MFF%2F2bWjKgahUUAdKgLqNB5aOAUhcp5CeNL%2Be1h4FfA5QqwJ7IPOz3p2qIS7djSxm17Htd%2FckZkm%2FVqsKHEJFJt26ju9iibzMEo #EXTINF:-1 tvg-name="武汉一台新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉一台新闻综合.png" group-title="☘️湖北频道",武汉一台新闻综合 http://59.173.243.210:9901/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="武汉一台新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉一台新闻综合.png" group-title="☘️湖北频道",武汉一台新闻综合 @@ -2123,6 +2265,12 @@ http://59.173.243.210:9901/tsfile/live/1038_1.m3u8 http://59.173.243.210:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="武汉三台科技生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉三台科技生活.png" group-title="☘️湖北频道",武汉三台科技生活 http://59.173.243.210:9901/tsfile/live/1002_1.m3u8 +#EXTINF:-1 tvg-name="武汉四台经济" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉四台经济.png" group-title="☘️湖北频道",武汉四台经济 +http://stream.appwuhan.com/4tzb/sd/live.m3u8 +#EXTINF:-1 tvg-name="武汉五台文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉五台文体.png" group-title="☘️湖北频道",武汉五台文体 +http://stream.appwuhan.com/5tzb/sd/live.m3u8 +#EXTINF:-1 tvg-name="武汉六台外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉六台外语.png" group-title="☘️湖北频道",武汉六台外语 +http://stream.appwuhan.com/6tzb/sd/live.m3u8 #EXTINF:-1 tvg-name="武汉1新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉1新闻综合.png" group-title="☘️湖北频道",武汉1新闻综合 http://59.173.243.210:9901/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="武汉2电视剧" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉2电视剧.png" group-title="☘️湖北频道",武汉2电视剧 @@ -2133,18 +2281,20 @@ http://59.173.243.210:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid= http://59.173.243.210:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="武汉教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉教育.png" group-title="☘️湖北频道",武汉教育 http://59.173.243.210:9901/tsfile/live/1001_1.m3u8 +#EXTINF:-1 tvg-name="武汉经济" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉经济.png" group-title="☘️湖北频道",武汉经济 +http://stream.appwuhan.com/4tzb/sd/live.m3u8 +#EXTINF:-1 tvg-name="武汉文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉文体.png" group-title="☘️湖北频道",武汉文体 +http://stream.appwuhan.com/5tzb/sd/live.m3u8 +#EXTINF:-1 tvg-name="武汉外语" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉外语.png" group-title="☘️湖北频道",武汉外语 +http://stream.appwuhan.com/6tzb/sd/live.m3u8 #EXTINF:-1 tvg-name="江夏新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/江夏新闻综合.png" group-title="☘️湖北频道",江夏新闻综合 http://59.175.226.142:280/gb28181/xwzh.m3u8?zhubd -#EXTINF:-1 tvg-name="十堰新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/十堰新闻.png" group-title="☘️湖北频道",十堰新闻 -https://p8.vzan.com/slowlive/034028687228317362/live.m3u8?zbid=351104&tpid=868100086 -#EXTINF:-1 tvg-name="十堰新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/十堰新闻.png" group-title="☘️湖北频道",十堰新闻 -https://p8.vzan.com/slowlive/034028687228317362/live.m3u8 -#EXTINF:-1 tvg-name="十堰新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/十堰新闻.png" group-title="☘️湖北频道",十堰新闻 -http://p8.vzan.com/slowlive/034028687228317362/live.m3u8 #EXTINF:-1 tvg-name="荆门新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/荆门新闻综合.png" group-title="☘️湖北频道",荆门新闻综合 http://stream.jmtv.com.cn/xwzh/sd/live.m3u8 #EXTINF:-1 tvg-name="荆门新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/荆门新闻综合.png" group-title="☘️湖北频道",荆门新闻综合 http://stream.jmtv.com.cn/xwzh/sd/live.m3u8?zhubd +#EXTINF:-1 tvg-name="武汉新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武汉新闻.png" group-title="☘️湖北频道",武汉新闻 +http://stream.appwuhan.com/1tzb/sd/live.m3u8 #EXTINF:-1 tvg-name="潜江综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/潜江综合.png" group-title="☘️湖北频道",潜江综合 http://hbqjdb.chinashadt.com:2035/live/3.stream/playlist.m3u8 #EXTINF:-1 tvg-name="南宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/南宁公共.png" group-title="☘️广西频道",南宁公共 @@ -2192,13 +2342,13 @@ http://play.jinnantv.top/live/JNTV1.m3u8?ztianjd #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 http://112.46.85.60:8009/hls/44/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 -http://36.32.174.67:60080/newlive/live/hls/26/live.m3u8 +http://221.224.4.170:1111/tsfile/live/0135_1.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 -http://59.48.75.130:3052/tsfile/live/0116_1.m3u8 +http://101.66.199.54:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 -http://111.61.236.247:9081/hls/29/index.m3u8 +http://113.140.86.162:8009/hls/44/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 -http://202.100.46.58:9901/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0 +http://113.57.111.4:1111/tsfile/live/1024_1.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010069/index.m3u8 #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 @@ -2210,27 +2360,29 @@ http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226191/index.m3u #EXTINF:-1 tvg-name="天津卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天津卫视.png" group-title="☘️天津频道",天津卫视 http://[2409:8087:1a0a:df::4036]:80/wh7f454c46tw2843203949_-1782618395/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226459/index.m3u8?icpid=88888888&RTS=1713969672&from=4&hms_devid=1209&online=1713969672&vqe=3 #EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️四川频道",万源新闻综合 -http://live.wanyuannews.com:80/wytv/hd/live.m3u8 -#EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️四川频道",万源新闻综合 http://live.wanyuannews.com/wytv/hd/live.m3u8 #EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️四川频道",万源新闻综合 http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd +#EXTINF:-1 tvg-name="万源新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/万源新闻综合.png" group-title="☘️四川频道",万源新闻综合 +http://live.wanyuannews.com:80/wytv/hd/live.m3u8 #EXTINF:-1 tvg-name="乐至综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/乐至综合.png" group-title="☘️四川频道",乐至综合 http://175.155.106.72:89/live1/live1.m3u8 #EXTINF:-1 tvg-name="乐至综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/乐至综合.png" group-title="☘️四川频道",乐至综合 http://175.155.106.72:89/live1/live1.m3u8?zsicd #EXTINF:-1 tvg-name="利州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/利州综合.png" group-title="☘️四川频道",利州综合 +http://tvfile.lzgbdst.com:80/nmip-media/channellive/channel106876/playlist.m3u8 +#EXTINF:-1 tvg-name="利州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/利州综合.png" group-title="☘️四川频道",利州综合 http://tvfile.lzgbdst.com/nmip-media/channellive/channel106876/playlist.m3u8 #EXTINF:-1 tvg-name="利州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/利州综合.png" group-title="☘️四川频道",利州综合 http://tvfile.lzgbdst.com/nmip-media/channellive/channel106876/playlist.m3u8?zsicd -#EXTINF:-1 tvg-name="利州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/利州综合.png" group-title="☘️四川频道",利州综合 -http://tvfile.lzgbdst.com:80/nmip-media/channellive/channel106876/playlist.m3u8 -#EXTINF:-1 tvg-name="双流综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/双流综合.png" group-title="☘️四川频道",双流综合 -http://171.221.250.130:18888/27e684978eb642eeb90ab815f6cc51bf/c41893de5e8645b3b43aef1640859b0d.m3u8?zsicd #EXTINF:-1 tvg-name="叙州新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/叙州新闻综合.png" group-title="☘️四川频道",叙州新闻综合 http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8 #EXTINF:-1 tvg-name="叙州新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/叙州新闻综合.png" group-title="☘️四川频道",叙州新闻综合 http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd +#EXTINF:-1 tvg-name="夹江新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/夹江新闻综合.png" group-title="☘️四川频道",夹江新闻综合 +http://tvfile.jjrm.org.cn/nmip-media/channellive/channel106282/playlist.m3u8 +#EXTINF:-1 tvg-name="夹江新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/夹江新闻综合.png" group-title="☘️四川频道",夹江新闻综合 +http://tvfile.jjrm.org.cn/nmip-media/channellive/channel106282/playlist.m3u8?zsicd #EXTINF:-1 tvg-name="岳池新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/岳池新闻综合.png" group-title="☘️四川频道",岳池新闻综合 http://liveyc.cmc.yuechirmt.cn:80/live/yctv.m3u8?auth_key=1714112398-0-0-d9a6bd74623c01c1c2f9576fe51e8b7b #EXTINF:-1 tvg-name="广元公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广元公共.png" group-title="☘️四川频道",广元公共 @@ -2240,7 +2392,7 @@ https://m3u8.channel.dzsm.com/nmip-media/channellive/channel100999/playlist.m3u8 #EXTINF:-1 tvg-name="康巴卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/康巴卫视.png" group-title="☘️四川频道",康巴卫视 http://139.196.151.191:7008/rtp/239.45.1.251:5140 #EXTINF:-1 tvg-name="康巴卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/康巴卫视.png" group-title="☘️四川频道",康巴卫视 -http://218.89.240.144:59901/tsfile/live/1010_1.m3u8 +http://139.196.151.191:2051/rtp/239.45.1.251:5140 #EXTINF:-1 tvg-name="康巴卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/康巴卫视.png" group-title="☘️四川频道",康巴卫视 http://[2409:8087:74d9:21::6]:80/270000001128/9900000066/index.m3u8 #EXTINF:-1 tvg-name="康巴卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/康巴卫视.png" group-title="☘️四川频道",康巴卫视 @@ -2279,6 +2431,8 @@ http://live.iwcmt.cn:90/live/zhxw.m3u8?zsicd rtmp://tv.mcrm.org.cn:1935/channellive/tv01 #EXTINF:-1 tvg-name="沐川综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/沐川综合.png" group-title="☘️四川频道",沐川综合 http://tvfile.swrmt.com:80/nmip-media/channellive/channel100064/playlist.m3u8 +#EXTINF:-1 tvg-name="沐川综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/沐川综合.png" group-title="☘️四川频道",沐川综合 +http://file.ysxtv.cn/cms/videos/nmip-media/channellive/channel4/playlist.m3u8?zsicd #EXTINF:-1 tvg-name="沙湾综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/沙湾综合.png" group-title="☘️四川频道",沙湾综合 http://tvfile.swrmt.com:80/nmip-media/channellive/channel100064/playlist.m3u8 #EXTINF:-1 tvg-name="营山电视台" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/营山电视台.png" group-title="☘️四川频道",营山电视台 @@ -2293,24 +2447,8 @@ http://cnpull.sccnfb.com:80/live/123456.m3u8 https://live-pull.newslqy.com/live/fmzb1682404988829.m3u8 #EXTINF:-1 tvg-name="陕西农林卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西农林卫视.png" group-title="☘️陕西频道",陕西农林卫视 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000072/index.m3u8?IASHttpSessionId= -#EXTINF:-1 tvg-name="陕西新闻资讯" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西新闻资讯.png" group-title="☘️陕西频道",陕西新闻资讯 -http://gxlive.snrtv.com/sx1-SD.m3u8 -#EXTINF:-1 tvg-name="陕西都市青春" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西都市青春.png" group-title="☘️陕西频道",陕西都市青春 -http://gxlive.snrtv.com/sx2-SD.m3u8 -#EXTINF:-1 tvg-name="陕西生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西生活.png" group-title="☘️陕西频道",陕西生活 -http://gxlive.snrtv.com/sx3-SD.m3u8 -#EXTINF:-1 tvg-name="陕西公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西公共.png" group-title="☘️陕西频道",陕西公共 -http://gxlive.snrtv.com/sx5-SD.m3u8 -#EXTINF:-1 tvg-name="陕西体育休闲" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西体育休闲.png" group-title="☘️陕西频道",陕西体育休闲 -http://gxlive.snrtv.com/sx7-SD.m3u8 -#EXTINF:-1 tvg-name="陕西影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/陕西影视.png" group-title="☘️陕西频道",陕西影视 -http://gxlive.snrtv.com/sx4-SD.m3u8 -#EXTINF:-1 tvg-name="三明新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三明新闻综合.png" group-title="☘️福建频道",三明新闻综合 -http://fjnhdb.chinashadt.com:2036/live/stream:nh2.stream/playlist.m3u8?zfud -#EXTINF:-1 tvg-name="云霄综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/云霄综合.png" group-title="☘️福建频道",云霄综合 -http://live.zzyxxw.com:85/live/xwzh.m3u8 -#EXTINF:-1 tvg-name="云霄综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/云霄综合.png" group-title="☘️福建频道",云霄综合 -http://live.zzyxxw.com:85/live/xwzh.m3u8?fujian +#EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 +http://60.208.61.2:352/tsfile/live/0119_1.m3u8 #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 http://202.100.46.58:9901/tsfile/live/1040_1.m3u8 #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 @@ -2318,9 +2456,7 @@ http://202.100.46.58:9901/tsfile/live/1040_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 http://31182.hlsplay.aodianyun.com/lms_31182/tv_channel_175.m3u8?zfud #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 -https://live1b.kxm.xmtv.cn/xmtvbf/tvzb/live.m3u8 -#EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 -https://live1b.kxm.xmtv.cn/xmtvbf/playlist.m3u8 +http://113.195.45.40:9901/tsfile/live/0129_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000005000266006/1.m3u8 #EXTINF:-1 tvg-name="厦门卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/厦门卫视.png" group-title="☘️福建频道",厦门卫视 @@ -2371,50 +2507,10 @@ http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte. http://[2408:871a:a900:6::77]:80/tvcdn.stream3.hndt.com/tv/65b67b15017e1000258a2b2400000000_transios/playlist.m3u8?wsSecret=6ace983a5351a82e66c1a76642e4083f&wsTime=1735147790&wsSession=c91d5104cbdc8a99e2dbf62e-173513339044152&wsIPSercert=c413851655943ef8d7db7cf82c283349&wsiphost=local&wsBindIP=1 #EXTINF:-1 tvg-name="梨园" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/梨园.png" group-title="☘️河南频道",梨园 http://[2408:871a:a900:6::77]/tvcdn.stream3.hndt.com/tv/65b67b15017e1000258a2b2400000000_transios/playlist.m3u8?wsSecret=6ace983a5351a82e66c1a76642e4083f&wsTime=1735147790&wsSession=c91d5104cbdc8a99e2dbf62e-173513339044152&wsIPSercert=c413851655943ef8d7db7cf82c283349&wsiphost=local&wsBindIP=1 -#EXTINF:-1 tvg-name="义马新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/义马新闻综合.png" group-title="☘️河南频道",义马新闻综合 -http://live.dxhmt.cn:9081/tv/11281-1.m3u8 -#EXTINF:-1 tvg-name="兰考新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/兰考新闻.png" group-title="☘️河南频道",兰考新闻 -http://live.dxhmt.cn:9081/tv/10225-1.m3u8 -#EXTINF:-1 tvg-name="叶县" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/叶县.png" group-title="☘️河南频道",叶县 -http://live.dxhmt.cn:9081/tv/10422-1.m3u8 -#EXTINF:-1 tvg-name="周口扶沟" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/周口扶沟.png" group-title="☘️河南频道",周口扶沟 -http://live.dxhmt.cn:9081/tv/11621-1.m3u8 -#EXTINF:-1 tvg-name="唐河一套" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/唐河一套.png" group-title="☘️河南频道",唐河一套 -http://live.dxhmt.cn:9081/tv/11328-1.m3u8 -#EXTINF:-1 tvg-name="巩义新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/巩义新闻综合.png" group-title="☘️河南频道",巩义新闻综合 -http://live.dxhmt.cn:9081/tv/10181-1.m3u8 -#EXTINF:-1 tvg-name="泌阳新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/泌阳新闻综合.png" group-title="☘️河南频道",泌阳新闻综合 -http://live.dxhmt.cn:9081/tv/11726-1.m3u8 -#EXTINF:-1 tvg-name="淅川电视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/淅川电视.png" group-title="☘️河南频道",淅川电视 -http://live.dxhmt.cn:9081/tv/11326-1.m3u8 -#EXTINF:-1 tvg-name="渑池新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/渑池新闻综合.png" group-title="☘️河南频道",渑池新闻综合 -http://live.dxhmt.cn:9081/tv/11221-1.m3u8 -#EXTINF:-1 tvg-name="禹州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/禹州综合.png" group-title="☘️河南频道",禹州综合 -http://live.dxhmt.cn:9081/tv/11081-1.m3u8 -#EXTINF:-1 tvg-name="郸城新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/郸城新闻综合.png" group-title="☘️河南频道",郸城新闻综合 -http://live.dxhmt.cn:9081/tv/11625-1.m3u8 -#EXTINF:-1 tvg-name="邓州新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/邓州新闻.png" group-title="☘️河南频道",邓州新闻 -http://live.dxhmt.cn:9081/tv/11381-1.m3u8 -#EXTINF:-1 tvg-name="荥阳综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/荥阳综合.png" group-title="☘️河南频道",荥阳综合 -http://live.dxhmt.cn:9081/tv/10182-1.m3u8 -#EXTINF:-1 tvg-name="灵宝新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/灵宝新闻综合.png" group-title="☘️河南频道",灵宝新闻综合 -http://live.dxhmt.cn:9081/tv/11282-1.m3u8 -#EXTINF:-1 tvg-name="滑县新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/滑县新闻.png" group-title="☘️河南频道",滑县新闻 -http://live.dxhmt.cn:9081/tv/10526-1.m3u8 -#EXTINF:-1 tvg-name="济源电视一套" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济源电视一套.png" group-title="☘️河南频道",济源电视一套 -http://live.dxhmt.cn:9081/tv/19001-1.m3u8 #EXTINF:-1 tvg-name="河南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南都市.png" group-title="☘️河南频道",河南都市 http://171.14.89.179:9901/tsfile/live/1001_1.m3u8 #EXTINF:-1 tvg-name="河南民生" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河南民生.png" group-title="☘️河南频道",河南民生 http://171.14.89.179:9901/tsfile/live/1002_1.m3u8 -#EXTINF:-1 tvg-name="沁阳新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/沁阳新闻综合.png" group-title="☘️河南频道",沁阳新闻综合 -http://live.dxhmt.cn:9081/tv/10882-1.m3u8 -#EXTINF:-1 tvg-name="永城综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/永城综合.png" group-title="☘️河南频道",永城综合 -http://live.dxhmt.cn:9081/tv/11481-1.m3u8 -#EXTINF:-1 tvg-name="方城一套" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/方城一套.png" group-title="☘️河南频道",方城一套 -http://live.dxhmt.cn:9081/tv/11322-1.m3u8 -#EXTINF:-1 tvg-name="内乡综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/内乡综合.png" group-title="☘️河南频道",内乡综合 -http://live.dxhmt.cn:9081/tv/11325-1.m3u8 #EXTINF:-1 tvg-name="河北都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北都市.png" group-title="☘️河北频道",河北都市 http://121.19.134.222:808/tsfile/live/1001_1.m3u8 #EXTINF:-1 tvg-name="河北农民" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/河北农民.png" group-title="☘️河北频道",河北农民 @@ -2435,6 +2531,8 @@ https://play.kankanlive.com/live/1698724188723989.m3u8 https://play.kankanlive.com/live/1645680054929933.m3u8?zgand #EXTINF:-1 tvg-name="定西综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/定西综合.png" group-title="☘️甘肃频道",定西综合 https://play.kankanlive.com/live/1645679947087932.m3u8?zgand +#EXTINF:-1 tvg-name="岷县综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/岷县综合.png" group-title="☘️甘肃频道",岷县综合 +http://play.kankanlive.com/live/1614311581479927.m3u8?zgand #EXTINF:-1 tvg-name="张掖新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/张掖新闻综合.png" group-title="☘️甘肃频道",张掖新闻综合 https://play.kankanlive.com/live/1629709727589955.m3u8 #EXTINF:-1 tvg-name="景泰综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/景泰综合.png" group-title="☘️甘肃频道",景泰综合 @@ -2490,7 +2588,7 @@ http://218.84.127.245:1026/hls/main1/playlist.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="☘️新疆频道",新疆卫视 http://36.32.174.67:60080/newlive/live/hls/47/live.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="☘️新疆频道",新疆卫视 -http://59.48.75.130:3052/tsfile/live/1004_1.m3u8 +http://60.208.61.2:352/tsfile/live/0110_1.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="☘️新疆频道",新疆卫视 http://106.124.91.222:9901/tsfile/live/21212_1.m3u8 #EXTINF:-1 tvg-name="新疆卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新疆卫视.png" group-title="☘️新疆频道",新疆卫视 @@ -2510,19 +2608,37 @@ http://[2409:8087:1a0a:df::4038]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/322 #EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 http://221.0.78.198:1681/hls/10227/index.m3u8 #EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 -http://123.132.233.194:352/tsfile/live/1002_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8 +#EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 +http://139.129.231.228:3529/rtp/239.21.1.208:5002 +#EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8 #EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 http://123.129.70.178:9901/tsfile/live/1004_1.m3u8 #EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000340/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000340/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="山东少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东少儿.png" group-title="☘️山东频道",山东少儿 +http://144.52.160.109:9901/tsfile/live/1022_1.m3u8 #EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 http://60.208.61.2:352/tsfile/live/0141_1.m3u8 #EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 +http://60.210.100.54:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 +http://60.210.100.54:352/tsfile/live/1002_1.m3u8 +#EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 +http://139.129.231.228:3529/rtp/239.21.1.140:5002 +#EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8 +#EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 http://123.129.70.178:9901/tsfile/live/1000_1.m3u8 +#EXTINF:-1 tvg-name="山东新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东新闻.png" group-title="☘️山东频道",山东新闻 +http://144.52.160.109:9901/tsfile/live/1019_1.m3u8 #EXTINF:-1 tvg-name="山东国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东国际.png" group-title="☘️山东频道",山东国际 http://221.0.78.198:1681/hls/10228/index.m3u8 +#EXTINF:-1 tvg-name="山东国际" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东国际.png" group-title="☘️山东频道",山东国际 +http://139.129.231.228:3529/rtp/239.21.1.61:5002 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 http://221.0.78.198:1681/hls/10221/index.m3u8 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 @@ -2530,9 +2646,9 @@ http://livewai.sdetv.com.cn/live/da4ebbb91ee8468db5a9d230a535391f_transios/playl #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 http://120.238.94.10:9901/tsfile/live/1062_1.m3u8 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 -http://123.132.233.194:352/tsfile/live/1003_1.m3u8 +http://139.129.231.228:3529/rtp/239.21.1.169:5002 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 -http://121.19.134.222:808/tsfile/live/1033_1.m3u8 +http://183.11.239.36:808/hls/72/index.m3u8 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010112/1.m3u8 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 @@ -2544,45 +2660,65 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000067/index.m3u8 #EXTINF:-1 tvg-name="山东教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东教育.png" group-title="☘️山东频道",山东教育 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225655/index.m3u8 #EXTINF:-1 tvg-name="山东居家购物" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东居家购物.png" group-title="☘️山东频道",山东居家购物 +http://139.129.231.228:3529/rtp/239.21.1.112:5002 +#EXTINF:-1 tvg-name="山东居家购物" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东居家购物.png" group-title="☘️山东频道",山东居家购物 +http://144.52.160.109:9901/tsfile/live/1063_1.m3u8 +#EXTINF:-1 tvg-name="山东居家购物" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东居家购物.png" group-title="☘️山东频道",山东居家购物 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000700/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东居家购物" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东居家购物.png" group-title="☘️山东频道",山东居家购物 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000700/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东农科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东农科.png" group-title="☘️山东频道",山东农科 http://221.0.78.198:1681/hls/10223/index.m3u8 #EXTINF:-1 tvg-name="山东农科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东农科.png" group-title="☘️山东频道",山东农科 +http://139.129.231.228:3529/rtp/239.21.1.183:5002 +#EXTINF:-1 tvg-name="山东农科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东农科.png" group-title="☘️山东频道",山东农科 +http://144.52.160.109:9901/tsfile/live/1020_1.m3u8 +#EXTINF:-1 tvg-name="山东农科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东农科.png" group-title="☘️山东频道",山东农科 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000339/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东农科" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东农科.png" group-title="☘️山东频道",山东农科 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000339/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 http://221.0.78.198:1681/hls/10225/index.m3u8 #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8 #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8 +http://60.210.100.54:352/tsfile/live/1001_1.m3u8 #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 -http://123.129.70.178:9901/tsfile/live/0019_1.m3u8 +http://139.129.231.228:3529/rtp/239.21.1.134:5002 +#EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8 #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000313/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000313/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="山东齐鲁" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东齐鲁.png" group-title="☘️山东频道",山东齐鲁 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8 #EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 http://221.0.78.198:1681/hls/10226/index.m3u8 #EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 +http://139.129.231.228:3529/rtp/239.21.1.175:5002 +#EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 +http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 +http://221.2.148.205:8154/tsfile/live/1005_1.m3u8 +#EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 http://123.129.70.178:9901/tsfile/live/1002_1.m3u8 #EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000336/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000336/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="山东生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东生活.png" group-title="☘️山东频道",山东生活 +http://144.52.160.109:9901/tsfile/live/1023_1.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 http://221.0.78.198:1681/hls/10224/index.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 -http://123.132.233.194:352/tsfile/live/1001_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1022_1.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0 +http://139.129.231.228:3529/rtp/239.21.1.141:5002 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 +http://221.2.148.205:8154/tsfile/live/1006_1.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000315/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 @@ -2591,22 +2727,38 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN http://123.129.70.178:9901/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 http://123.129.70.178:9901/tsfile/live/1003_1.m3u8 +#EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="☘️山东频道",山东体育 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 http://60.208.61.2:352/tsfile/live/1004_1.m3u8 #EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 +http://139.129.231.228:3529/rtp/239.21.1.176:5002 +#EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 +http://221.2.148.205:8154/tsfile/live/1004_1.m3u8 +#EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 +http://144.52.160.109:9901/tsfile/live/1025_1.m3u8 +#EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000337/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东文旅" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东文旅.png" group-title="☘️山东频道",山东文旅 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000337/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 http://221.0.78.198:1681/hls/10220/index.m3u8 #EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1004_1.m3u8 #EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8 +http://60.210.100.54:352/tsfile/live/1003_1.m3u8 +#EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 +http://139.129.231.228:3529/rtp/239.21.1.177:5002 +#EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 +http://221.2.148.205:8154/tsfile/live/1003_1.m3u8 #EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000338/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000338/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8 +#EXTINF:-1 tvg-name="山东综艺" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东综艺.png" group-title="☘️山东频道",山东综艺 +http://144.52.160.109:9901/tsfile/live/1026_1.m3u8 #EXTINF:-1 tvg-name="济南新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南新闻综合.png" group-title="☘️山东频道",济南新闻综合 http://221.0.78.198:1681/hls/10279/index.m3u8 #EXTINF:-1 tvg-name="济南新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南新闻综合.png" group-title="☘️山东频道",济南新闻综合 @@ -2615,28 +2767,78 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00004000/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="济南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南都市.png" group-title="☘️山东频道",济南都市 http://221.0.78.198:1681/hls/10280/index.m3u8 +#EXTINF:-1 tvg-name="济南都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南都市.png" group-title="☘️山东频道",济南都市 +http://139.129.231.228:3529/rtp/239.21.1.63:5002 #EXTINF:-1 tvg-name="济南生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南生活.png" group-title="☘️山东频道",济南生活 http://221.0.78.198:1681/hls/10281/index.m3u8 +#EXTINF:-1 tvg-name="济南生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南生活.png" group-title="☘️山东频道",济南生活 +http://139.129.231.228:3529/rtp/239.21.1.64:5002 #EXTINF:-1 tvg-name="济南影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南影视.png" group-title="☘️山东频道",济南影视 http://221.0.78.198:1681/hls/10282/index.m3u8 +#EXTINF:-1 tvg-name="济南影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南影视.png" group-title="☘️山东频道",济南影视 +http://139.129.231.228:3529/rtp/239.21.1.65:5002 #EXTINF:-1 tvg-name="济南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南娱乐.png" group-title="☘️山东频道",济南娱乐 http://221.0.78.198:1681/hls/10283/index.m3u8 +#EXTINF:-1 tvg-name="济南娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南娱乐.png" group-title="☘️山东频道",济南娱乐 +http://139.129.231.228:3529/rtp/239.21.1.66:5002 #EXTINF:-1 tvg-name="济南少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南少儿.png" group-title="☘️山东频道",济南少儿 http://221.0.78.198:1681/hls/10285/index.m3u8 +#EXTINF:-1 tvg-name="济南少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南少儿.png" group-title="☘️山东频道",济南少儿 +http://139.129.231.228:3529/rtp/239.21.1.68:5002 #EXTINF:-1 tvg-name="济南商务" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南商务.png" group-title="☘️山东频道",济南商务 http://221.0.78.198:1681/hls/10284/index.m3u8 +#EXTINF:-1 tvg-name="济南商务" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南商务.png" group-title="☘️山东频道",济南商务 +http://139.129.231.228:3529/rtp/239.21.1.67:5002 #EXTINF:-1 tvg-name="济南教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南教育.png" group-title="☘️山东频道",济南教育 http://221.0.78.198:1681/hls/10286/index.m3u8 +#EXTINF:-1 tvg-name="济南教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南教育.png" group-title="☘️山东频道",济南教育 +http://139.129.231.228:3529/rtp/239.21.1.133:5002 +#EXTINF:-1 tvg-name="济南鲁中" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济南鲁中.png" group-title="☘️山东频道",济南鲁中 +http://139.129.231.228:3529/rtp/239.21.1.149:5002 #EXTINF:-1 tvg-name="青岛城阳" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青岛城阳.png" group-title="☘️山东频道",青岛城阳 http://pili-live-rtmp.56.i2863.com/i2863-56/live_56_307317.m3u8?shandd #EXTINF:-1 tvg-name="青州电视台文化旅游" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州电视台文化旅游.png" group-title="☘️山东频道",青州电视台文化旅游 +http://139.129.231.228:3529/rtp/239.21.1.231:5002 +#EXTINF:-1 tvg-name="青州电视台文化旅游" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州电视台文化旅游.png" group-title="☘️山东频道",青州电视台文化旅游 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00001057/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="青州电视台文化旅游" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州电视台文化旅游.png" group-title="☘️山东频道",青州电视台文化旅游 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00001057/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="青州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州综合.png" group-title="☘️山东频道",青州综合 +http://139.129.231.228:3529/rtp/239.21.1.232:5002 +#EXTINF:-1 tvg-name="青州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州综合.png" group-title="☘️山东频道",青州综合 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00001042/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="青州综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青州综合.png" group-title="☘️山东频道",青州综合 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00001042/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="济宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁公共.png" group-title="☘️山东频道",济宁公共 +http://111.14.181.15:9901/tsfile/live/1009_1.m3u8?key=tvbox6_com&playlive=1&authid=0 +#EXTINF:-1 tvg-name="济宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁公共.png" group-title="☘️山东频道",济宁公共 +http://111.14.181.15:9901/tsfile/live/1009_1.m3u8 +#EXTINF:-1 tvg-name="济宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁公共.png" group-title="☘️山东频道",济宁公共 +http://lives.jnnews.tv/video/s10001-JNTV3/index.m3u8?shandd +#EXTINF:-1 tvg-name="济宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁公共.png" group-title="☘️山东频道",济宁公共 +http://lives.jnnews.tv/video/s10001-JNTV3/index.m3u8 +#EXTINF:-1 tvg-name="济宁公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁公共.png" group-title="☘️山东频道",济宁公共 +http://139.129.231.228:3529/rtp/239.21.2.20:5002 +#EXTINF:-1 tvg-name="济宁图文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁图文.png" group-title="☘️山东频道",济宁图文 +http://lives.jnnews.tv/video/s10001-JNTV4/index.m3u8?shandd +#EXTINF:-1 tvg-name="济宁图文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁图文.png" group-title="☘️山东频道",济宁图文 +http://lives.jnnews.tv/video/s10001-JNTV4/index.m3u8 +#EXTINF:-1 tvg-name="济宁教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁教育.png" group-title="☘️山东频道",济宁教育 +http://lives.jnnews.tv/video/s10001-JNTV-2/index.m3u8?shandd +#EXTINF:-1 tvg-name="济宁教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁教育.png" group-title="☘️山东频道",济宁教育 +http://lives.jnnews.tv/video/s10001-JNTV-2/index.m3u8 +#EXTINF:-1 tvg-name="济宁教育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁教育.png" group-title="☘️山东频道",济宁教育 +http://139.129.231.228:3529/rtp/239.21.1.139:5002 +#EXTINF:-1 tvg-name="济宁新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁新闻综合.png" group-title="☘️山东频道",济宁新闻综合 +http://lives.jnnews.tv/video/s10001-JNTV-1/index.m3u8 +#EXTINF:-1 tvg-name="济宁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁综合.png" group-title="☘️山东频道",济宁综合 +http://111.14.181.15:9901/tsfile/live/1007_1.m3u8?key=tvbox6_com&playlive=1&authid=0 +#EXTINF:-1 tvg-name="济宁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁综合.png" group-title="☘️山东频道",济宁综合 +http://111.14.181.15:9901/tsfile/live/1007_1.m3u8 +#EXTINF:-1 tvg-name="济宁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁综合.png" group-title="☘️山东频道",济宁综合 +http://lives.jnnews.tv/video/s10001-JNTV-1/index.m3u8?shandd +#EXTINF:-1 tvg-name="济宁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/济宁综合.png" group-title="☘️山东频道",济宁综合 +http://139.129.231.228:3529/rtp/239.21.2.19:5002 #EXTINF:-1 tvg-name="威海一套新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/威海一套新闻综合.png" group-title="☘️山东频道",威海一套新闻综合 http://l1.weihai.tv:8081/hls/969O76hb22.m3u8 #EXTINF:-1 tvg-name="威海三套海洋" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/威海三套海洋.png" group-title="☘️山东频道",威海三套海洋 @@ -2653,6 +2855,8 @@ https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000262/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="日照新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/日照新闻综合.png" group-title="☘️山东频道",日照新闻综合 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000262/index.m3u8?IASHttpSessionId= +#EXTINF:-1 tvg-name="日照科教" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/日照科教.png" group-title="☘️山东频道",日照科教 +http://139.129.231.228:3529/rtp/239.21.1.80:5002 #EXTINF:-1 tvg-name="枣庄公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/枣庄公共.png" group-title="☘️山东频道",枣庄公共 http://stream.zztvzd.com/3/sd/live.m3u8?shandd #EXTINF:-1 tvg-name="枣庄公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/枣庄公共.png" group-title="☘️山东频道",枣庄公共 @@ -2661,6 +2865,12 @@ http://stream.zztvzd.com/3/sd/live.m3u8 http://stream.zztvzd.com/2/sd/live.m3u8?shandd #EXTINF:-1 tvg-name="枣庄新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/枣庄新闻综合.png" group-title="☘️山东频道",枣庄新闻综合 http://stream.zztvzd.com/1/sd/live.m3u8?shandd +#EXTINF:-1 tvg-name="淄博生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/淄博生活.png" group-title="☘️山东频道",淄博生活 +http://139.129.231.228:3529/rtp/239.21.1.109:5002 +#EXTINF:-1 tvg-name="淄博都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/淄博都市.png" group-title="☘️山东频道",淄博都市 +http://139.129.231.228:3529/rtp/239.21.1.83:5002 +#EXTINF:-1 tvg-name="滨州公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/滨州公共.png" group-title="☘️山东频道",滨州公共 +http://139.129.231.228:3529/rtp/239.21.1.119:5002 #EXTINF:-1 tvg-name="潍坊新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/潍坊新闻综合.png" group-title="☘️山东频道",潍坊新闻综合 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000215/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="潍坊新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/潍坊新闻综合.png" group-title="☘️山东频道",潍坊新闻综合 @@ -2670,6 +2880,8 @@ http://live.yantaitv.cn/live/e50f104a4ffe4a41b2217cbda534146f/d86092e69df94668b3 #EXTINF:-1 tvg-name="烟台公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/烟台公共.png" group-title="☘️山东频道",烟台公共 http://live.yantaitv.cn/live/e50f104a4ffe4a41b2217cbda534146f/d86092e69df94668b33390278b061700-1.m3u8?shandd #EXTINF:-1 tvg-name="烟台公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/烟台公共.png" group-title="☘️山东频道",烟台公共 +http://139.129.231.228:3529/rtp/239.21.1.117:5002 +#EXTINF:-1 tvg-name="烟台公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/烟台公共.png" group-title="☘️山东频道",烟台公共 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000281/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="烟台公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/烟台公共.png" group-title="☘️山东频道",烟台公共 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000281/index.m3u8?IASHttpSessionId= @@ -2695,28 +2907,16 @@ https://tvlive.ugoshop.com/ugotvlive/ugotv01.m3u8?auth_key=2312509421-0-0-f8f7e8 http://xkmspyxn.live.sxmty.com/live/hls/65072fcc05414062bf02088d2a2a77b2/9da977614b044ef59d11779e997a12f8-1.m3u8?zshanxd #EXTINF:-1 tvg-name="古县综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/古县综合.png" group-title="☘️山西频道",古县综合 https://l2fpdktp.live.sxmty.com/live/hls/e4c3b363cc4549788e2d983f403e07db/d99ce1eb686e41b9afc888110bd95aa7.m3u8?zshanxd -#EXTINF:-1 tvg-name="吉县新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉县新闻综合.png" group-title="☘️山西频道",吉县新闻综合 -http://jxlive.jxrmtzx.com:8091/live/xwzh.m3u8 -#EXTINF:-1 tvg-name="吉县新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吉县新闻综合.png" group-title="☘️山西频道",吉县新闻综合 -http://jxlive.jxrmtzx.com:8091/live/xwzh.m3u8?zshanxd #EXTINF:-1 tvg-name="定襄综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/定襄综合.png" group-title="☘️山西频道",定襄综合 http://lbyzztfe.live.sxmty.com/live/hls/645ff4c60e0a49f0a203abbd73dd8be9/0720e665f10f48e98c9639f4f492fb4a-1.m3u8 #EXTINF:-1 tvg-name="定襄综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/定襄综合.png" group-title="☘️山西频道",定襄综合 http://lbyzztfe.live.sxmty.com/live/hls/645ff4c60e0a49f0a203abbd73dd8be9/0720e665f10f48e98c9639f4f492fb4a-1.m3u8?zshanxd -#EXTINF:-1 tvg-name="定襄综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/定襄综合.png" group-title="☘️山西频道",定襄综合 -http://lbyzztfe.live.sxmty.com:80/live/hls/645ff4c60e0a49f0a203abbd73dd8be9/0720e665f10f48e98c9639f4f492fb4a-1.m3u8 -#EXTINF:-1 tvg-name="平遥新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/平遥新闻综合.png" group-title="☘️山西频道",平遥新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd #EXTINF:-1 tvg-name="怀仁综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/怀仁综合.png" group-title="☘️山西频道",怀仁综合 http://1yp7hc5p.live.sxmty.com/live/hls/bff8529922344209985b6e49baa9555a/efa2543628fc4a7ea93d3d6c975f77dc.m3u8?zshanxd -#EXTINF:-1 tvg-name="武乡新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/武乡新闻综合.png" group-title="☘️山西频道",武乡新闻综合 -http://60.220.198.84:81/0.m3u8 #EXTINF:-1 tvg-name="潞城新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/潞城新闻综合.png" group-title="☘️山西频道",潞城新闻综合 http://59.48.42.6:62204/lucheng.m3u8 #EXTINF:-1 tvg-name="潞城新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/潞城新闻综合.png" group-title="☘️山西频道",潞城新闻综合 http://59.48.42.6:62204/lucheng.m3u8?zshanxd -#EXTINF:-1 tvg-name="闻喜综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/闻喜综合.png" group-title="☘️山西频道",闻喜综合 -https://www.wxhcgbds.com:8081/channelTv/WXTV_1.m3u8?zshanxd #EXTINF:-1 tvg-name="阳曲综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/阳曲综合.png" group-title="☘️山西频道",阳曲综合 https://83awgyp5.live.sxmty.com/live/hls/6f6f4b36f9bd42628b718b595ba507ed/724b7e8907a8414d873eb2a2f69bfa18.m3u8?zshanxd #EXTINF:-1 tvg-name="高平综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/高平综合.png" group-title="☘️山西频道",高平综合 @@ -2759,10 +2959,6 @@ http://api2.52tb.xyz/info?id=587&token=20230405tndmhg http://112.30.194.221:20080/live/4b3024127d1c472986ccdcb454f81a9f/hls.m3u8 #EXTINF:-1 tvg-name="歙县综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/歙县综合.png" group-title="☘️安徽频道",歙县综合 http://112.30.194.221:20080/live/4b3024127d1c472986ccdcb454f81a9f/hls.m3u8?zanhd -#EXTINF:-1 tvg-name="黄山新闻综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黄山新闻综合.png" group-title="☘️安徽频道",黄山新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8?zanhd -#EXTINF:-1 tvg-name="黄山公共生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黄山公共生活.png" group-title="☘️安徽频道",黄山公共生活 -http://hslive.hsnewsnet.com/lsdream/iY92ady/1000/live.m3u8?zanhd #EXTINF:-1 tvg-name="岳西综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/岳西综合.png" group-title="☘️安徽频道",岳西综合 http://112.30.194.221:20080/live/b62955a9283f4c2ea8ccb96e8ac468bc/hls.m3u8 #EXTINF:-1 tvg-name="宿州科教" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宿州科教.png" group-title="☘️安徽频道",宿州科教 @@ -2800,6 +2996,8 @@ http://live.kanwz.net/ggpd/sd/live.m3u8 #EXTINF:-1 tvg-name="吴忠公共" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/吴忠公共.png" group-title="☘️宁夏频道",吴忠公共 http://live.kanwz.net/ggpd/sd/live.m3u8?zningxd #EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 +https://live.ybtvyun.com/video/s10006-2f92b9e0b123/index.m3u8 +#EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 http://live.ybtvyun.com/video/s10016-7e5f23de35df/index.m3u8 #EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 http://live.ybtvyun.com/video/s10006-28bc40431485/index.m3u8 @@ -2808,8 +3006,6 @@ http://live.ybtvyun.com/video/s10006-44f040627ca1/index.m3u8?zjild #EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 http://live.ybtvyun.com/video/s10016-6f0dfd97912f/index.m3u8 #EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 -http://live.ybtvyun.com/video/s10006-44f040627ca1/index.m3u8 -#EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226516/index.m3u8 #EXTINF:-1 tvg-name="延边卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/延边卫视.png" group-title="☘️吉林频道",延边卫视 http://[2409:8087:1a0b:df::4020]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226516/index.m3u8 @@ -2888,6 +3084,8 @@ http://livecdn.dmqhyadmin.com/hls/xjminhe.m3u8?zqinghd #EXTINF:-1 tvg-name="兴海综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/兴海综合.png" group-title="☘️青海频道",兴海综合 http://lived.dmqhyadmin.com/xhzhpd/sd/live.m3u8 #EXTINF:-1 tvg-name="黑龙江文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江文体.png" group-title="☘️黑龙江频道",黑龙江文体 +http://112.101.78.50:9901/tsfile/live/1009_1.m3u8 +#EXTINF:-1 tvg-name="黑龙江文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江文体.png" group-title="☘️黑龙江频道",黑龙江文体 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226239/index.m3u8? #EXTINF:-1 tvg-name="黑龙江文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江文体.png" group-title="☘️黑龙江频道",黑龙江文体 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226239/index.m3u8 @@ -2904,10 +3102,14 @@ http://[2409:8087:1a01:df::4025]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ #EXTINF:-1 tvg-name="黑龙江文体" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江文体.png" group-title="☘️黑龙江频道",黑龙江文体 http://[2409:8087:1a01:df::4077]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226239/index.m3u8 #EXTINF:-1 tvg-name="黑龙江新闻法治" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江新闻法治.png" group-title="☘️黑龙江频道",黑龙江新闻法治 +http://112.101.78.50:9901/tsfile/live/1010_1.m3u8 +#EXTINF:-1 tvg-name="黑龙江新闻法治" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江新闻法治.png" group-title="☘️黑龙江频道",黑龙江新闻法治 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226330/index.m3u8 #EXTINF:-1 tvg-name="黑龙江新闻法治" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江新闻法治.png" group-title="☘️黑龙江频道",黑龙江新闻法治 http://[2409:8087:1a01:df::4077]/PLTV/88888888/224/3221225967/index.m3u8 #EXTINF:-1 tvg-name="黑龙江影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江影视.png" group-title="☘️黑龙江频道",黑龙江影视 +http://112.101.78.50:9901/tsfile/live/1011_1.m3u8 +#EXTINF:-1 tvg-name="黑龙江影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江影视.png" group-title="☘️黑龙江频道",黑龙江影视 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226298/index.m3u8? #EXTINF:-1 tvg-name="黑龙江影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江影视.png" group-title="☘️黑龙江频道",黑龙江影视 http://[2409:8087:1a01:df::4077]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226298/index.m3u8 @@ -2918,6 +3120,8 @@ http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ #EXTINF:-1 tvg-name="黑龙江影视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江影视.png" group-title="☘️黑龙江频道",黑龙江影视 http://[2409:8087:1a01:df::4077]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226298/index.m3u8 #EXTINF:-1 tvg-name="黑龙江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江都市.png" group-title="☘️黑龙江频道",黑龙江都市 +http://112.101.78.50:9901/tsfile/live/1005_1.m3u8 +#EXTINF:-1 tvg-name="黑龙江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江都市.png" group-title="☘️黑龙江频道",黑龙江都市 http://[2409:8087:1a01:df::4055]:80/TVOD/88888888/224/3221225969/main.m3u8 #EXTINF:-1 tvg-name="黑龙江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江都市.png" group-title="☘️黑龙江频道",黑龙江都市 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226301/index.m3u8 @@ -2935,8 +3139,8 @@ http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/ http://[2409:8087:1a01:df::4077]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226301/index.m3u8 #EXTINF:-1 tvg-name="黑龙江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江都市.png" group-title="☘️黑龙江频道",黑龙江都市 http://[2409:8087:1a01:df::4025]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226301/1.m3u8 -#EXTINF:-1 tvg-name="黑龙江都市" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江都市.png" group-title="☘️黑龙江频道",黑龙江都市 -http://[2409:8087:1a01:df::4077]:80/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226301/1.m3u8 +#EXTINF:-1 tvg-name="黑龙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江少儿.png" group-title="☘️黑龙江频道",黑龙江少儿 +http://112.101.78.50:9901/tsfile/live/1007_1.m3u8 #EXTINF:-1 tvg-name="黑龙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江少儿.png" group-title="☘️黑龙江频道",黑龙江少儿 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226304/index.m3u8 #EXTINF:-1 tvg-name="黑龙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑龙江少儿.png" group-title="☘️黑龙江频道",黑龙江少儿 @@ -2999,8 +3203,6 @@ https://stream.hrbtv.net/shpd/sd/live.m3u8 http://stream.hrbtv.net/shpd/sd/live.m3u8 #EXTINF:-1 tvg-name="哈尔滨生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈尔滨生活.png" group-title="☘️黑龙江频道",哈尔滨生活 http://stream.hrbtv.net/shpd/sd/live.m3u8?zheild -#EXTINF:-1 tvg-name="哈尔滨生活" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈尔滨生活.png" group-title="☘️黑龙江频道",哈尔滨生活 -http://streamings.hrbtv.net/09e35fcca53542bfa24a6b34e0fc2ff8/h264_400k_ts/index.m3u8?type=hls_live_redirect #EXTINF:-1 tvg-name="哈尔滨娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈尔滨娱乐.png" group-title="☘️黑龙江频道",哈尔滨娱乐 https://stream.hrbtv.net/ylpd/sd/live.m3u8 #EXTINF:-1 tvg-name="哈尔滨娱乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/哈尔滨娱乐.png" group-title="☘️黑龙江频道",哈尔滨娱乐 @@ -3057,6 +3259,8 @@ http://mzitv.cn:32/tsfile/live/1016_1.m3u8 http://202.168.187.208:9089/tsfile/live/1009_1.m3u8 #EXTINF:-1 tvg-name="凤凰中文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰中文.png" group-title="🌊港·澳·台",凤凰中文 https://k44991.kylintv.tv/live/pxna_iphone.m3u8 +#EXTINF:-1 tvg-name="凤凰中文" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰中文.png" group-title="🌊港·澳·台",凤凰中文 +http://120.55.49.231:3095/rtp/233.50.200.191:5140 #EXTINF:-1 tvg-name="凤凰资讯" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰资讯.png" group-title="🌊港·澳·台",凤凰资讯 http://cdn3.132.us.kg/live/fhzx/stream.m3u8 #EXTINF:-1 tvg-name="凤凰资讯" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰资讯.png" group-title="🌊港·澳·台",凤凰资讯 @@ -3064,7 +3268,7 @@ https://k44991.kylintv.tv/live/pxinhd_iphone.m3u8 #EXTINF:-1 tvg-name="凤凰资讯" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰资讯.png" group-title="🌊港·澳·台",凤凰资讯 http://61.221.215.25:8800/hls/47/index.m3u8 #EXTINF:-1 tvg-name="凤凰资讯" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/凤凰资讯.png" group-title="🌊港·澳·台",凤凰资讯 -http://udnhls.skilldns.com:80/fhzx-cn.m3u8 +http://120.55.49.231:3095/rtp/233.50.200.192:5140 #EXTINF:-1 tvg-name="TVBS亚洲" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/TVBS亚洲.png" group-title="🌊港·澳·台",TVBS亚洲 http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8 #EXTINF:-1 tvg-name="TVBS亚洲" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/TVBS亚洲.png" group-title="🌊港·澳·台",TVBS亚洲 @@ -3084,6 +3288,12 @@ http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8 #EXTINF:-1 tvg-name="TVBS亚洲" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/TVBS亚洲.png" group-title="🌊港·澳·台",TVBS亚洲 http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 +rtmp://f13h.mine.nu/sat/tv721 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 +rtmp://f13h.mine.nu:1935/sat/tv721 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 +rtmp://f13h.mine.nu/sat/tv771 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 https://cdn.iptv8k.top/dl/jrys.php?id=291&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40 @@ -3092,12 +3302,6 @@ http://61.173.144.157:9901/tsfile/live/1010_1.m3u8 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 http://ku9.fr.to/smt.php?id=videolandsport #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 -rtmp://f13h.mine.nu/sat/tv721 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 -rtmp://f13h.mine.nu:1935/sat/tv721 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 -rtmp://f13h.mine.nu/sat/tv771 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 https://cloud.yumixiu768.com/tmp/123.m3u8 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🌊港·澳·台",纬来体育 https://cloud.yumixiu768.com:443/tmp/123.m3u8 @@ -3106,6 +3310,8 @@ rtmp://f13h.mine.nu/sat/tv701 #EXTINF:-1 tvg-name="纬来育乐" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来育乐.png" group-title="🌊港·澳·台",纬来育乐 rtmp://220.130.201.73/sat/tv701 #EXTINF:-1 tvg-name="Viutv" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/Viutv.png" group-title="🌊港·澳·台",Viutv +https://turkmedya-live.ercdn.net/tv360/tv360.m3u8 +#EXTINF:-1 tvg-name="Viutv" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/Viutv.png" group-title="🌊港·澳·台",Viutv https://live.hkdvb.com/hls/live/99.m3u8?token=631170156112507&edge=live.tvfree.sbs #EXTINF:-1 tvg-name="三立新闻" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三立新闻.png" group-title="🌊港·澳·台",三立新闻 https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV32.m3u8 @@ -3114,6 +3320,8 @@ https://cdn.iptv8k.top/dl/jrys.php?id=220&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="东森综合" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森综合.png" group-title="🌊港·澳·台",东森综合 https://cdn.iptv8k.top/dl/jrys.php?id=221&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🌊港·澳·台",东森超视 +rtmp://f13h.mine.nu/sat/tv331 +#EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🌊港·澳·台",东森超视 https://cdn.iptv8k.top/dl/jrys.php?id=216&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🌊港·澳·台",东森超视 https://cdn.iptv8k.top/dl/jrys.php?id=217&time=20240926215313&ip=111.229.253.40 @@ -3121,8 +3329,6 @@ https://cdn.iptv8k.top/dl/jrys.php?id=217&time=20240926215313&ip=111.229.253.40 http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🌊港·澳·台",东森超视 http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8 -#EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🌊港·澳·台",东森超视 -rtmp://f13h.mine.nu/sat/tv331 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 https://www.freetv.top/migu/644368373.m3u8?migutoken=b9d9d0ba0208e949cf0736455b86290b2d1d2ff4727f523b7117dde6eb883cb4582c5ce1519685e57d54bfb562057c10a00dde58bb674d8600fd2d918b8cb440294e083e7b8f19e0dbcc9250d8 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 @@ -3130,9 +3336,9 @@ http://110.53.52.63:8888/newlive/live/hls/51/live.m3u8 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=chcjtdy #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 -http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8 +http://58.19.38.162:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 -http://59.173.243.210:9901/tsfile/live/1031_1.m3u8 +http://58.19.38.162:9901/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 http://[2409:8087:4c0a:22:1::11]:6410/170000001115/UmaiCHAN63807601b19dd/index.m3u8?m3u8_level=2 #EXTINF:-1 tvg-name="CHC家庭影院" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC家庭影院.png" group-title="🎬电影频道",CHC家庭影院 @@ -3148,6 +3354,10 @@ https://www.freetv.top/migu/644368714.m3u8?migutoken=2e48d18419793654f347e8ca29e #EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=chcdzdy #EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 +http://58.19.38.162:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 +http://58.19.38.162:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 http://59.173.243.210:9901/tsfile/live/1012_1.m3u8 #EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225661/index.m3u8 @@ -3159,10 +3369,8 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000106/index.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002030/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 http://[2409:8087:74d9:21::6]/270000001128/9900000106/index.m3u8 -#EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 -http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000004000018653/1.m3u8 -#EXTINF:-1 tvg-name="CHC动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC动作电影.png" group-title="🎬电影频道",CHC动作电影 -http://[2409:8087:1a01:df::4021]:80/TVOD/88888888/224/3221225555/main.m3u8 +#EXTINF:-1 tvg-name="CHC高清电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC高清电影.png" group-title="🎬电影频道",CHC高清电影 +http://58.19.38.162:9901/tsfile/live/1038_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="CHC高清电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CHC高清电影.png" group-title="🎬电影频道",CHC高清电影 http://220.249.114.102:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="NewTV惊悚悬疑" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/NewTV惊悚悬疑.png" group-title="🎬电影频道",NewTV惊悚悬疑 @@ -3197,6 +3405,8 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000004000018653/1.m3u8 http://[2409:8087:74d9:21::6]/270000001128/9900000106/index.m3u8 #EXTINF:-1 tvg-name="NewTV动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/NewTV动作电影.png" group-title="🎬电影频道",NewTV动作电影 http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000004000018653/index.m3u8?channel-id=ystenlive&Contentid=1000000004000018653&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="NewTV动作电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/NewTV动作电影.png" group-title="🎬电影频道",NewTV动作电影 +http://[2409:8087:5e00:24::2d]:6610/000000001000/1/1000000004000018653/index.m3u8?channel-id=ystenlive&Contentid=1000000004000018653&livemode=1&stbId=YanG-1989 #EXTINF:-1 tvg-name="黑莓电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑莓电影.png" group-title="🎬电影频道",黑莓电影 http://[2409:8087:5e00:24::1e]:6060/000000001000/8785669936177902664/1.m3u8 #EXTINF:-1 tvg-name="黑莓电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑莓电影.png" group-title="🎬电影频道",黑莓电影 @@ -3218,23 +3428,25 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/1000000004000019624/1.m3u8 #EXTINF:-1 tvg-name="黑莓电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑莓电影.png" group-title="🎬电影频道",黑莓电影 http://[2409:8087:74d9:21::6]:80/270000001128/9900000095/index.m3u8 #EXTINF:-1 tvg-name="经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/经典电影.png" group-title="🎬电影频道",经典电影 -http://59.48.75.130:3052/tsfile/live/1001_1.m3u8?key=tvbox6_com&playlive=1&authid=0 -#EXTINF:-1 tvg-name="经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/经典电影.png" group-title="🎬电影频道",经典电影 -http://59.48.75.130:3052/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 +http://183.66.15.146:60901/tsfile/live/0111_2.m3u8 #EXTINF:-1 tvg-name="经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/经典电影.png" group-title="🎬电影频道",经典电影 http://58.19.43.46:9901/tsfile/live/1012_1.m3u8 #EXTINF:-1 tvg-name="经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/经典电影.png" group-title="🎬电影频道",经典电影 http://120.238.94.10:9901/tsfile/live/1040_1.m3u8 #EXTINF:-1 tvg-name="经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/经典电影.png" group-title="🎬电影频道",经典电影 -http://183.66.15.146:60901/tsfile/live/0111_2.m3u8 +http://144.52.160.109:9901/tsfile/live/1075_1.m3u8 +#EXTINF:-1 tvg-name="IPTV经典电影" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/IPTV经典电影.png" group-title="🎬电影频道",IPTV经典电影 +http://139.129.231.228:3529/rtp/239.21.1.124:5002 #EXTINF:-1 tvg-name="无线星河" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/无线星河.png" group-title="🎬电影频道",无线星河 https://www.mytvsuper.xyz/tvb/xinghe/stream.m3u8 #EXTINF:-1 tvg-name="星空卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/星空卫视.png" group-title="🎬电影频道",星空卫视 http://122.224.58.42:85/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="星空卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/星空卫视.png" group-title="🎬电影频道",星空卫视 -http://quan2018.mycloudnas.com:51888/play/a016/index.m3u8 -#EXTINF:-1 tvg-name="星空卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/星空卫视.png" group-title="🎬电影频道",星空卫视 http://218.202.220.2:5000/nn_live.ts?id=STARTV +#EXTINF:-1 tvg-name="星空卫视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/星空卫视.png" group-title="🎬电影频道",星空卫视 +http://quan2018.mycloudnas.com:51888/play/a016/index.m3u8 +#EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🎬电影频道",东森超视 +rtmp://f13h.mine.nu/sat/tv331 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🎬电影频道",东森超视 https://cdn.iptv8k.top/dl/jrys.php?id=216&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🎬电影频道",东森超视 @@ -3243,8 +3455,6 @@ https://cdn.iptv8k.top/dl/jrys.php?id=217&time=20240926215313&ip=111.229.253.40 http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8 #EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🎬电影频道",东森超视 http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8 -#EXTINF:-1 tvg-name="东森超视" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/东森超视.png" group-title="🎬电影频道",东森超视 -rtmp://f13h.mine.nu/sat/tv331 #EXTINF:-1 tvg-name="咪咕直播1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/咪咕直播1.png" group-title="🎥咪咕直播",咪咕直播1 http://[2409:8087:1a01:df::404d]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226124/index.m3u8 #EXTINF:-1 tvg-name="咪咕直播1" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/咪咕直播1.png" group-title="🎥咪咕直播",咪咕直播1 @@ -3346,15 +3556,15 @@ http://[2409:8087:5e08:24::15]:6610/000000001000/3000000020000011530/index.m3u8? #EXTINF:-1 tvg-name="咪咕直播45" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/咪咕直播45.png" group-title="🎥咪咕直播",咪咕直播45 http://[2409:8087:5e08:24::15]:6610/000000001000/3000000020000011531/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011531&livemode=1&stbId=3 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 +http://112.46.85.60:8009/hls/503/index.m3u8 +#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 +http://221.224.4.170:1111/tsfile/live/0005_1.m3u8 +#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 http://z.b.bkpcp.top/m.php?id=cctv5 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 https://www.freetv.top/migu/641886683.m3u8?migutoken=3e5c01f93922de8d1c940fe15bb47349b27e8f7a2e624dde1a83dff3b2a80f58b7624151a3a4d00488edee34f202818557340903382fae02bb754084eb942bd50e59061df36fab62fb5b908903 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078403.m3u8 -#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 -http://183.94.1.118:8801/tsfile/live/0005_1.m3u8 -#EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 -http://112.46.85.60:8009/hls/503/index.m3u8 +http://101.66.199.54:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 http://[2409:8087:5e01:34::21]:6610/ZTE_CMS/00000001000000060000000000000461/index.m3u8?key=tvbox6_com #EXTINF:-1 tvg-name="CCTV5" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5.png" group-title="🏀体育频道",CCTV-5 @@ -3370,9 +3580,9 @@ http://z.b.bkpcp.top/m.php?id=cctv5p #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="🏀体育频道",CCTV-5+ https://www.freetv.top/migu/641886773.m3u8?migutoken=03a1b82e35e58cd89a95034ecb29e77e50493397000ec2b1e4d1ce59af01e6420d6dbc068c8230ec03be3a35a20eed8714e0959e3570a08713a7a2e8d86085eabf8f1aa85744c80c38343988b2 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="🏀体育频道",CCTV-5+ -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024078003.m3u8 +http://221.0.78.198:1681/hls/10217/index.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="🏀体育频道",CCTV-5+ -https://api.olelive.com/dis/live/CCTV5PHD/hls.m3u8 +http://60.208.61.2:352/tsfile/live/0016_1.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="🏀体育频道",CCTV-5+ http://58.221.214.82:9901/tsfile/live/0016_1.m3u8 #EXTINF:-1 tvg-name="CCTV5+" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV5+.png" group-title="🏀体育频道",CCTV-5+ @@ -3388,9 +3598,11 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 http://120.238.94.10:9901/tsfile/live/1012_1.m3u8 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 +http://183.11.239.36:808/hls/2/index.m3u8 +#EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 http://mzitv.cn:32/tsfile/live/1008_1.m3u8 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 -http://183.11.239.36:808/hls/2/index.m3u8 +http://121.33.239.242:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 http://120.77.205.62:8087/rtp/239.77.0.168:5146 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 @@ -3398,6 +3610,12 @@ http://120.77.205.62:8087/rtp/239.77.0.112:5146 #EXTINF:-1 tvg-name="广东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广东体育.png" group-title="🏀体育频道",广东体育 http://120.77.205.62:8087/rtp/239.77.1.97:5146 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 +rtmp://f13h.mine.nu/sat/tv721 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 +rtmp://f13h.mine.nu:1935/sat/tv721 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 +rtmp://f13h.mine.nu/sat/tv771 +#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 https://cdn.iptv8k.top/dl/jrys.php?id=291&time=20240926215313&ip=111.229.253.40 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 https://cdn.iptv8k.top/dl/jrys.php?id=292&time=20240926215313&ip=111.229.253.40 @@ -3406,12 +3624,6 @@ http://61.173.144.157:9901/tsfile/live/1010_1.m3u8 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 http://ku9.fr.to/smt.php?id=videolandsport #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 -rtmp://f13h.mine.nu/sat/tv721 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 -rtmp://f13h.mine.nu:1935/sat/tv721 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 -rtmp://f13h.mine.nu/sat/tv771 -#EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 https://cloud.yumixiu768.com/tmp/123.m3u8 #EXTINF:-1 tvg-name="纬来体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/纬来体育.png" group-title="🏀体育频道",纬来体育 https://cloud.yumixiu768.com:443/tmp/123.m3u8 @@ -3424,7 +3636,7 @@ http://61.173.144.157:9901/tsfile/live/1010_1.m3u8 #EXTINF:-1 tvg-name="五星体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/五星体育.png" group-title="🏀体育频道",五星体育 http://61.173.144.157:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0%24LR%E2%80%A2IPV4%E3%80%8E%E7%BA%BF%E8%B7%AF14%E3%80%8F #EXTINF:-1 tvg-name="五星体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/五星体育.png" group-title="🏀体育频道",五星体育 -http://139.196.151.191:6846/rtp/239.45.3.210:5140 +http://139.196.151.191:2051/rtp/239.45.3.210:5140 #EXTINF:-1 tvg-name="五星体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/五星体育.png" group-title="🏀体育频道",五星体育 http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000007/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000007 #EXTINF:-1 tvg-name="五星体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/五星体育.png" group-title="🏀体育频道",五星体育 @@ -3435,11 +3647,15 @@ http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000007/index.m3u8? http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000007/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000007&IAS #EXTINF:-1 tvg-name="五星体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/五星体育.png" group-title="🏀体育频道",五星体育 http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000007/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000007&IASHttpSessionId=OTT19019320240419154124000281 +#EXTINF:-1 tvg-name="体育赛事" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/体育赛事.png" group-title="🏀体育频道",体育赛事 +http://139.129.231.228:3529/rtp/239.21.2.44:5002 #EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 http://z.b.bkpcp.top/m.php?id=jbty #EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 https://www.freetv.top/migu/796071336.m3u8?migutoken=1cc947d86cb584c31c31c88c005d55965238dbfff7ed75fca8451aed0b564786fde7e4b327e93b92dc96ef57e64e3bb56e8a9e921338080cdae817cb6125d8450b687659ecfee06be9c5d53ac6 #EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=jbty +#EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=jbty #EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000008/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000008&IAS @@ -3453,8 +3669,6 @@ http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte. http://[2409:8087:5e01:24::16]:6610/000000001000/2000000002000000008/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000008&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 http://[2409:8087:5e01:24::8]:6610/000000001000/2000000002000000008/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000008&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="劲爆体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/劲爆体育.png" group-title="🏀体育频道",劲爆体育 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000008/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000008&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="爱体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/爱体育.png" group-title="🏀体育频道",爱体育 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000004000000060/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000004000000060&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="爱体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/爱体育.png" group-title="🏀体育频道",爱体育 @@ -3502,17 +3716,21 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010078/1.m3u8 #EXTINF:-1 tvg-name="精品体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/精品体育.png" group-title="🏀体育频道",精品体育 http://[2409:8087:5e00:24::1e]:6060/000000001000/6460382139625130259/1.m3u8 #EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="🏀体育频道",广州竞赛 +https://tencentplaywebsite.gztv.com/live/jingsai.m3u8?txSecret=cd5eb475078e689b230ada7df792e4de&txTime=193108637cb +#EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="🏀体育频道",广州竞赛 http://tencentplaygzrb01.gztv.com/live/jingsai.m3u8 +#EXTINF:-1 tvg-name="广州竞赛" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/广州竞赛.png" group-title="🏀体育频道",广州竞赛 +https://tencentplay.gztv.com/live/jingsai.m3u8?txSecret=a4d04c27d0d1d8b7efef2ed7ff1c3eae&txTime=191b60cc9ca #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 http://221.0.78.198:1681/hls/10224/index.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 -http://123.132.233.194:352/tsfile/live/1001_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8 +http://111.14.181.15:9901/tsfile/live/1022_1.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0 +http://139.129.231.228:3529/rtp/239.21.1.141:5002 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 +http://221.2.148.205:8154/tsfile/live/1006_1.m3u8 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000315/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 @@ -3521,6 +3739,8 @@ http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHAN http://123.129.70.178:9901/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 http://123.129.70.178:9901/tsfile/live/1003_1.m3u8 +#EXTINF:-1 tvg-name="山东体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/山东体育.png" group-title="🏀体育频道",山东体育 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="安徽综艺体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽综艺体育.png" group-title="🏀体育频道",安徽综艺体育 http://112.30.194.221:20080/live/c41f112b83f644ddb082669501c8ecd3/hls.m3u8?zanhd #EXTINF:-1 tvg-name="安徽综艺体育" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/安徽综艺体育.png" group-title="🏀体育频道",安徽综艺体育 @@ -3534,11 +3754,11 @@ http://39.134.136.161:6610/000000001000/1000000006000270006/index.m3u8?livemode= #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 http://39.134.136.161:6610/000000001000/1000000006000270002/index.m3u8?livemode=1&stbId=10&channel-id=ystenlive&Contentid=1000000006000270002 #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 -http://b.zgjok.com:35455/itv/2000000003000000061.m3u8?cdn=hnbblive +http://tv.kmhlzxs.top:35455/itv/2000000003000000061.m3u8?cdn=hnbblive #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 -http://b.zgjok.com:35455/itv/2000000003000000065.m3u8?cdn=hnbblive +http://tv.kmhlzxs.top:35455/itv/2000000003000000065.m3u8?cdn=hnbblive #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 -http://b.zgjok.com:35455/itv/1000000006000270002.m3u8?cdn=ystenlive +http://tv.kmhlzxs.top:35455/itv/1000000006000270002.m3u8?cdn=ystenlive #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 http://[2409:8087:1a01:df::4055]:80/TVOD/88888888/224/3221225901/main.m3u8 #EXTINF:-1 tvg-name="睛彩篮球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩篮球.png" group-title="🏀体育频道",睛彩篮球 @@ -3559,15 +3779,27 @@ http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/322 http://[2409:8087:5e08:24::15]:6610/000000001000/3000000020000011524/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011524&livemode=1&stbId=3 #EXTINF:-1 tvg-name="睛彩广场舞" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩广场舞.png" group-title="🏀体育频道",睛彩广场舞 http://[2409:8087:5e00:24::20]:6610/000000001000/1/3000000020000011523/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011523&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="睛彩广场舞" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/睛彩广场舞.png" group-title="🏀体育频道",睛彩广场舞 +http://[2409:8087:5e00:24::2d]:6610/000000001000/1/3000000020000011523/index.m3u8?channel-id=FifastbLive&Contentid=3000000020000011523&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="🏀体育频道",风云足球 +http://113.57.111.4:1111/tsfile/live/1033_1.m3u8 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="🏀体育频道",风云足球 +http://58.19.38.162:9901/tsfile/live/1034_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="🏀体育频道",风云足球 http://120.238.94.10:9901/tsfile/live/1087_1.m3u8 #EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="🏀体育频道",风云足球 http://183.11.239.36:808/hls/133/index.m3u8 +#EXTINF:-1 tvg-name="风云足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/风云足球.png" group-title="🏀体育频道",风云足球 +http://livetv.wqwqwq.sbs/rptv/G_FENGSHANGZQ-CQ.m3u8?license=gitv +#EXTINF:-1 tvg-name="足球频道" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/足球频道.png" group-title="🏀体育频道",足球频道 +http://139.129.231.228:3529/rtp/239.21.1.162:5002 #EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 http://z.b.bkpcp.top/m.php?id=mlzq #EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 https://www.freetv.top/migu/796070308.m3u8?migutoken=aef1ffa947e5328dd4ec2bb318b58b674fe32113222c6c9eab78bcdc2a9f31cf142a1d60536ea5a5ee039d3753e6bd98bef238d0ba7e3af9153e765e8b77e2a8c28451355b4a426d11c5c304f8 #EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=mlzq +#EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=mlzq #EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002021/index.m3u8?IASHttpSessionId= @@ -3581,13 +3813,15 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031207/index.m3u8? http://[2409:8087:5e08:24::2]:6610/000000001000/5000000011000031207/index.m3u8?channel-id=bestzb&Contentid=5000000011000031207&livemode=1&stbId=3 #EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000068/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000068&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="魅力足球" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/魅力足球.png" group-title="🏀体育频道",魅力足球 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000068/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000068&IASHttpSessionId=OTT19019320240419154124000281 +#EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 +http://58.19.38.162:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 http://220.249.114.102:9901/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 http://220.249.114.102:9901/tsfile/live/1021_1.m3u8 #EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 +http://120.55.49.231:3095/rtp/233.50.201.109:5140 +#EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000648/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031206/index.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=3 @@ -3599,10 +3833,6 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031206/1.m3u8 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031206/1.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=3 #EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 http://[2409:8087:5e08:24::11]:6610/000000001000/5000000011000031206/index.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=YanG-1989 -#EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 -http://[2409:8087:5e08:24::2]:6610/000000001000/5000000011000031206/index.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=3 -#EXTINF:-1 tvg-name="快乐垂钓" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/快乐垂钓.png" group-title="🏀体育频道",快乐垂钓 -http://[2409:8087:5e08:24::17]:6610/000000001000/5000000011000031206/index.m3u8?channel-id=bestzb&Contentid=5000000011000031206&livemode=1&stbId=YanG-1989 #EXTINF:-1 tvg-name="卡酷动画" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/卡酷动画.png" group-title="🪁动画频道",卡酷动画 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000661/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="卡酷动画" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/卡酷动画.png" group-title="🪁动画频道",卡酷动画 @@ -3612,6 +3842,12 @@ http://[2409:8087:74d6:22::7]:6410/270000001128/9900000040/index.m3u8 #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 http://221.226.4.10:9901/tsfile/live/1027_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 +http://113.195.45.40:9901/tsfile/live/1082_1.m3u8?key=txiptv&playlive=1&authid=0 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 +http://139.196.151.191:2051/rtp/239.45.3.134:5140 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 +http://120.55.49.231:3095/rtp/233.50.201.184:5140 +#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 http://[2409:8087:1e03:21::42]:6610/cms001/ch00000090990000001196/index.m3u8? #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226197/index.m3u8 @@ -3623,18 +3859,14 @@ http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031113/1.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002000/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002000/index.m3u8?IASHttpSessionId= -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 -http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226197/index.m3u8 -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 -http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226197/index.m3u8•IPV6『线路2』 -#EXTINF:-1 tvg-name="动漫秀场" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/动漫秀场.png" group-title="🪁动画频道",动漫秀场 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000009/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000009&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="新动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新动漫.png" group-title="🪁动画频道",新动漫 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000659/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="新动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新动漫.png" group-title="🪁动画频道",新动漫 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000659/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="青春动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青春动漫.png" group-title="🪁动画频道",青春动漫 http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000288008/index.m3u8?channel-id=bestzb&Contentid=5000000011000288008&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="青春动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/青春动漫.png" group-title="🪁动画频道",青春动漫 +http://[2409:8087:5e00:24::2d]:6610/000000001000/1/5000000011000288008/index.m3u8?channel-id=bestzb&Contentid=5000000011000288008&livemode=1&stbId=YanG-1989 #EXTINF:-1 tvg-name="爱动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/爱动漫.png" group-title="🪁动画频道",爱动漫 http://[2409:8087:5e08:24::17]:6610/000000001000/2000000004000000059/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000004000000059&IASHttpSessionId=OTT19019320240419154124000281 #EXTINF:-1 tvg-name="爱动漫" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/爱动漫.png" group-title="🪁动画频道",爱动漫 @@ -3645,12 +3877,18 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/2000000004000000059/index.m3u8? http://[2409:8087:5e08:24::12]:6610/000000001000/2000000004000000000/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000004000000059 #EXTINF:-1 tvg-name="宝宝动画" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宝宝动画.png" group-title="🪁动画频道",宝宝动画 http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000288002/index.m3u8?channel-id=bestzb&Contentid=5000000011000288002&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="宝宝动画" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/宝宝动画.png" group-title="🪁动画频道",宝宝动画 +http://[2409:8087:5e00:24::2d]:6610/000000001000/1/5000000011000288002/index.m3u8?channel-id=bestzb&Contentid=5000000011000288002&livemode=1&stbId=YanG-1989 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 http://58.221.214.82:9901/tsfile/live/0008_2.m3u8 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=ymkt +#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=ymkt #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 -http://110.53.218.182:9902/tsfile/live/1006_1.m3u8 +http://175.10.230.91:8081/tsfile/live/1006_1.m3u8 +#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 +http://139.129.231.228:3529/rtp/239.21.1.50:5002 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/2/224/3221225656/2.m3u8 #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 @@ -3661,19 +3899,15 @@ http://[2409:8087:74d9:21::6]:80/270000001128/9900000070/index.m3u8 http://[2409:8087:3c02:0021:0000:0001:0000:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00000049/index.m3u8?IASHttpSessionId= #EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 http://[2409:8087:74d9:21::6]/270000001128/9900000070/index.m3u8 -#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 -http://[2409:8087:1a0b:df::4005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225656/index.m3u8 -#EXTINF:-1 tvg-name="优漫卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/优漫卡通.png" group-title="🪁动画频道",优漫卡通 -http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010118/1.m3u8 #EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 http://183.94.1.118:8801/tsfile/live/1000_1.m3u8 #EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 -http://59.48.75.130:3052/tsfile/live/1006_1.m3u8 -#EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 -http://58.19.43.46:9901/tsfile/live/1000_1.m3u8 +http://183.66.15.146:60901/tsfile/live/0117_2.m3u8 #EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 http://221.0.78.198:1681/hls/10265/index.m3u8 #EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 +http://58.19.43.46:9901/tsfile/live/1000_1.m3u8 +#EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 http://116.128.242.83:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-name="金鹰卡通" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/金鹰卡通.png" group-title="🪁动画频道",金鹰卡通 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225653/index.m3u8 @@ -3705,6 +3939,12 @@ http://[2409:8087:5e00:24::1e]:6060/200000001898/460000089800010002/index.m3u8 http://[2409:8087:1a0b:df::4006]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225662/index.m3u8 #EXTINF:-1 tvg-name="黑莓动画" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/黑莓动画.png" group-title="🪁动画频道",黑莓动画 http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/2/224/3221225662/2.m3u8 +#EXTINF:-1 tvg-name="24H国漫热播" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/24H国漫热播.png" group-title="🪁动画频道",24H国漫热播 +https://lunbo.freetv.top/yy/1353937086 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 +https://qiniup-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 +https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8? #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 @@ -3712,7 +3952,11 @@ https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 #EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 -https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 +http://120.55.49.231:2693/rtp/233.50.201.138:5140 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 +http://120.55.49.231:3543/rtp/233.50.201.138:5140 +#EXTINF:-1 tvg-name="浙江少儿" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/浙江少儿.png" group-title="🪁动画频道",浙江少儿 +http://120.55.49.231:3095/rtp/233.50.201.138:5140 #EXTINF:-1 tvg-name="七龙珠" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/七龙珠.png" group-title="🪁动画频道",七龙珠 http://223.85.105.11/test-txdwk.flv.huya.com/src/1524418081-1524418081-6547325803326078976-3048959618-10057-A-0-1.m3u8 #EXTINF:-1 tvg-name="中华小当家" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/中华小当家.png" group-title="🪁动画频道",中华小当家 @@ -3724,8 +3968,14 @@ http://rihou.cc:555/huyad.php?id=11352879 #EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 http://z.b.bkpcp.top/m.php?id=yxfy #EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 +https://fmbox.cc/公众号玉玉软件库/tv/migu.php?id=yxfy +#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 http://8.138.90.107/公众号【睡眼迷离的猫】/mg.php?id=yxfy #EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 +http://139.196.151.191:2051/rtp/239.45.3.131:5140 +#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 +http://120.55.49.231:3095/rtp/233.50.201.183:5140 +#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031114/1.m3u8 #EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 http://[2409:8087:74d9:21::6]:80/000000001000PLTV/88888888/224/3221226187/index.m3u8 @@ -3735,25 +3985,23 @@ http://[2409:8087:5e08:24::11]:6610/000000001000/2000000002000000011/index.m3u8? http://[2409:8087:74d9:21::6]/000000001000PLTV/88888888/224/3221226187/index.m3u8 #EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 http://[2409:8087:3c02:21:0:1:0:100a]:6410/shandong_cabletv.live.zte.com////CHANNEL00002024/index.m3u8?IASHttpSessionId= -#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 -http://[2409:8087:5e08:24::17]:6610/000000001000/2000000002000000011/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000011&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 -http://[2409:8087:5e00:24::029]:6610/000000001000/2000000002000000011/index.m3u8?stbId=3&livemode=1&HlsProfileId=&channel-id=hnbblive&Contentid=2000000002000000011&IASHttpSessionId=OTT19019320240419154124000281 -#EXTINF:-1 tvg-name="游戏风云" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/游戏风云.png" group-title="🎮游戏频道",游戏风云 -http://[2409:8087:7008:20::8]/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/1.m3u8 +#EXTINF:-1 tvg-name="海看电竞" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/海看电竞.png" group-title="🎮游戏频道",海看电竞 +http://139.129.231.228:3529/rtp/239.21.1.135:5002 #EXTINF:-1 tvg-name="电竞天堂" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/电竞天堂.png" group-title="🎮游戏频道",电竞天堂 http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000288003/index.m3u8?channel-id=bestzb&Contentid=5000000011000288003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="电竞天堂" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/电竞天堂.png" group-title="🎮游戏频道",电竞天堂 +http://[2409:8087:5e00:24::2d]:6610/000000001000/1/5000000011000288003/index.m3u8?channel-id=bestzb&Contentid=5000000011000288003&livemode=1&stbId=YanG-1989 +#EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 +http://221.224.4.170:1111/tsfile/live/0015_1.m3u8 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 http://z.b.bkpcp.top/m.php?id=cctv15 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 https://www.freetv.top/migu/673168223.m3u8?migutoken=4e8d5766579c6bef231494cabd07e5b49d965804790214280c9791e4c331fd90311cb62ea43d3a1899229bfa57be4afe5a567b32a6b78153fc9a9801e28a39435e078b48c211e71d6083519be4 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 -http://58.222.30.156/hlslive-tx-cdn.ysp.cctv.cn/ysp/2024079203.m3u8 +http://101.66.199.54:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 http://183.94.1.118:8801/tsfile/live/0015_1.m3u8 #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 -http://59.48.75.130:3052/tsfile/live/0015_1.m3u8 -#EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 http://[2409:8087:5e00:24::1e]:6060/000000001000/5000000011000031109/ #EXTINF:-1 tvg-name="CCTV15" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/CCTV15.png" group-title="🎵音乐频道",CCTV-15 http://[2409:8087:5e01:34::22]:6610/ZTE_CMS/00000001000000060000000000000501/index.m3u8?IAS @@ -3765,6 +4013,10 @@ http://[2409:8087:1a0a:df::4031]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/322 http://[2409:8087:1a0a:df::4038]/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225601/index.m3u8 #EXTINF:-1 tvg-name="音乐之声" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/音乐之声.png" group-title="🎵音乐频道",音乐之声 http://ngcdn003.cnr.cn/live/yyzs/index.m3u8 +#EXTINF:-1 tvg-name="音乐调频广播" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/音乐调频广播.png" group-title="🎵音乐频道",音乐调频广播 +http://120.55.49.231:3095/rtp/233.50.201.82:5140 +#EXTINF:-1 tvg-name="笑傲江湖" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/笑傲江湖.png" group-title="🏛经典剧场",笑傲江湖 +https://lunbo.freetv.top/yy/1354930909 #EXTINF:-1 tvg-name="笑傲江湖" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/笑傲江湖.png" group-title="🏛经典剧场",笑傲江湖 http://rihou.cc:555/huyad.php?id=23865142 #EXTINF:-1 tvg-name="天龙八部" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天龙八部.png" group-title="🏛经典剧场",天龙八部 @@ -3772,9 +4024,15 @@ http://223.85.105.11/test-txdwk.flv.huya.com/src/1099531752675-1099531752675-864 #EXTINF:-1 tvg-name="天龙八部" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/天龙八部.png" group-title="🏛经典剧场",天龙八部 https://live.metshop.top/yy/1351814644 #EXTINF:-1 tvg-name="鹿鼎记" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/鹿鼎记.png" group-title="🏛经典剧场",鹿鼎记 +https://lunbo.freetv.top/yy/1354658049 +#EXTINF:-1 tvg-name="鹿鼎记" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/鹿鼎记.png" group-title="🏛经典剧场",鹿鼎记 +https://lunbo.freetv.top/yy/28265277 +#EXTINF:-1 tvg-name="鹿鼎记" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/鹿鼎记.png" group-title="🏛经典剧场",鹿鼎记 https://live.metshop.top/yy/28265277 +#EXTINF:-1 tvg-name="仙剑奇侠传" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/仙剑奇侠传.png" group-title="🏛经典剧场",仙剑奇侠传 +https://lunbo.freetv.top/yy/1382749903 #EXTINF:-1 tvg-name="三国演义" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三国演义.png" group-title="🏛经典剧场",三国演义 -http://lunbo.freetv.top/yy/1354930932 +https://lunbo.freetv.top/yy/1354930932 #EXTINF:-1 tvg-name="三国演义" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三国演义.png" group-title="🏛经典剧场",三国演义 https://live.metshop.top/huya/11602081 #EXTINF:-1 tvg-name="三国演义" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三国演义.png" group-title="🏛经典剧场",三国演义 @@ -3782,10 +4040,16 @@ https://live.metshop.top/yy/1354936241 #EXTINF:-1 tvg-name="三国演义" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/三国演义.png" group-title="🏛经典剧场",三国演义 http://rihou.cc:555/huyad.php?id=11602081 #EXTINF:-1 tvg-name="新白娘子传奇" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新白娘子传奇.png" group-title="🏛经典剧场",新白娘子传奇 +https://lunbo.freetv.top/yy/1354930969 +#EXTINF:-1 tvg-name="新白娘子传奇" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/新白娘子传奇.png" group-title="🏛经典剧场",新白娘子传奇 https://live.metshop.top/yy/1354490667 #EXTINF:-1 tvg-name="封神榜" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/封神榜.png" group-title="🏛经典剧场",封神榜 +https://lunbo.freetv.top/yy/1353426319 +#EXTINF:-1 tvg-name="封神榜" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/封神榜.png" group-title="🏛经典剧场",封神榜 https://live.metshop.top/yy/1353426319 #EXTINF:-1 tvg-name="上海滩" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/上海滩.png" group-title="🏛经典剧场",上海滩 https://live.metshop.top/yy/1382745184 #EXTINF:-1 tvg-name="射雕英雄传" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/射雕英雄传.png" group-title="🏛经典剧场",射雕英雄传 +https://lunbo.freetv.top/yy/1354210357 +#EXTINF:-1 tvg-name="射雕英雄传" tvg-logo="https://raw.githubusercontent.com/fanmingming/live/main/tv/射雕英雄传.png" group-title="🏛经典剧场",射雕英雄传 https://live.metshop.top/yy/40959929 diff --git a/小米/api.json b/小米/api.json index 14fd8bb..0e1506d 100644 --- a/小米/api.json +++ b/小米/api.json @@ -27,6 +27,18 @@ "playerType": 2, "ext": "https://www.subaibaiys.com/" }, + { + "key": "guoguo1", + "name": "🥭文采┃1080P", + "type": 3, + "api": "./api/drpy2.min.js", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "order_num": 0, + "changeable": 0, + "ext": "./js/wencai.js" + }, { "key": "csp_Wogg", "name": "🧸玩偶┃4K弹幕", @@ -121,17 +133,6 @@ "changeable": 0, "ext": "./js/kanqiu.js" }, - { - "key": "csp_JPYY", - "name": "🚗文采┃1080P", - "type": 3, - "searchable": 1, - "changeable": 1, - "api": "csp_Jpyy", - "playerType": 2, - "filterable": 1, - "ext": "" - }, { "key": "csp_Xlys", "name": "🍤哔嘀┃1080P", @@ -200,6 +201,14 @@ "api": "csp_MiTuApp", "ext": "sHR2rlsfjI4L3t4RXQMkn6HTjU76bdvB3up+9CiGGVZHR3fM8KlJPXSneStHrC+DgWIxl9G+rM70oCwdQkorhrIzUoY/hqgTn/n8VXBDfMYYJQXjRv4wnyIB9zbV+McOQuf9XquqTIYCrvZq2K/XN8gy3u6uGRNLRlVrwt2esQ5pwE+Y8C3ts7ivRub9bEpuB7nN4tthfe6L4f4RdQDHpA==" }, + { + "key": "csp_悠悠", + "name": "🍔悠悠┃1080P", + "type": 3, + "quickSearch": 0, + "api": "csp_MiTuApp", + "ext": "sHR2rlsfjI4L3t4RXQMkn/SuTAP3sPRQGBWuLvcmqKyCqoI86+yv1vpNB33r+Z4fN6O/nLb1kI6lAn2/cVbU8wmofbJQCSnAsrvXVBwZ3flHuP9fO76eaY6fHygcy7MOMKd+MKrvTzaoU2rXllcWmnT3vTlchndtaG+KZX7BM4zXAD06UlUfWH1nsWX3lFG1e0oZhS/wxYXLRu8iyPFlfsgePjsUNEuKBVbTUVMdjoY=" + }, { "key": "csp_良人", "name": "👨良人┃1080P", @@ -278,14 +287,6 @@ "ratio": 1.333 } }, - { - "key": "荐片", - "name": "🍭荐片┃磁力", - "api": "csp_Jianpian", - "type": 3, - "playerType": "1", - "ext": "http://api2.rinhome.com" - }, { "key": "push_agent", "name": "接口完全免费公益性质 纯互联网搜集 杜绝未成年测试本项目|请于24小时内删除本测试内容", diff --git a/小米/js/wencai.js b/小米/js/wencai.js new file mode 100644 index 0000000..23fcdba --- /dev/null +++ b/小米/js/wencai.js @@ -0,0 +1 @@ +H4sIAAAAAAAAA+1XW28TRxR+z6/Ypsi7BrObNUnqJHKjlERQVC4i0KpCCI13x/Yke+vubBynctWLBIK2JFSFh7YvpWpB6gOgtoJCEH8mvvDEX+jc9mpT0z7lISPL3j3znTlnzvnmnHHDcmvAutBEgdqAOEANR6pK9dAxMHIdSaGCovTphESGBbEUIKdBAMf9tofdU6vq6eUZjlGxu4p9MqvEc9Ax1JNws7jAtPOaqyeXdIUKx6v6EIe+w1ZYmOhMaNrg5uPu9p0N17RQgCcayRaEKLMFXJK8RnoPGNmQIJYBhqrjthRhxXAdoul6VCsg81yBDhvipmvOS/KJlQtyKRY3ITChH8ynkHTIFwPoH11qQAfLRMddb2LsacdUvazqekqdDk2TlwwDevjoimO4JtkgVWlsIS8HlOla1PGc2IQbyIDIpGrL0XMOQ/ND5kV6FRn4EFQLHmjAM6FdlaUjJD7kSy7gtgd1JsDsvQ2BXy2sw3bVqFWmKjPluRqAs7XZGpyegUYd1MpzYLpSmasZBczViIPF2HiHPXUW4sA3sW3R1EBsNBWZhiWY17RWq6Ua9fW1yqxquLYGPKTZraO2u4GgBhzXadtuGGgbyISuRpO7SC39x03IpSixxTSjTq2ePaN6wA+gQn0rUnZl2YTMIEMm8n5ApYRKyGSRplGisd5PVDEhBshaTDzMUYBaqQEMiJVhGkRJdC2oWm5DocBMbpFpct0kYYQtVxBJLcWqdJby532zlAE4wIY5yBmQTgUF+dAG/jphg9x9uN1/9Mer3R/oHjJa5zkmqwgM7Pq55ZeoLAszkQ9HIJeFOAsm+8WEf7EzvTu3ets7L69+1/vyPnFs8OBx9+sX/R+f7L34ee/Zs73nt7t/v+jeujF4eJd8htw+zlfLmvAs0L5S9107MXLz1+72L/IIWOhbBCWn+ZIYgB4KXBN+QKqEWnf9FUDIo2wAK4QlCTkmaShS9d1UyngW1fTi0pGqxDRUmirK6kMphn9Gn8U0MmPJUD7zWCF6W+Yed7KNjbtBi0+6+gSjmlnLPCg/Sfkh9abl+vyEt1g64o6gs6dVtAWrlX1VlwLSj4zme+2PiOOLb7iBdPsa17/SFFrb3Mx1r5JEeHtAoREdjAXfEa/icO8X4uiCO6K+aaROLb7W8Te76vByRaveRd/ibqK6pEy+U5mbnpnVy8cmpWpVkuNXuZjK7Og1dbFoGC3YkaAVwGE9OSqDlK4bwJf80IIxyTDCFumRcu/OtZfXron8Nd2AtiDxxnv7RdYK6u04yfxocfHhw0IYCpRhgSDIAEGN2ilz0SchMtZXmXxe0rmsjiwMfQ6b4iK2iujicv/7v7rPHxXIz+De1e71e4X+s93B9aeF7o37vd3f5bQG90IvlAvThWNihrUcFj7CZj8UbLbAVnteOrQWJH+LlFzb4oeTaGJ6NJHjhVgNPAthhTQdcYBZQulM5vAys9ziVPZgMAdJvVDYspemLpe4gUv65WIWubY5pGwCxwbrYdyYBfdFr+PY3s37g293xuyMXcrEzUq0P0UvSXpqU6l7G0NyzlFkgmH9OLoAIJy1wRxWvTBoKllhHAaE81e3aAhuckD24hYH3W5EgHPIGJ43YWBEAHGJy2A6qb2mnwOIz8MgtLBiFhcykd178nn/6b3/EVnGj5J0+uMr55ZOrKRsZa6+ZnL3PYj/yPg//WZ8/NMhnRw8/Grw4Da5Mfe+eFCepFWcZiIX5CRZ5PKp5BGall4xl6MPzy4TTX6pTHva2/mp/+fdMZ7G9oUDQYYuKSv5bZk5L1i0E4r4LHpD+WDU+VeyRA7Rf/a03rHUHadldWE4+6SHvUWBKnIMKyTJVib3dn/r71ydLBZHrMt8fB0ZozGGlNF4A3LGbo4haezaGLJGo1McDkXntbSmQ9NyyRvO3TDjk2UJoTr/ADJewL47FAAA \ No newline at end of file diff --git a/小米/lives/平台直播.txt b/小米/lives/平台直播.txt index 94ae745..096c0e1 100644 --- a/小米/lives/平台直播.txt +++ b/小米/lives/平台直播.txt @@ -162,1137 +162,1979 @@ https://epg.iill.top/v/301.mp4 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/歪歪.png" group-title="•歪歪「其他」",点击此频道·查看重要信息!🔔 https://epg.iill.top/v/301.mp4 #INSERT_HERE -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/31604663&bilibili&logo" group-title="•B站「其他」",三好的小鱼干 -http://dns.yiandrive.com:15907/bilibili/31604663 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1769475507&bilibili&logo" group-title="•B站「其他」",熊q熊 +http://dns.yiandrive.com:15907/bilibili/1769475507 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23336970&bilibili&logo" group-title="•B站「娱乐」",白夕Seal +http://dns.yiandrive.com:15907/bilibili/23336970 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6154037&bilibili&logo" group-title="•B站「娱乐」",猪猪 +http://dns.yiandrive.com:15907/bilibili/6154037 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/653&bilibili&logo" group-title="•B站「娱乐」",_糖果果Candy_ +http://dns.yiandrive.com:15907/bilibili/653 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/412&bilibili&logo" group-title="•B站「娱乐」",miriちゃん +http://dns.yiandrive.com:15907/bilibili/412 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22014628&bilibili&logo" group-title="•B站「其他」",五月织姬 +http://dns.yiandrive.com:15907/bilibili/22014628 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/510&bilibili&logo" group-title="•B站「娱乐」",阿梓从小就很可爱 +http://dns.yiandrive.com:15907/bilibili/510 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14650198&bilibili&logo" group-title="•B站「娱乐」",周杉 +http://dns.yiandrive.com:15907/bilibili/14650198 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/84074&bilibili&logo" group-title="•B站「娱乐」",炫神 +http://dns.yiandrive.com:15907/bilibili/84074 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23762953&bilibili&logo" group-title="•B站「娱乐」",王筱沫沫 +http://dns.yiandrive.com:15907/bilibili/23762953 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12291874&bilibili&logo" group-title="•B站「娱乐」",糖崽 +http://dns.yiandrive.com:15907/bilibili/12291874 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/哔哩哔哩.png" group-title="•B站「娱乐」",EdmundDZhang +http://dns.yiandrive.com:15907/bilibili/5050 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/732&bilibili&logo" group-title="•B站「娱乐」",Asaki +http://dns.yiandrive.com:15907/bilibili/732 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9196015&bilibili&logo" group-title="•B站「其他」",国际空间站 http://dns.yiandrive.com:15907/bilibili/9196015 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1856394003&bilibili&logo" group-title="•B站「娱乐」",别哭是小懒 -http://dns.yiandrive.com:15907/bilibili/1856394003 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/48499&bilibili&logo" group-title="•B站「娱乐」",扎双马尾的丧尸 +http://dns.yiandrive.com:15907/bilibili/48499 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23356199&bilibili&logo" group-title="•B站「娱乐」", 芋圆有点甜- +http://dns.yiandrive.com:15907/bilibili/23356199 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30837590&bilibili&logo" group-title="•B站「影视」",蜡笔小新|狐狐动画城 http://dns.yiandrive.com:15907/bilibili/30837590 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14745943&bilibili&logo" group-title="•B站「影视」",哆啦A梦|达果仲气·中配 -http://dns.yiandrive.com:15907/bilibili/14745943 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24392691&bilibili&logo" group-title="•B站「其他」",wogeshiyangfan -http://dns.yiandrive.com:15907/bilibili/24392691 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/32330910&bilibili&logo" group-title="•B站「影视」",名侦探柯南|姜姜童 -http://dns.yiandrive.com:15907/bilibili/32330910 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3691904&bilibili&logo" group-title="•B站「影视」",名侦探柯南|23night -http://dns.yiandrive.com:15907/bilibili/3691904 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30098402&bilibili&logo" group-title="•B站「影视」",名侦探柯南|米花小侦探 -http://dns.yiandrive.com:15907/bilibili/30098402 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26863308&bilibili&logo" group-title="•B站「影视」",海绵宝宝|一只狐小啾 -http://dns.yiandrive.com:15907/bilibili/26863308 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1900560130&bilibili&logo" group-title="•B站「影视」",熊熊格格 -http://dns.yiandrive.com:15907/bilibili/1900560130 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/27482796&bilibili&logo" group-title="•B站「影视」",海绵宝宝|经典怀旧动漫 http://dns.yiandrive.com:15907/bilibili/27482796 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/27554961&bilibili&logo" group-title="•B站「影视」",武林外传|西瓜放映厅 -http://dns.yiandrive.com:15907/bilibili/27554961 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/27829526&bilibili&logo" group-title="•B站「影视」",名侦探柯南|有品当赏 -http://dns.yiandrive.com:15907/bilibili/27829526 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11357890&bilibili&logo" group-title="•B站「娱乐」",Rickycheung05 +http://dns.yiandrive.com:15907/bilibili/11357890 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/721&bilibili&logo" group-title="•B站「娱乐」",魔法Zc目录 +http://dns.yiandrive.com:15907/bilibili/721 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1982632047&bilibili&logo" group-title="•B站「影视」",蜡笔小新|幼稚好无聊 http://dns.yiandrive.com:15907/bilibili/1982632047 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14745943&bilibili&logo" group-title="•B站「影视」",哆啦A梦|达果仲气·中配 +http://dns.yiandrive.com:15907/bilibili/14745943 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30098402&bilibili&logo" group-title="•B站「影视」",名侦探柯南|米花小侦探 +http://dns.yiandrive.com:15907/bilibili/30098402 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/27829526&bilibili&logo" group-title="•B站「影视」",名侦探柯南|有品当赏 +http://dns.yiandrive.com:15907/bilibili/27829526 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26863308&bilibili&logo" group-title="•B站「影视」",海绵宝宝|一只狐小啾 +http://dns.yiandrive.com:15907/bilibili/26863308 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1712960281&bilibili&logo" group-title="•B站「影视」",喜羊羊|姜姜童的梦剧场 http://dns.yiandrive.com:15907/bilibili/1712960281 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30224749&bilibili&logo" group-title="•B站「影视」",蜡笔小新|新酱不狐涂 -http://dns.yiandrive.com:15907/bilibili/30224749 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7734200&bilibili&logo" group-title="•B站「游戏」",英雄联盟赛事 -http://dns.yiandrive.com:15907/bilibili/7734200 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22747736&bilibili&logo" group-title="•B站「游戏」",不死鸟总监 -http://dns.yiandrive.com:15907/bilibili/22747736 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/32330910&bilibili&logo" group-title="•B站「影视」",名侦探柯南|姜姜童 +http://dns.yiandrive.com:15907/bilibili/32330910 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9275042&bilibili&logo" group-title="•B站「影视」",武林外传|九磅十五便士 +http://dns.yiandrive.com:15907/bilibili/9275042 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1993741796&bilibili&logo" group-title="•B站「影视」",臣臣格格 +http://dns.yiandrive.com:15907/bilibili/1993741796 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2064239&bilibili&logo" group-title="•B站「影视」",鹿野灸 +http://dns.yiandrive.com:15907/bilibili/2064239 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7777&bilibili&logo" group-title="•B站「游戏」",德云社 +http://dns.yiandrive.com:15907/bilibili/7777 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30041682&bilibili&logo" group-title="•B站「影视」",可莉格格 http://dns.yiandrive.com:15907/bilibili/30041682 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zxzopo&soop&logo" group-title="•SOOP「娱乐」",뽀튀 -https://live.iill.top/soop/zxzopo +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/426667&bilibili&logo" group-title="•B站「游戏」",大炒面制造者Cen +http://dns.yiandrive.com:15907/bilibili/426667 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1788391626&bilibili&logo" group-title="•B站「影视」",甄嬛传 +http://dns.yiandrive.com:15907/bilibili/1788391626 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7395955&bilibili&logo" group-title="•B站「游戏」",Kyo_ow +http://dns.yiandrive.com:15907/bilibili/7395955 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4792266&bilibili&logo" group-title="•B站「游戏」",Spark-GUXUE +http://dns.yiandrive.com:15907/bilibili/4792266 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/388&bilibili&logo" group-title="•B站「游戏」",两仪滚 +http://dns.yiandrive.com:15907/bilibili/388 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/31294374&bilibili&logo" group-title="•B站「游戏」",HZS-Leave +http://dns.yiandrive.com:15907/bilibili/31294374 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3691904&bilibili&logo" group-title="•B站「影视」",名侦探柯南|23night +http://dns.yiandrive.com:15907/bilibili/3691904 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30401859&bilibili&logo" group-title="•B站「影视」",成龙历险记|欢欢的放映姬 +http://dns.yiandrive.com:15907/bilibili/30401859 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6524090&bilibili&logo" group-title="•B站「游戏」",HZS-SHY +http://dns.yiandrive.com:15907/bilibili/6524090 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7775554&bilibili&logo" group-title="•B站「游戏」",HZS-LiGe +http://dns.yiandrive.com:15907/bilibili/7775554 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/27781393&bilibili&logo" group-title="•B站「游戏」",B站第五鱼鱼 +http://dns.yiandrive.com:15907/bilibili/27781393 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6750632&bilibili&logo" group-title="•B站「游戏」",夏夏大魔王_Axx +http://dns.yiandrive.com:15907/bilibili/6750632 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/47867&bilibili&logo" group-title="•B站「游戏」",c酱 +http://dns.yiandrive.com:15907/bilibili/47867 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22157962&bilibili&logo" group-title="•B站「游戏」",codMW3开跨平台被人捞薯条! +http://dns.yiandrive.com:15907/bilibili/22157962 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11192805&bilibili&logo" group-title="•B站「游戏」",菜农来辣 +http://dns.yiandrive.com:15907/bilibili/11192805 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5558&bilibili&logo" group-title="•B站「游戏」",longdd黄翔 +http://dns.yiandrive.com:15907/bilibili/5558 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/13233348&bilibili&logo" group-title="•B站「游戏」",撸Sir +http://dns.yiandrive.com:15907/bilibili/13233348 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22957791&bilibili&logo" group-title="•B站「游戏」",意识DT +http://dns.yiandrive.com:15907/bilibili/22957791 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5166132&bilibili&logo" group-title="•B站「游戏」",老king +http://dns.yiandrive.com:15907/bilibili/5166132 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22792924&bilibili&logo" group-title="•B站「游戏」",李哥的日常 +http://dns.yiandrive.com:15907/bilibili/22792924 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6963590&bilibili&logo" group-title="•B站「游戏」",挖机 +http://dns.yiandrive.com:15907/bilibili/6963590 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2001981&bilibili&logo" group-title="•B站「游戏」",留白Camille +http://dns.yiandrive.com:15907/bilibili/2001981 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30877175&bilibili&logo" group-title="•B站「游戏」",牛油果大虾沙拉(雀魂) +http://dns.yiandrive.com:15907/bilibili/30877175 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22747736&bilibili&logo" group-title="•B站「游戏」",不死鸟总监 +http://dns.yiandrive.com:15907/bilibili/22747736 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/哔哩哔哩.png" group-title="•B站「游戏」",守护茶茶 +http://dns.yiandrive.com:15907/bilibili/697 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7734200&bilibili&logo" group-title="•B站「游戏」",英雄联盟赛事 +http://dns.yiandrive.com:15907/bilibili/7734200 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1850927386&bilibili&logo" group-title="•B站「游戏」",pubg +http://dns.yiandrive.com:15907/bilibili/1850927386 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/哔哩哔哩.png" group-title="•B站「游戏」",裕刺Fy +http://dns.yiandrive.com:15907/bilibili/447 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14709735&bilibili&logo" group-title="•B站「游戏」",炫神 +http://dns.yiandrive.com:15907/bilibili/14709735 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/哔哩哔哩.png" group-title="•B站「游戏」",飞天狙想努力变胖 +http://dns.yiandrive.com:15907/bilibili/23197314 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1017&bilibili&logo" group-title="•B站「游戏」",逍遥散人 +http://dns.yiandrive.com:15907/bilibili/1017 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/115&bilibili&logo" group-title="•B站「游戏」",神奇陆夫人 +http://dns.yiandrive.com:15907/bilibili/115 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6136246&bilibili&logo" group-title="•B站「游戏」",凉哈皮 +http://dns.yiandrive.com:15907/bilibili/6136246 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21414905&bilibili&logo" group-title="•B站「游戏」",你的影月月 +http://dns.yiandrive.com:15907/bilibili/21414905 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22508985&bilibili&logo" group-title="•B站「游戏」",解说Mage +http://dns.yiandrive.com:15907/bilibili/22508985 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26403082&bilibili&logo" group-title="•B站「游戏」",4AM战队视角 +http://dns.yiandrive.com:15907/bilibili/26403082 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/846315&bilibili&logo" group-title="•B站「游戏」",小狼XF 晓锋 +http://dns.yiandrive.com:15907/bilibili/846315 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/parang1995&soop&logo" group-title="•SOOP「娱乐」",우니쿤 +https://live.iill.top/soop/parang1995 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nanajam&soop&logo" group-title="•SOOP「娱乐」",우정잉 +https://live.iill.top/soop/nanajam +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jeehyeonlee&soop&logo" group-title="•SOOP「娱乐」",이아린a +https://live.iill.top/soop/jeehyeonlee +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/eunyoung1238&soop&logo" group-title="•SOOP「娱乐」",ʚ 그릴래영 +https://live.iill.top/soop/eunyoung1238 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/vgloldv&soop&logo" group-title="•SOOP「娱乐」",[7]디자인수 +https://live.iill.top/soop/vgloldv +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ahfotlrp0675&soop&logo" group-title="•SOOP「娱乐」",으악이네 +https://live.iill.top/soop/ahfotlrp0675 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/juju0228&soop&logo" group-title="•SOOP「娱乐」",미오탱 +https://live.iill.top/soop/juju0228 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/summatube&soop&logo" group-title="•SOOP「娱乐」",숨마 +https://live.iill.top/soop/summatube +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/alwl1047&soop&logo" group-title="•SOOP「娱乐」",쁠리vvely +https://live.iill.top/soop/alwl1047 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wannabe33&soop&logo" group-title="•SOOP「娱乐」",♡세경♡ +https://live.iill.top/soop/wannabe33 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ghtjd8919&soop&logo" group-title="•SOOP「娱乐」",호쿵이와따♥ +https://live.iill.top/soop/ghtjd8919 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dpqls718&soop&logo" group-title="•SOOP「娱乐」",고혜지♥ +https://live.iill.top/soop/dpqls718 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/epsthddus&soop&logo" group-title="•SOOP「娱乐」",혜루찡 +https://live.iill.top/soop/epsthddus +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/iyo1130&soop&logo" group-title="•SOOP「娱乐」",♥이요 +https://live.iill.top/soop/iyo1130 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/tmdgns777&soop&logo" group-title="•SOOP「娱乐」",노래하는하니 +https://live.iill.top/soop/tmdgns777 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/asq1177&soop&logo" group-title="•SOOP「娱乐」",루나별피아노 +https://live.iill.top/soop/asq1177 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/bluetail01&soop&logo" group-title="•SOOP「娱乐」",유누¿ https://live.iill.top/soop/bluetail01 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/kdy23500&soop&logo" group-title="•SOOP「娱乐」",sw김연디 +https://live.iill.top/soop/kdy23500 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zxzopo&soop&logo" group-title="•SOOP「娱乐」",뽀튀 +https://live.iill.top/soop/zxzopo +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/glglehddl&soop&logo" group-title="•SOOP「娱乐」",타미미♥ +https://live.iill.top/soop/glglehddl +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jjllyy&soop&logo" group-title="•SOOP「娱乐」",박수박 +https://live.iill.top/soop/jjllyy +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ummmu2&soop&logo" group-title="•SOOP「娱乐」",온다옹 +https://live.iill.top/soop/ummmu2 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/sa1157&soop&logo" group-title="•SOOP「娱乐」",꿀정하♥ +https://live.iill.top/soop/sa1157 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dlsgk1763&soop&logo" group-title="•SOOP「娱乐」",유니나♥ +https://live.iill.top/soop/dlsgk1763 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/suhi370erw&soop&logo" group-title="•SOOP「娱乐」",[ASG]혁민 +https://live.iill.top/soop/suhi370erw +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wotndi12&soop&logo" group-title="•SOOP「娱乐」",온온♥ +https://live.iill.top/soop/wotndi12 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hhha1124&soop&logo" group-title="•SOOP「娱乐」",유하경 +https://live.iill.top/soop/hhha1124 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/bjinoa&soop&logo" group-title="•SOOP「娱乐」",이노아 +https://live.iill.top/soop/bjinoa +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ks940714&soop&logo" group-title="•SOOP「娱乐」",천이주♥ +https://live.iill.top/soop/ks940714 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/myby1221&soop&logo" group-title="•SOOP「娱乐」",[7]연두 https://live.iill.top/soop/myby1221 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hy0325hy&soop&logo" group-title="•SOOP「娱乐」",애라♡ +https://live.iill.top/soop/hy0325hy +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/siuminn&soop&logo" group-title="•SOOP「娱乐」",밍키 +https://live.iill.top/soop/siuminn +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/rox0x0x&soop&logo" group-title="•SOOP「娱乐」",함지아♥ +https://live.iill.top/soop/rox0x0x +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ulsandodud&soop&logo" group-title="•SOOP「娱乐」",BJ야시아 +https://live.iill.top/soop/ulsandodud +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dadaming94&soop&logo" group-title="•SOOP「娱乐」",다다밍 +https://live.iill.top/soop/dadaming94 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/92613&bilibili&logo" group-title="•B站「游戏」",少年 pi +http://dns.yiandrive.com:15907/bilibili/92613 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ddodohee&soop&logo" group-title="•SOOP「娱乐」",소금[♥] +https://live.iill.top/soop/ddodohee +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/lilikkk&soop&logo" group-title="•SOOP「娱乐」",잉지안♥ +https://live.iill.top/soop/lilikkk #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/secretx&soop&logo" group-title="•SOOP「娱乐」",설수린. https://live.iill.top/soop/secretx +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nekoxxx&soop&logo" group-title="•SOOP「娱乐」",옴뇸뇸걸 +https://live.iill.top/soop/nekoxxx +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/tkxkd9187&soop&logo" group-title="•SOOP「娱乐」",앙체리♥ +https://live.iill.top/soop/tkxkd9187 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jfiary0718&soop&logo" group-title="•SOOP「娱乐」",송채연♥ +https://live.iill.top/soop/jfiary0718 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/flowerbud1&soop&logo" group-title="•SOOP「娱乐」",츠보미. https://live.iill.top/soop/flowerbud1 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1000song2&soop&logo" group-title="•SOOP「娱乐」",강민아° -https://live.iill.top/soop/1000song2 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hiya0819&soop&logo" group-title="•SOOP「娱乐」",[BJ]김도연 -https://live.iill.top/soop/hiya0819 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/gkstkd14&soop&logo" group-title="•SOOP「娱乐」",댄동단장태우 +https://live.iill.top/soop/gkstkd14 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/vevichan1&soop&logo" group-title="•SOOP「娱乐」",v찬미v +https://live.iill.top/soop/vevichan1 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nila25&soop&logo" group-title="•SOOP「娱乐」",유소나 +https://live.iill.top/soop/nila25 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ise0125&soop&logo" group-title="•SOOP「娱乐」",요미냥 +https://live.iill.top/soop/ise0125 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/joahe2&soop&logo" group-title="•SOOP「娱乐」",시연:p +https://live.iill.top/soop/joahe2 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jkmjkm1236&soop&logo" group-title="•SOOP「娱乐」",하이희야♡ +https://live.iill.top/soop/jkmjkm1236 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/smpk96&soop&logo" group-title="•SOOP「娱乐」",BJ박삐삐 +https://live.iill.top/soop/smpk96 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zbxlzzz&soop&logo" group-title="•SOOP「娱乐」",정소다♥ +https://live.iill.top/soop/zbxlzzz +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jaeha010&soop&logo" group-title="•SOOP「娱乐」",후잉♥ +https://live.iill.top/soop/jaeha010 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1870881575&bilibili&logo" group-title="•B站「娱乐」",欲欲子-双视 +http://dns.yiandrive.com:15907/bilibili/1870881575 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hancoma&soop&logo" group-title="•SOOP「娱乐」",하나옵 https://live.iill.top/soop/hancoma -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nchacha&soop&logo" group-title="•SOOP「娱乐」",김슬기* -https://live.iill.top/soop/nchacha -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/soclato&soop&logo" group-title="•SOOP「娱乐」",Sea김바다 -https://live.iill.top/soop/soclato -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nmh112&soop&logo" group-title="•SOOP「娱乐」",♥다야 -https://live.iill.top/soop/nmh112 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hanbok123&soop&logo" group-title="•SOOP「娱乐」",♥리인 -https://live.iill.top/soop/hanbok123 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/poopoo01&soop&logo" group-title="•SOOP「娱乐」",맑음♪ -https://live.iill.top/soop/poopoo01 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jj0607&soop&logo" group-title="•SOOP「娱乐」",♥하츄♥ -https://live.iill.top/soop/jj0607 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/fkdnswwkd&soop&logo" group-title="•SOOP「娱乐」",효주♡ -https://live.iill.top/soop/fkdnswwkd -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ahahah1123&soop&logo" group-title="•SOOP「娱乐」",성은 -https://live.iill.top/soop/ahahah1123 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/vedal987&twitch&logo" group-title="•Twitch「娱乐」",vedal987 -https://live.iill.top/twitch/vedal987 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/daum0319&soop&logo" group-title="•SOOP「娱乐」",다우미 +https://live.iill.top/soop/daum0319 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/pookygamja&soop&logo" group-title="•SOOP「娱乐」",[BJ]김인호 +https://live.iill.top/soop/pookygamja +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/qksgmlqksgml&soop&logo" group-title="•SOOP「娱乐」",반희♡ +https://live.iill.top/soop/qksgmlqksgml +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1004ysus&soop&logo" group-title="•SOOP「娱乐」",둘기얏 +https://live.iill.top/soop/1004ysus +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dign1461&soop&logo" group-title="•SOOP「娱乐」",♡혜밍 +https://live.iill.top/soop/dign1461 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/uwhoooo96&soop&logo" group-title="•SOOP「娱乐」",유후uwho +https://live.iill.top/soop/uwhoooo96 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/goinmul&soop&logo" group-title="•SOOP「娱乐」",♥소영♥ +https://live.iill.top/soop/goinmul +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wjl9908&soop&logo" group-title="•SOOP「娱乐」",우정X4 +https://live.iill.top/soop/wjl9908 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/kubin970515&soop&logo" group-title="•SOOP「娱乐」",쿠빈 +https://live.iill.top/soop/kubin970515 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/fall0715&soop&logo" group-title="•SOOP「娱乐」",가을님♥ +https://live.iill.top/soop/fall0715 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/eunz1nara&soop&logo" group-title="•SOOP「娱乐」",양팡♥ +https://live.iill.top/soop/eunz1nara +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/rud9281&soop&logo" group-title="•SOOP「娱乐」",한갱_ +https://live.iill.top/soop/rud9281 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dbsek28&soop&logo" group-title="•SOOP「娱乐」",새라♡ +https://live.iill.top/soop/dbsek28 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/thdus030408&soop&logo" group-title="•SOOP「娱乐」",한시월♡ +https://live.iill.top/soop/thdus030408 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/pofo40&soop&logo" group-title="•SOOP「娱乐」",유별[♡] +https://live.iill.top/soop/pofo40 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/song2com&soop&logo" group-title="•SOOP「娱乐」",송규린♥ +https://live.iill.top/soop/song2com #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xx00uxx&soop&logo" group-title="•SOOP「娱乐」",윤하랑=_= https://live.iill.top/soop/xx00uxx +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/vedal987&twitch&logo" group-title="•Twitch「娱乐」",vedal987 +https://live.iill.top/twitch/vedal987 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",不良林 https://live.iill.top/youtube/@bulianglin +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",凤凰资讯 +https://live.iill.top/youtube/@phoenixtvhk +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",陈一发 +https://live.iill.top/youtube/@chenyifaer +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",全球大視野 +https://live.iill.top/youtube/@全球大視野Global_Vision #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/globalnewstw&youtube&logo" group-title="•YouTube「其他」",寰宇新闻 https://live.iill.top/youtube/@globalnewstw #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/z_fY1pj1VBw&youtube&logo" group-title="•YouTube「其他」",城市景观 https://live.iill.top/youtube/z_fY1pj1VBw -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",Pokémon Kids TV -https://live.iill.top/youtube/wJo3U6JQaSU -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/@中天新聞CtiNews&youtube&logo" group-title="•YouTube「其他」",中天新聞 -https://live.iill.top/youtube/@中天新聞CtiNews -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",凤凰资讯 -https://live.iill.top/youtube/@phoenixtvhk -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/@tvbstalk&youtube&logo" group-title="•YouTube「其他」",新聞大白話 -https://live.iill.top/youtube/@tvbstalk -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",台灣地震監視(地震速報、強震即時警報) -https://live.iill.top/youtube/Owke6Quk7T0 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",天才衝衝衝 https://live.iill.top/youtube/UsZi0jxZHZ8 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",Maxim Korea -https://live.iill.top/youtube/@maxim_korea -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Arielle&twitch&logo" group-title="•Twitch「娱乐」",Arielle -https://live.iill.top/twitch/Arielle -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",熱歌 Playlist -https://live.iill.top/youtube/@chinesesong2023 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",全球大視野 -https://live.iill.top/youtube/@全球大視野Global_Vision -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/Twitch.png" group-title="•Twitch「游戏」",Shroud -https://live.iill.top/twitch/shroud -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/t38P92CUd3U&youtube&logo" group-title="•YouTube「娱乐」",Peaceful -https://live.iill.top/youtube/@videoeditor8218 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ARe9sAdVJPQ&youtube&logo" group-title="•YouTube「娱乐」",破亿神曲 Playlist -https://live.iill.top/youtube/@HotPlaylist66 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/77ZV3XiIva8&youtube&logo" group-title="•YouTube「娱乐」",70、80、90年代经典老歌 -https://live.iill.top/youtube/@7080年代经典老歌-o1e -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/=xQBw_dM-W8Y&youtube&logo" group-title="•YouTube「娱乐」",Chinese Mix -https://live.iill.top/youtube/@FM190-ld7qz -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/QntP-ZwxbJI&youtube&logo" group-title="•YouTube「娱乐」",Hot Douyin Studios -https://live.iill.top/youtube/@hottrendsdouyin -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",匯聚金曲 -https://live.iill.top/youtube/@Cantopopgreatesthits8090s -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",아리랑 라디오 -https://live.iill.top/youtube/Music180Arirang -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/Twitch.png" group-title="•Twitch「游戏」",Dota TV 24/7 -https://live.iill.top/twitch/dotatv247 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「其他」",Pokémon Kids TV +https://live.iill.top/youtube/wJo3U6JQaSU #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/=_XNWFSYhC4A&youtube&logo" group-title="•YouTube「娱乐」",KKBOX 行週榜& 年度熱門流行歌 https://live.iill.top/youtube/@KKBOX6868 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「影视」",時裝藝術表演 -https://live.iill.top/youtube/@305miamivisuals +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/Twitch.png" group-title="•Twitch「游戏」",Shroud +https://live.iill.top/twitch/shroud +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",熱歌 Playlist +https://live.iill.top/youtube/@chinesesong2023 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",台灣地震監視(地震速報、強震即時警報) +https://live.iill.top/youtube/Owke6Quk7T0 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/Twitch.png" group-title="•Twitch「游戏」",Dota TV 24/7 +https://live.iill.top/twitch/dotatv247 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",Maxim Korea +https://live.iill.top/youtube/@maxim_korea +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",匯聚金曲 +https://live.iill.top/youtube/@Cantopopgreatesthits8090s +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/t38P92CUd3U&youtube&logo" group-title="•YouTube「娱乐」",Peaceful +https://live.iill.top/youtube/@videoeditor8218 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/77ZV3XiIva8&youtube&logo" group-title="•YouTube「娱乐」",70、80、90年代经典老歌 +https://live.iill.top/youtube/@7080年代经典老歌-o1e #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「影视」",時裝藝術表演¹ https://live.iill.top/youtube/@NYFT -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「影视」",時裝藝術表演² -https://live.iill.top/youtube/@shiftswim +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「娱乐」",아리랑 라디오 +https://live.iill.top/youtube/Music180Arirang +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ARe9sAdVJPQ&youtube&logo" group-title="•YouTube「娱乐」",破亿神曲 Playlist +https://live.iill.top/youtube/@HotPlaylist66 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/QntP-ZwxbJI&youtube&logo" group-title="•YouTube「娱乐」",Hot Douyin Studios +https://live.iill.top/youtube/@hottrendsdouyin #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「影视」",時裝藝術表演³ https://live.iill.top/youtube/@SPLASHme -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/15971668&douyin&logo" group-title="•抖音「其他」",李晨 nic -http://dns.yiandrive.com:15907/douyin/15971668 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/56697889278&douyin&logo" group-title="•抖音「其他」",与辉同行 -http://dns.yiandrive.com:15907/douyin/56697889278 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/c729856181&douyin&logo" group-title="•抖音「其他」",音乐🎵 -http://dns.yiandrive.com:15907/douyin/c729856181 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/499281557735&douyin&logo" group-title="•抖音「其他」",蓝瑞峰私教(女子减脂塑型) -http://dns.yiandrive.com:15907/douyin/499281557735 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/344880784&douyin&logo" group-title="•抖音「其他」",孙蕊 -http://dns.yiandrive.com:15907/douyin/344880784 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/cctvnews&douyin&logo" group-title="•抖音「其他」",央视新闻 -http://dns.yiandrive.com:15907/douyin/cctvnews +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/YouTube.png" group-title="•YouTube「影视」",時裝藝術表演² +https://live.iill.top/youtube/@shiftswim +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/=xQBw_dM-W8Y&youtube&logo" group-title="•YouTube「娱乐」",Chinese Mix +https://live.iill.top/youtube/@FM190-ld7qz +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/884124724993&douyin&logo" group-title="•抖音「其他」",🌵艾方皮皮 +http://dns.yiandrive.com:15907/douyin/884124724993 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/km5430678&soop&logo" group-title="•SOOP「娱乐」",붓잽이 +https://live.iill.top/soop/km5430678 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/87524611523&douyin&logo" group-title="•抖音「其他」",彪马 http://dns.yiandrive.com:15907/douyin/87524611523 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ShenJun668&douyin&logo" group-title="•抖音「其他」",自律哥有氧健身 -http://dns.yiandrive.com:15907/douyin/ShenJun668 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/79528712736&douyin&logo" group-title="•抖音「其他」",长虹 -http://dns.yiandrive.com:15907/douyin/79528712736 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dysjdy2003&douyin&logo" group-title="•抖音「其他」",AHTV第一时间 -http://dns.yiandrive.com:15907/douyin/dysjdy2003 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xidi1047&douyin&logo" group-title="•抖音「其他」",安徽西递村 -http://dns.yiandrive.com:15907/douyin/xidi1047 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/JGPYZBJ&douyin&logo" group-title="•抖音「其他」",交个朋友 -http://dns.yiandrive.com:15907/douyin/JGPYZBJ -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1646735015&douyin&logo" group-title="•抖音「其他」",哈尔滨冰雪大世界 -http://dns.yiandrive.com:15907/douyin/1646735015 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ys48341313&douyin&logo" group-title="•抖音「其他」",艺声 +http://dns.yiandrive.com:15907/douyin/ys48341313 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dongfangzhenxuan&douyin&logo" group-title="•抖音「其他」",东方甄选 +http://dns.yiandrive.com:15907/douyin/dongfangzhenxuan +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/huyuanxing&douyin&logo" group-title="•抖音「其他」",湖远行 +http://dns.yiandrive.com:15907/douyin/huyuanxing #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hddhy20202&douyin&logo" group-title="•抖音「其他」",海蒂的花园 http://dns.yiandrive.com:15907/douyin/hddhy20202 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/49253641881&douyin&logo" group-title="•抖音「其他」",拆卡酱酱 -http://dns.yiandrive.com:15907/douyin/49253641881 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/70101579594&douyin&logo" group-title="•抖音「其他」",雷雷老师 +http://dns.yiandrive.com:15907/douyin/70101579594 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/97276168660&douyin&logo" group-title="•抖音「其他」",充电宝工厂厂家 http://dns.yiandrive.com:15907/douyin/97276168660 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wangjiaolian996&douyin&logo" group-title="•抖音「其他」",隔壁王教练 -http://dns.yiandrive.com:15907/douyin/wangjiaolian996 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Wansuishan&douyin&logo" group-title="•抖音「其他」",万岁山武侠城 -http://dns.yiandrive.com:15907/douyin/Wansuishan -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/34154234354&douyin&logo" group-title="•抖音「其他」",上海鸿友二手车(阿豪) -http://dns.yiandrive.com:15907/douyin/34154234354 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/56g75&douyin&logo" group-title="•抖音「娱乐」",沫沫🍒 -http://dns.yiandrive.com:15907/douyin/56g75 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/156202315&douyin&logo" group-title="•抖音「娱乐」",媛媛YY -http://dns.yiandrive.com:15907/douyin/156202315 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/79528712736&douyin&logo" group-title="•抖音「其他」",长虹 +http://dns.yiandrive.com:15907/douyin/79528712736 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/RPY029&douyin&logo" group-title="•抖音「其他」",荣哥的珠宝日记 +http://dns.yiandrive.com:15907/douyin/RPY029 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/David.0726&douyin&logo" group-title="•抖音「其他」",大伟说 +http://dns.yiandrive.com:15907/douyin/David.0726 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/JGPYZBJ&douyin&logo" group-title="•抖音「其他」",交个朋友 +http://dns.yiandrive.com:15907/douyin/JGPYZBJ +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/kate413&douyin&logo" group-title="•抖音「娱乐」",哈哈小太阳 +http://dns.yiandrive.com:15907/douyin/kate413 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/rr9865&douyin&logo" group-title="•抖音「娱乐」",荏苒☀️⁹⁸⁶⁵ +http://dns.yiandrive.com:15907/douyin/rr9865 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/002299kan&douyin&logo" group-title="•抖音「娱乐」",砍砍 +http://dns.yiandrive.com:15907/douyin/002299kan +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Tttanglsr&douyin&logo" group-title="•抖音「娱乐」",名侦探少女娣 +http://dns.yiandrive.com:15907/douyin/Tttanglsr +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28515052282&douyin&logo" group-title="•抖音「娱乐」",繁星 +http://dns.yiandrive.com:15907/douyin/28515052282 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/W05291&douyin&logo" group-title="•抖音「娱乐」",纯伊吖🦊 +http://dns.yiandrive.com:15907/douyin/W05291 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Mt2000y&douyin&logo" group-title="•抖音「娱乐」",曼彤吖 +http://dns.yiandrive.com:15907/douyin/Mt2000y +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/56697889278&douyin&logo" group-title="•抖音「其他」",与辉同行 +http://dns.yiandrive.com:15907/douyin/56697889278 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8593370&douyin&logo" group-title="•抖音「其他」",二龙湖贾队长(搞笑说球) +http://dns.yiandrive.com:15907/douyin/8593370 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26304584&douyin&logo" group-title="•抖音「娱乐」",NaNa娜娜 +http://dns.yiandrive.com:15907/douyin/26304584 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/73408575816&douyin&logo" group-title="•抖音「娱乐」",珍晶果 +http://dns.yiandrive.com:15907/douyin/73408575816 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Lusa17781&douyin&logo" group-title="•抖音「娱乐」",Lusa +http://dns.yiandrive.com:15907/douyin/Lusa17781 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/OoOlOxO&douyin&logo" group-title="•抖音「娱乐」",蔚喂味 +http://dns.yiandrive.com:15907/douyin/OoOlOxO +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ELYM_26&douyin&logo" group-title="•抖音「娱乐」",见日月 +http://dns.yiandrive.com:15907/douyin/ELYM_26 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52006yy&douyin&logo" group-title="•抖音「娱乐」",我不妮姐 +http://dns.yiandrive.com:15907/douyin/52006yy +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/lemon87224&douyin&logo" group-title="•抖音「娱乐」",芊一nice🎤 +http://dns.yiandrive.com:15907/douyin/lemon87224 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hx88866.&douyin&logo" group-title="•抖音「娱乐」",韩哈哈 +http://dns.yiandrive.com:15907/douyin/hx88866. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/JJ04_7&douyin&logo" group-title="•抖音「娱乐」",静静不静- +http://dns.yiandrive.com:15907/douyin/JJ04_7 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/67520966039&douyin&logo" group-title="•抖音「娱乐」",御兔🐰 +http://dns.yiandrive.com:15907/douyin/67520966039 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/YXY1234520yy&douyin&logo" group-title="•抖音「娱乐」",一只特立独行的猪 +http://dns.yiandrive.com:15907/douyin/YXY1234520yy +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1693076055&douyin&logo" group-title="•抖音「娱乐」",🍑安安🍑 +http://dns.yiandrive.com:15907/douyin/1693076055 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/keyanbeibi27&douyin&logo" group-title="•抖音「娱乐」",小甜北鼻🍎 +http://dns.yiandrive.com:15907/douyin/keyanbeibi27 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/965256858&douyin&logo" group-title="•抖音「娱乐」",叁公子 +http://dns.yiandrive.com:15907/douyin/965256858 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/37947745520&douyin&logo" group-title="•抖音「娱乐」",☁️芸芸加油呀! +http://dns.yiandrive.com:15907/douyin/37947745520 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/bk77072067896&douyin&logo" group-title="•抖音「娱乐」",39: +http://dns.yiandrive.com:15907/douyin/bk77072067896 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/66528911343&douyin&logo" group-title="•抖音「娱乐」",花开富贵La +http://dns.yiandrive.com:15907/douyin/66528911343 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22519550367&douyin&logo" group-title="•抖音「娱乐」",黎吧啦 http://dns.yiandrive.com:15907/douyin/22519550367 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Q345328&douyin&logo" group-title="•抖音「娱乐」",小护士💉 -http://dns.yiandrive.com:15907/douyin/Q345328 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/66bbj&douyin&logo" group-title="•抖音「娱乐」",萱姐姐 -http://dns.yiandrive.com:15907/douyin/66bbj -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/kele7886&douyin&logo" group-title="•抖音「娱乐」",可乐: -http://dns.yiandrive.com:15907/douyin/kele7886 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/269875672114&douyin&logo" group-title="•抖音「其他」",第一财经 -http://dns.yiandrive.com:15907/douyin/269875672114 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/779963w&douyin&logo" group-title="•抖音「娱乐」",Rena娜娜💕 +http://dns.yiandrive.com:15907/douyin/779963w #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ykwyykx&douyin&logo" group-title="•抖音「娱乐」",语文椰椰 http://dns.yiandrive.com:15907/douyin/ykwyykx -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/39522055235&logo" group-title="•抖音「娱乐」",美第奇 -http://dns.yiandrive.com:15907/douyin/39522055235 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ganganjiang&douyin&logo" group-title="•抖音「娱乐」",淦淦老师💫 -http://dns.yiandrive.com:15907/douyin/ganganjiang -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28079634158D&douyin&logo" group-title="•抖音「娱乐」",戴戴 -http://dns.yiandrive.com:15907/douyin/28079634158D -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/LANQIER707&douyin&logo" group-title="•抖音「娱乐」",蓝柒儿 -http://dns.yiandrive.com:15907/douyin/LANQIER707 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/93505305774&douyin&logo" group-title="•抖音「娱乐」",小尤漫曲 -http://dns.yiandrive.com:15907/douyin/93505305774 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/78263998568&douyin&logo" group-title="•抖音「娱乐」",玛卡巴卡 -http://dns.yiandrive.com:15907/douyin/78263998568 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/78371737721&douyin&logo" group-title="•抖音「娱乐」",奥莉🥝 -http://dns.yiandrive.com:15907/douyin/78371737721 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/102953757&douyin&logo" group-title="•抖音「娱乐」",胖胖✈️☁️ -http://dns.yiandrive.com:15907/douyin/102953757 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/56069051966&douyin&logo" group-title="•抖音「娱乐」",成都北湖保时捷中心 认证徽章 -http://dns.yiandrive.com:15907/douyin/56069051966 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/79690305011&douyin&logo" group-title="•抖音「娱乐」",小姨 -http://dns.yiandrive.com:15907/douyin/79690305011 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jindou818&douyin&logo" group-title="•抖音「娱乐」",小金逗 -http://dns.yiandrive.com:15907/douyin/jindou818 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/91904602058&douyin&logo" group-title="•抖音「娱乐」",阿曼baby -http://dns.yiandrive.com:15907/douyin/91904602058 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Dzhi0311&douyin&logo" group-title="•抖音「娱乐」",多痣吖【声控助眠】 -http://dns.yiandrive.com:15907/douyin/Dzhi0311 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/50617199&douyin&logo" group-title="•抖音「娱乐」",坏空空 -http://dns.yiandrive.com:15907/douyin/50617199 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/imm6688..&douyin&logo" group-title="•抖音「娱乐」",周末🍫 +http://dns.yiandrive.com:15907/douyin/imm6688.. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/00798l&douyin&logo" group-title="•抖音「娱乐」",刘桐童 +http://dns.yiandrive.com:15907/douyin/00798l +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/voney626&douyin&logo" group-title="•抖音「娱乐」",小邦尼Voney +http://dns.yiandrive.com:15907/douyin/voney626 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Quan20200724&douyin&logo" group-title="•抖音「娱乐」",圈💃 +http://dns.yiandrive.com:15907/douyin/Quan20200724 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ssfbq55&douyin&logo" group-title="•抖音「娱乐」",🦈鲨鲨 +http://dns.yiandrive.com:15907/douyin/ssfbq55 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/XSS62888&douyin&logo" group-title="•抖音「娱乐」",一只小鲨er +http://dns.yiandrive.com:15907/douyin/XSS62888 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22935y&douyin&logo" group-title="•抖音「娱乐」",小言妃 +http://dns.yiandrive.com:15907/douyin/22935y +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Ytjtyyjyy65&douyin&logo" group-title="•抖音「娱乐」",悦悦今天不困啦 +http://dns.yiandrive.com:15907/douyin/Ytjtyyjyy65 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/suofeiye&douyin&logo" group-title="•抖音「娱乐」",索菲叶 +http://dns.yiandrive.com:15907/douyin/suofeiye +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/97496811625&douyin&logo" group-title="•抖音「娱乐」",小橙子yo🍊 ⁰³¹⁷ +http://dns.yiandrive.com:15907/douyin/97496811625 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/yi8812332188&douyin&logo" group-title="•抖音「娱乐」",蒙奇D婉婉 +http://dns.yiandrive.com:15907/douyin/yi8812332188 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/60298401254&douyin&logo" group-title="•抖音「娱乐」",小1. +http://dns.yiandrive.com:15907/douyin/60298401254 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2231817936&douyin&logo" group-title="•抖音「娱乐」",泡泡学姐 +http://dns.yiandrive.com:15907/douyin/2231817936 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/mq87777&douyin&logo" group-title="•抖音「娱乐」",萌七啊丶 +http://dns.yiandrive.com:15907/douyin/mq87777 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Emmaddpp&douyin&logo" group-title="•抖音「娱乐」",小猪咪🐷 +http://dns.yiandrive.com:15907/douyin/Emmaddpp +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20040719xi&douyin&logo" group-title="•抖音「娱乐」",兮兮不饿啦 +http://dns.yiandrive.com:15907/douyin/20040719xi +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/sstczb&douyin&logo" group-title="•抖音「娱乐」",三岁天才煮波 +http://dns.yiandrive.com:15907/douyin/sstczb +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1676336575&douyin&logo" group-title="•抖音「娱乐」",听泉 +http://dns.yiandrive.com:15907/douyin/1676336575 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zhao0967&douyin&logo" group-title="•抖音「娱乐」",赵妲己😊 +http://dns.yiandrive.com:15907/douyin/zhao0967 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Wendy71299&douyin&logo" group-title="•抖音「娱乐」",Wendy` +http://dns.yiandrive.com:15907/douyin/Wendy71299 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/69942240253&douyin&logo" group-title="•抖音「娱乐」",香妃 +http://dns.yiandrive.com:15907/douyin/69942240253 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wu05.25&douyin&logo" group-title="•抖音「娱乐」",姜又又 +http://dns.yiandrive.com:15907/douyin/wu05.25 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Mio0811&douyin&logo" group-title="•抖音「娱乐」",洛芙baby +http://dns.yiandrive.com:15907/douyin/Mio0811 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/DNM16013021&douyin&logo" group-title="•抖音「娱乐」",小黄鱼. +http://dns.yiandrive.com:15907/douyin/DNM16013021 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/41832903946&douyin&logo" group-title="•抖音「娱乐」",灵酱 +http://dns.yiandrive.com:15907/douyin/41832903946 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/86418565517&douyin&logo" group-title="•抖音「娱乐」",宛XING +http://dns.yiandrive.com:15907/douyin/86418565517 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jannyone&douyin&logo" group-title="•抖音「娱乐」",辣辣! +http://dns.yiandrive.com:15907/douyin/jannyone +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/78091791903&douyin&logo" group-title="•抖音「娱乐」",汤圆 +http://dns.yiandrive.com:15907/douyin/78091791903 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/69561584138&douyin&logo" group-title="•抖音「娱乐」",小豆干 +http://dns.yiandrive.com:15907/douyin/69561584138 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dyllfxvwcv6n&douyin&logo" group-title="•抖音「娱乐」",艾方皮皮 +http://dns.yiandrive.com:15907/douyin/dyllfxvwcv6n +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Xiaosurou0802&douyin&logo" group-title="•抖音「娱乐」",小酥肉 +http://dns.yiandrive.com:15907/douyin/Xiaosurou0802 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/128851795&douyin&logo" group-title="•抖音「娱乐」",爱哭的又又 +http://dns.yiandrive.com:15907/douyin/128851795 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/60078295522&douyin&logo" group-title="•抖音「娱乐」",清纯学姐 +http://dns.yiandrive.com:15907/douyin/60078295522 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/mlgm1014&douyin&logo" group-title="•抖音「娱乐」",迷小谜 +http://dns.yiandrive.com:15907/douyin/mlgm1014 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/JJ1012SS&douyin&logo" group-title="•抖音「娱乐」",挽柔 +http://dns.yiandrive.com:15907/douyin/JJ1012SS +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jydaishi&douyin&logo" group-title="•抖音「娱乐」",JY戴士 +http://dns.yiandrive.com:15907/douyin/jydaishi +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/110101yyds&douyin&logo" group-title="•抖音「娱乐」",胡同串子 +http://dns.yiandrive.com:15907/douyin/110101yyds +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xiaoqi28613&douyin&logo" group-title="•抖音「娱乐」",小七的旅行 +http://dns.yiandrive.com:15907/douyin/xiaoqi28613 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/may.lyly&douyin&logo" group-title="•抖音「娱乐」",阿艺呀嘿 +http://dns.yiandrive.com:15907/douyin/may.lyly +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/886260229&douyin&logo" group-title="•抖音「娱乐」",南歌 +http://dns.yiandrive.com:15907/douyin/886260229 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/meizhoubao66.&douyin&logo" group-title="•抖音「娱乐」",美洲豹 +http://dns.yiandrive.com:15907/douyin/meizhoubao66. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/70754080872&douyin&logo" group-title="•抖音「娱乐」",天才小茯苓 +http://dns.yiandrive.com:15907/douyin/70754080872 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/lushiyanliang&douyin&logo" group-title="•抖音「娱乐」",炉石炎凉 +http://dns.yiandrive.com:15907/douyin/lushiyanliang #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Ppnn..&douyin&logo" group-title="•抖音「娱乐」",嘚啵嘚啵 http://dns.yiandrive.com:15907/douyin/Ppnn.. -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/83167984831&douyin&logo" group-title="•抖音「娱乐」",迎新优选 -http://dns.yiandrive.com:15907/douyin/83167984831 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1870083847&douyin&logo" group-title="•抖音「娱乐」",静姝儿 -http://dns.yiandrive.com:15907/douyin/1870083847 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3221411&douyin&logo" group-title="•抖音「娱乐」",林黛玉. -http://dns.yiandrive.com:15907/douyin/3221411 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/70129332981&douyin&logo" group-title="•抖音「娱乐」",春木小禾 -http://dns.yiandrive.com:15907/douyin/70129332981 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/h010318&douyin&logo" group-title="•抖音「娱乐」",中国舞赤赤 -http://dns.yiandrive.com:15907/douyin/h010318 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hunanjingshi&douyin&logo" group-title="•抖音「影视」",湖南经视 -http://dns.yiandrive.com:15907/douyin/hunanjingshi -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/744280177745&douyin&logo" group-title="•抖音「游戏」",城城吖 -http://dns.yiandrive.com:15907/douyin/744280177745 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/d5youtai&douyin&logo" group-title="•抖音「游戏」",第五 犹太(纱比以色列!) -http://dns.yiandrive.com:15907/douyin/d5youtai -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/677132919773&douyin&logo" group-title="•抖音「娱乐」",月宝🌙 -http://dns.yiandrive.com:15907/douyin/677132919773 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Tinabb..&douyin&logo" group-title="•抖音「娱乐」",Tinabb.. +http://dns.yiandrive.com:15907/douyin/Tinabb.. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/yujiaxh66&douyin&logo" group-title="•抖音「娱乐」",小惠姐姐 +http://dns.yiandrive.com:15907/douyin/yujiaxh66 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ybbcute&douyin&logo" group-title="•抖音「娱乐」",上海陈舒婷 +http://dns.yiandrive.com:15907/douyin/ybbcute +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/bbh060112&douyin&logo" group-title="•抖音「娱乐」",bb禾 +http://dns.yiandrive.com:15907/douyin/bbh060112 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/197992475136&douyin&logo" group-title="•抖音「娱乐」",Han +http://dns.yiandrive.com:15907/douyin/197992475136 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/hanmei168168&douyin&logo" group-title="•抖音「娱乐」",Han +http://dns.yiandrive.com:15907/douyin/hanmei168168 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/L77777k_&douyin&logo" group-title="•抖音「娱乐」",藤椒鱼 +http://dns.yiandrive.com:15907/douyin/L77777k_ +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/825551697226&douyin&logo" group-title="•抖音「娱乐」", 木森大舞台直播 +http://dns.yiandrive.com:15907/douyin/825551697226 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1832316360&douyin&logo" group-title="•抖音「娱乐」",🍦精瘦瘦🍦 +http://dns.yiandrive.com:15907/douyin/1832316360 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zzxx52000&douyin&logo" group-title="•抖音「娱乐」",梓桐桐^_^ +http://dns.yiandrive.com:15907/douyin/zzxx52000 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/抖音.png" group-title="•抖音「娱乐」",小浣熊 +http://dns.yiandrive.com:15907/douyin/829156698852 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/yulonghai88888&douyin&logo" group-title="•抖音「娱乐」",禹龙海 +http://dns.yiandrive.com:15907/douyin/yulonghai88888 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/64453769141 &douyin&logo" group-title="•抖音「娱乐」",正经赵⁰¹⁰ +http://dns.yiandrive.com:15907/douyin/64453769141 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/KENNY_LIU&douyin&logo" group-title="•抖音「娱乐」",刘丝壶 +http://dns.yiandrive.com:15907/douyin/KENNY_LIU +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/JM66596&douyin&logo" group-title="•抖音「娱乐」",迫击炮芥末 +http://dns.yiandrive.com:15907/douyin/JM66596 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/59342799379&douyin&logo" group-title="•抖音「娱乐」",小猪耶 +http://dns.yiandrive.com:15907/douyin/59342799379 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/93921375095&douyin&logo" group-title="•抖音「娱乐」",女丑女丑💓 +http://dns.yiandrive.com:15907/douyin/93921375095 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xq0208599&douyin&logo" group-title="•抖音「娱乐」",半半 http://dns.yiandrive.com:15907/douyin/xq0208599 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/69446958014&douyin&logo" group-title="•抖音「娱乐」",强哥爱录助眠🥫(世一虚) +http://dns.yiandrive.com:15907/douyin/69446958014 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/134872..&douyin&logo" group-title="•抖音「娱乐」",橘又 +http://dns.yiandrive.com:15907/douyin/134872.. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/79690305011&douyin&logo" group-title="•抖音「娱乐」",小姨 +http://dns.yiandrive.com:15907/douyin/79690305011 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xggd_1&douyin&logo" group-title="•抖音「娱乐」",张力(寒宝宝) +http://dns.yiandrive.com:15907/douyin/xggd_1 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Wtccc666&douyin&logo" group-title="•抖音「娱乐」",文婷🦄️ +http://dns.yiandrive.com:15907/douyin/Wtccc666 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Miyasz&douyin&logo" group-title="•抖音「娱乐」",姜妍妍 +http://dns.yiandrive.com:15907/douyin/Miyasz +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/56268329299&douyin&logo" group-title="•抖音「娱乐」",天才小茯苓 +http://dns.yiandrive.com:15907/douyin/56268329299 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/38772373982&douyin&logo" group-title="•抖音「娱乐」",带刺玫瑰 +http://dns.yiandrive.com:15907/douyin/38772373982 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/71827625852&douyin&logo" group-title="•抖音「娱乐」",杨一歌 +http://dns.yiandrive.com:15907/douyin/71827625852 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28369433508&douyin&logo" group-title="•抖音「娱乐」",不饿 +http://dns.yiandrive.com:15907/douyin/28369433508 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/191634020590&douyin&logo" group-title="•抖音「娱乐」",兔子菌🍄 +http://dns.yiandrive.com:15907/douyin/191634020590 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52984281580&douyin&logo" group-title="•抖音「娱乐」",白沉香🫧 +http://dns.yiandrive.com:15907/douyin/52984281580 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/RouRou526.&douyin&logo" group-title="•抖音「娱乐」",肉肉526 +http://dns.yiandrive.com:15907/douyin/RouRou526. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wxx0706.&douyin&logo" group-title="•抖音「娱乐」",王小小✨️ +http://dns.yiandrive.com:15907/douyin/wxx0706. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/606123192586&douyin&logo" group-title="•抖音「娱乐」",格格℘ +http://dns.yiandrive.com:15907/douyin/606123192586 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/878224077819&douyin&logo" group-title="•抖音「娱乐」",小芹a +http://dns.yiandrive.com:15907/douyin/878224077819 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/856043350098&douyin&logo" group-title="•抖音「娱乐」",古筝承丞 +http://dns.yiandrive.com:15907/douyin/856043350098 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/743098711321&douyin&logo" group-title="•抖音「娱乐」",舞蹈生思思🩰 +http://dns.yiandrive.com:15907/douyin/743098711321 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/MS1407&douyin&logo" group-title="•抖音「娱乐」",木森(卷土从来) +http://dns.yiandrive.com:15907/douyin/MS1407 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/482662737917&douyin&logo" group-title="•抖音「娱乐」",星儿🌙✨ +http://dns.yiandrive.com:15907/douyin/482662737917 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/390483941487&douyin&logo" group-title="•抖音「娱乐」",林诗音(林冉冉) +http://dns.yiandrive.com:15907/douyin/390483941487 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20231126han&douyin&logo" group-title="•抖音「娱乐」",韩千亿文化 +http://dns.yiandrive.com:15907/douyin/20231126han +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/doubao749&douyin&logo" group-title="•抖音「娱乐」",豆包户外生存 +http://dns.yiandrive.com:15907/douyin/doubao749 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Mz117.&douyin&logo" group-title="•抖音「娱乐」",十七☪ +http://dns.yiandrive.com:15907/douyin/Mz117. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/002582Xys&douyin&logo" group-title="•抖音「娱乐」",大锤🩰ˡʸᵇʸ +http://dns.yiandrive.com:15907/douyin/002582Xys +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/697475299699&douyin&logo" group-title="•抖音「娱乐」",涵涵 +http://dns.yiandrive.com:15907/douyin/697475299699 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/247176962731&douyin&logo" group-title="•抖音「娱乐」",孟令辉 +http://dns.yiandrive.com:15907/douyin/247176962731 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/540028685614&douyin&logo" group-title="•抖音「娱乐」",韩允善🍀 http://dns.yiandrive.com:15907/douyin/540028685614 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/60395090567&douyin&logo" group-title="•抖音「娱乐」",懒洋洋羊羊 -http://dns.yiandrive.com:15907/douyin/60395090567 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/QingYe965&douyin&logo" group-title="•抖音「游戏」",青野(小乔) -http://dns.yiandrive.com:15907/douyin/QingYe965 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/My763519799&douyin&logo" group-title="•抖音「游戏」",AY(芈月) -http://dns.yiandrive.com:15907/douyin/My763519799 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/cctv6media.&douyin&logo" group-title="•抖音「影视」",电影 -http://dns.yiandrive.com:15907/douyin/cctv6media. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/200525029536&douyin&logo" group-title="•抖音「游戏」",Mr_Quin +http://dns.yiandrive.com:15907/douyin/200525029536 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wbswzw&douyin&logo" group-title="•抖音「娱乐」",王中王 +http://dns.yiandrive.com:15907/douyin/wbswzw +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/814479720489&douyin&logo" group-title="•抖音「娱乐」",🌈黄豆芽儿 +http://dns.yiandrive.com:15907/douyin/814479720489 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Lxx13&douyin&logo" group-title="•抖音「娱乐」",tay·璇儿 +http://dns.yiandrive.com:15907/douyin/Lxx13 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/86275289503&douyin&logo" group-title="•抖音「游戏」",坦克世界-中队 +http://dns.yiandrive.com:15907/douyin/86275289503 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/tiannaibaby&douyin&logo" group-title="•抖音「游戏」",甜奈 +http://dns.yiandrive.com:15907/douyin/tiannaibaby +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wot1991&douyin&logo" group-title="•抖音「游戏」",坦克世界-聆听 +http://dns.yiandrive.com:15907/douyin/wot1991 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wot_zhapi&douyin&logo" group-title="•抖音「游戏」",爱喝扎啤的潘车长 +http://dns.yiandrive.com:15907/douyin/wot_zhapi +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/lengdaixiangjiao&douyin&logo" group-title="•抖音「游戏」",冷黛🍌 +http://dns.yiandrive.com:15907/douyin/lengdaixiangjiao +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1460298848&douyin&logo" group-title="•抖音「游戏」",恩甜 +http://dns.yiandrive.com:15907/douyin/1460298848 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wsdyzz_&douyin&logo" group-title="•抖音「游戏」",熊抱 +http://dns.yiandrive.com:15907/douyin/wsdyzz_ +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wwjnbnbnb&douyin&logo" group-title="•抖音「游戏」",可杰 +http://dns.yiandrive.com:15907/douyin/wwjnbnbnb +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/90492165361&douyin&logo" group-title="•抖音「游戏」",不会捏蓝 +http://dns.yiandrive.com:15907/douyin/90492165361 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/keyuanna19&douyin&logo" group-title="•抖音「游戏」",萝卜 +http://dns.yiandrive.com:15907/douyin/keyuanna19 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xuehanhan.&douyin&logo" group-title="•抖音「游戏」",第五雪憨憨 +http://dns.yiandrive.com:15907/douyin/xuehanhan. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/38993952516&douyin&logo" group-title="•抖音「游戏」",气人主播QQQ +http://dns.yiandrive.com:15907/douyin/38993952516 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/keyis153&douyin&logo" group-title="•抖音「游戏」",陈伯 +http://dns.yiandrive.com:15907/douyin/keyis153 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xyjqr&douyin&logo" group-title="•抖音「游戏」",心愿机器人 +http://dns.yiandrive.com:15907/douyin/xyjqr +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/93276041656&douyin&logo" group-title="•抖音「游戏」",声闻 +http://dns.yiandrive.com:15907/douyin/93276041656 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/paopao90969&douyin&logo" group-title="•抖音「游戏」",CF爱音 +http://dns.yiandrive.com:15907/douyin/paopao90969 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/sorry51074&douyin&logo" group-title="•抖音「游戏」",张君雅 +http://dns.yiandrive.com:15907/douyin/sorry51074 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/202477450833&douyin&logo" group-title="•抖音「游戏」",逍遥豆芽 +http://dns.yiandrive.com:15907/douyin/202477450833 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1490918731&douyin&logo" group-title="•抖音「游戏」",逍遥土豆 +http://dns.yiandrive.com:15907/douyin/1490918731 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/tamu12345&douyin&logo" group-title="•抖音「游戏」",塔姆大王(英雄联盟) +http://dns.yiandrive.com:15907/douyin/tamu12345 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/kenan0726&douyin&logo" group-title="•抖音「游戏」",阔澜 +http://dns.yiandrive.com:15907/douyin/kenan0726 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Limmz1225&douyin&logo" group-title="•抖音「游戏」",木沐 +http://dns.yiandrive.com:15907/douyin/Limmz1225 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Hezai250&douyin&logo" group-title="•抖音「游戏」",河崽 +http://dns.yiandrive.com:15907/douyin/Hezai250 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xiaochai1126&douyin&logo" group-title="•抖音「游戏」",英雄联盟-小柴 +http://dns.yiandrive.com:15907/douyin/xiaochai1126 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/744280177745&douyin&logo" group-title="•抖音「游戏」",城城吖 +http://dns.yiandrive.com:15907/douyin/744280177745 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Flaws777&douyin&logo" group-title="•抖音「游戏」",破绽 +http://dns.yiandrive.com:15907/douyin/Flaws777 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/handong9&douyin&logo" group-title="•抖音「游戏」",寒冬zz +http://dns.yiandrive.com:15907/douyin/handong9 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/BinBin110&douyin&logo" group-title="•抖音「游戏」",解忧 +http://dns.yiandrive.com:15907/douyin/BinBin110 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/95272484107&douyin&logo" group-title="•抖音「游戏」",菜菜宇 +http://dns.yiandrive.com:15907/douyin/95272484107 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Kele9999..&douyin&logo" group-title="•抖音「游戏」",可乐 +http://dns.yiandrive.com:15907/douyin/Kele9999.. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/A2959913453&douyin&logo" group-title="•抖音「游戏」",子默 +http://dns.yiandrive.com:15907/douyin/A2959913453 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/342901025&douyin&logo" group-title="•抖音「游戏」",龙阳 +http://dns.yiandrive.com:15907/douyin/342901025 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/139619960&douyin&logo" group-title="•抖音「游戏」",河口小甜龙(猎杀对决) +http://dns.yiandrive.com:15907/douyin/139619960 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zx1314555555&douyin&logo" group-title="•抖音「游戏」",充充 +http://dns.yiandrive.com:15907/douyin/zx1314555555 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/704357527718&douyin&logo" group-title="•抖音「游戏」",剑灵 +http://dns.yiandrive.com:15907/douyin/704357527718 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/64186752222&douyin&logo" group-title="•抖音「游戏」",可乐 +http://dns.yiandrive.com:15907/douyin/64186752222 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/HZQtianxiadiyi&douyin&logo" group-title="•抖音「游戏」",燕十三 +http://dns.yiandrive.com:15907/douyin/HZQtianxiadiyi +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/sumohuang&douyin&logo" group-title="•抖音「游戏」",CF苏墨凰 +http://dns.yiandrive.com:15907/douyin/sumohuang +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/324546102&douyin&logo" group-title="•抖音「游戏」",演绎 +http://dns.yiandrive.com:15907/douyin/324546102 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/cf666zx666&douyin&logo" group-title="•抖音「游戏」",CF喷漆(老六) +http://dns.yiandrive.com:15907/douyin/cf666zx666 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/quinmole&douyin&logo" group-title="•抖音「游戏」",Mr.quin +http://dns.yiandrive.com:15907/douyin/quinmole +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/933711428606&douyin&logo" group-title="•抖音「游戏」",金铲铲小叶(阵容王) +http://dns.yiandrive.com:15907/douyin/933711428606 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2159897264&douyin&logo" group-title="•抖音「游戏」",CF.放大晋 +http://dns.yiandrive.com:15907/douyin/2159897264 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/cfmaoqi666&douyin&logo" group-title="•抖音「游戏」",CF猫七 +http://dns.yiandrive.com:15907/douyin/cfmaoqi666 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Youhen....&douyin&logo" group-title="•抖音「游戏」",有痕关头露娜 +http://dns.yiandrive.com:15907/douyin/Youhen.... +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5248038&douyin&logo" group-title="•抖音「游戏」",海洋. +http://dns.yiandrive.com:15907/douyin/5248038 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Loveyasuo1&douyin&logo" group-title="•抖音「游戏」",家海亚索 http://dns.yiandrive.com:15907/douyin/Loveyasuo1 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/linhaowutian&douyin&logo" group-title="•抖音「游戏」",Akun_典狱长 -http://dns.yiandrive.com:15907/douyin/linhaowutian -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/466895498926&douyin&logo" group-title="•抖音「游戏」",高子巷 -http://dns.yiandrive.com:15907/douyin/466895498926 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jjworld&douyin&logo" group-title="•抖音「游戏」",JJ斗地主 +http://dns.yiandrive.com:15907/douyin/jjworld +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/83791455679&douyin&logo" group-title="•抖音「游戏」",谢尔比·李 +http://dns.yiandrive.com:15907/douyin/83791455679 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/IPiggg&douyin&logo" group-title="•抖音「游戏」",Pigg +http://dns.yiandrive.com:15907/douyin/IPiggg +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/抖音.png" group-title="•抖音「游戏」",数码 +http://dns.yiandrive.com:15907/douyin/shumajiang73 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/205600638416&douyin&logo" group-title="•抖音「游戏」",小陈_Littlechen(六冠王) +http://dns.yiandrive.com:15907/douyin/205600638416 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1009277416&douyin&logo" group-title="•抖音「游戏」",CF.阿肯 +http://dns.yiandrive.com:15907/douyin/1009277416 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Lkx_CS2&douyin&logo" group-title="•抖音「游戏」",赖科旭 +http://dns.yiandrive.com:15907/douyin/Lkx_CS2 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/抖音.png" group-title="•抖音「游戏」",直男7 +http://dns.yiandrive.com:15907/douyin/aaaaee +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/70605329&douyin&logo" group-title="•抖音「游戏」",禅游小辣椒 +http://dns.yiandrive.com:15907/douyin/70605329 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/494992812876&douyin&logo" group-title="•抖音「游戏」",门神Soloman +http://dns.yiandrive.com:15907/douyin/494992812876 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/QingYe965&douyin&logo" group-title="•抖音「游戏」",青野(小乔) +http://dns.yiandrive.com:15907/douyin/QingYe965 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xiaohaichuishi&douyin&logo" group-title="•抖音「游戏」",小海锤石 +http://dns.yiandrive.com:15907/douyin/xiaohaichuishi +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/654952901902&douyin&logo" group-title="•抖音「游戏」",小海锤石 +http://dns.yiandrive.com:15907/douyin/654952901902 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/rlgx9988&douyin&logo" group-title="•抖音「游戏」",日落光信(打野李信) +http://dns.yiandrive.com:15907/douyin/rlgx9988 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/抖音.png" group-title="•抖音「游戏」",煮酒论枭雄 +http://dns.yiandrive.com:15907/douyin/74718693057 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/yall1102&douyin&logo" group-title="•抖音「游戏」",王者荣耀鸭梨 +http://dns.yiandrive.com:15907/douyin/yall1102 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/594976188049&douyin&logo" group-title="•抖音「游戏」",不会捏蓝(永劫无间) +http://dns.yiandrive.com:15907/douyin/594976188049 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/814732060312&douyin&logo" group-title="•抖音「游戏」",Pigg +http://dns.yiandrive.com:15907/douyin/814732060312 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/38303588212&douyin&logo" group-title="•抖音「游戏」",王者荣耀黄靖(米莱狄) +http://dns.yiandrive.com:15907/douyin/38303588212 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Lelee21&douyin&logo" group-title="•抖音「游戏」",麻勒勒 +http://dns.yiandrive.com:15907/douyin/Lelee21 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/My763519799&douyin&logo" group-title="•抖音「游戏」",AY(芈月) +http://dns.yiandrive.com:15907/douyin/My763519799 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ergelaodeng666&douyin&logo" group-title="•抖音「游戏」",CF.老登 +http://dns.yiandrive.com:15907/douyin/ergelaodeng666 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9niub&douyin&logo" group-title="•抖音「游戏」",老九(9niub) +http://dns.yiandrive.com:15907/douyin/9niub +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/w2417113577&douyin&logo" group-title="•抖音「游戏」",橙C_很奈斯 +http://dns.yiandrive.com:15907/douyin/w2417113577 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/HD5903&douyin&logo" group-title="•抖音「游戏」",辛吉东 +http://dns.yiandrive.com:15907/douyin/HD5903 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/953782519&douyin&logo" group-title="•抖音「游戏」",飞行员 +http://dns.yiandrive.com:15907/douyin/953782519 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/goushenGG6&douyin&logo" group-title="•抖音「游戏」",狗神(御弟) +http://dns.yiandrive.com:15907/douyin/goushenGG6 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/banzhizhu&douyin&logo" group-title="•抖音「游戏」",星际半只猪 +http://dns.yiandrive.com:15907/douyin/banzhizhu +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dykl76pf5h7u&douyin&logo" group-title="•抖音「游戏」",红警牛弟 +http://dns.yiandrive.com:15907/douyin/dykl76pf5h7u +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/93689402083&douyin&logo" group-title="•抖音「游戏」",小智 +http://dns.yiandrive.com:15907/douyin/93689402083 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Dylu111235&douyin&logo" group-title="•抖音「游戏」",王者荣耀浅陌 +http://dns.yiandrive.com:15907/douyin/Dylu111235 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/590890573&douyin&logo" group-title="•抖音「游戏」",风行云 +http://dns.yiandrive.com:15907/douyin/590890573 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/wudilongaoti&douyin&logo" group-title="•抖音「游戏」",无敌龙傲天 +http://dns.yiandrive.com:15907/douyin/wudilongaoti +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/942012919413&douyin&logo" group-title="•抖音「游戏」",斗佛(DNF手游榜一武神) +http://dns.yiandrive.com:15907/douyin/942012919413 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29461776985&douyin&logo" group-title="•抖音「游戏」",梦幻猫猫 http://dns.yiandrive.com:15907/douyin/29461776985 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/44397227086&douyin&logo" group-title="•抖音「游戏」",晚风(和平精英) -http://dns.yiandrive.com:15907/douyin/44397227086 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/ShenFeibb&douyin&logo" group-title="•抖音「游戏」",沈飞PUBG -http://dns.yiandrive.com:15907/douyin/ShenFeibb -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/tianci4533511&douyin&logo" group-title="•抖音「游戏」",天赐 -http://dns.yiandrive.com:15907/douyin/tianci4533511 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/sanjiu0530&douyin&logo" group-title="•抖音「游戏」",三酒 -http://dns.yiandrive.com:15907/douyin/sanjiu0530 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Kle716&douyin&logo" group-title="•抖音「游戏」",王者荣耀可乐(貂蝉) -http://dns.yiandrive.com:15907/douyin/Kle716 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/68444151609&douyin&logo" group-title="•抖音「游戏」",第五 知己不 +http://dns.yiandrive.com:15907/douyin/68444151609 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zbcll0715&douyin&logo" group-title="•抖音「游戏」",张不才 +http://dns.yiandrive.com:15907/douyin/zbcll0715 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/X763367&douyin&logo" group-title="•抖音「游戏」",第五 墨鱼 +http://dns.yiandrive.com:15907/douyin/X763367 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/aier22353&douyin&logo" group-title="•抖音「游戏」",第五 有妖气 +http://dns.yiandrive.com:15907/douyin/aier22353 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/47598052880&douyin&logo" group-title="•抖音「游戏」",王大枪 +http://dns.yiandrive.com:15907/douyin/47598052880 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/daqi8008&douyin&logo" group-title="•抖音「游戏」",大奇游戏解说⁸⁰⁰⁸ +http://dns.yiandrive.com:15907/douyin/daqi8008 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/nst_fairy&douyin&logo" group-title="•抖音「游戏」",瑜熙 +http://dns.yiandrive.com:15907/douyin/nst_fairy +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/xxxbaby..&douyin&logo" group-title="•抖音「游戏」",渲渲baby王者荣耀 +http://dns.yiandrive.com:15907/douyin/xxxbaby.. +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/longqidui2020&douyin&logo" group-title="•抖音「游戏」",袁磊多乐升级 +http://dns.yiandrive.com:15907/douyin/longqidui2020 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/AI_01927&douyin&logo" group-title="•抖音「游戏」",cs2Ai +http://dns.yiandrive.com:15907/douyin/AI_01927 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/434213&douyu&logo" group-title="•斗鱼「其他」",数码科技 http://dns.yiandrive.com:15907/douyu/434213 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8661966&douyu&logo" group-title="•斗鱼「其他」",下饭音乐 -http://dns.yiandrive.com:15907/douyu/8661966 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10205199&douyu&logo" group-title="•斗鱼「其他」",练习每一天 -http://dns.yiandrive.com:15907/douyu/10205199 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9742633&douyu&logo" group-title="•斗鱼「娱乐」",小梨梨Lily -http://dns.yiandrive.com:15907/douyu/9742633 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22186225964&douyin&logo" group-title="•抖音「游戏」",第五 格昊昊 +http://dns.yiandrive.com:15907/douyin/22186225964 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/236461&douyu&logo" group-title="•斗鱼「其他」",老高与小茉的死忠粉 http://dns.yiandrive.com:15907/douyu/236461 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Gouf521&douyin&logo" group-title="•抖音「游戏」",苟分男一号 +http://dns.yiandrive.com:15907/douyin/Gouf521 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8661966&douyu&logo" group-title="•斗鱼「其他」",下饭音乐 +http://dns.yiandrive.com:15907/douyu/8661966 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6295904&douyu&logo" group-title="•斗鱼「娱乐」",v黎一 +http://dns.yiandrive.com:15907/douyu/6295904 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10205199&douyu&logo" group-title="•斗鱼「其他」",练习每一天 +http://dns.yiandrive.com:15907/douyu/10205199 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/BEIHAG&douyin&logo" group-title="•抖音「游戏」",第五 北北北海 +http://dns.yiandrive.com:15907/douyin/BEIHAG +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Msgxad&douyin&logo" group-title="•抖音「游戏」",小阿东 +http://dns.yiandrive.com:15907/douyin/Msgxad +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9588891&douyu&logo" group-title="•斗鱼「娱乐」",秋月剪水 +http://dns.yiandrive.com:15907/douyu/9588891 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2448877&douyu&logo" group-title="•斗鱼「娱乐」",二十岁天才歌手 +http://dns.yiandrive.com:15907/douyu/2448877 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/704050xcz&douyin&logo" group-title="•抖音「游戏」",CF.故里 +http://dns.yiandrive.com:15907/douyin/704050xcz +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1461928890&douyin&logo" group-title="•抖音「游戏」",阿伟电竞 +http://dns.yiandrive.com:15907/douyin/1461928890 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「娱乐」",二呆啾 http://dns.yiandrive.com:15907/douyu/5092355 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10071735&douyu&logo" group-title="•斗鱼「娱乐」",Nice、奶思、 http://dns.yiandrive.com:15907/douyu/10071735 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Gouf521&douyin&logo" group-title="•抖音「游戏」",苟分男一号 -http://dns.yiandrive.com:15907/douyin/Gouf521 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/17732&douyu&logo" group-title="•斗鱼「娱乐」",7师傅 -http://dns.yiandrive.com:15907/douyu/17732 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/40297598268&douyin&logo" group-title="•抖音「游戏」",赵小刀 -http://dns.yiandrive.com:15907/douyin/40297598268 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11034942&douyu&logo" group-title="•斗鱼「娱乐」",夕夕没睡醒 -http://dns.yiandrive.com:15907/douyu/11034942 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9290755&douyu&logo" group-title="•斗鱼「影视」",风云 -http://dns.yiandrive.com:15907/douyu/9290755 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2935323&douyu&logo" group-title="•斗鱼「娱乐」",恐怖 +http://dns.yiandrive.com:15907/douyu/2935323 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8737695&douyu&logo" group-title="•斗鱼「娱乐」",文西与阿漆 http://dns.yiandrive.com:15907/douyu/8737695 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9236042&douyu&logo" group-title="•斗鱼「娱乐」",吐槽吐槽 http://dns.yiandrive.com:15907/douyu/9236042 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8543072&douyu&logo" group-title="•斗鱼「影视」",宰相刘罗锅 -http://dns.yiandrive.com:15907/douyu/8543072 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2935323&douyu&logo" group-title="•斗鱼「娱乐」",恐怖 -http://dns.yiandrive.com:15907/douyu/2935323 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12143022&douyu&logo" group-title="•斗鱼「影视」",60帧 -http://dns.yiandrive.com:15907/douyu/12143022 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6140589&douyu&logo" group-title="•斗鱼「影视」",漫威 -http://dns.yiandrive.com:15907/douyu/6140589 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4105989&douyu&logo" group-title="•斗鱼「影视」",变形金刚 -http://dns.yiandrive.com:15907/douyu/4105989 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8770422&douyu&logo" group-title="•斗鱼「影视」",豆瓣高分 -http://dns.yiandrive.com:15907/douyu/8770422 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9651304&douyu&logo" group-title="•斗鱼「影视」",变种人 http://dns.yiandrive.com:15907/douyu/9651304 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2793084&douyu&logo" group-title="•斗鱼「影视」",科幻 -http://dns.yiandrive.com:15907/douyu/2793084 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4246519&douyu&logo" group-title="•斗鱼「影视」",邵氏电影·1 -http://dns.yiandrive.com:15907/douyu/4246519 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8814650&douyu&logo" group-title="•斗鱼「影视」",霍格沃茨 -http://dns.yiandrive.com:15907/douyu/8814650 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7552568&douyu&logo" group-title="•斗鱼「影视」",隋唐演义 -http://dns.yiandrive.com:15907/douyu/7552568 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8543072&douyu&logo" group-title="•斗鱼「影视」",宰相刘罗锅 +http://dns.yiandrive.com:15907/douyu/8543072 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/968987&douyu&logo" group-title="•斗鱼「娱乐」",南妹儿 +http://dns.yiandrive.com:15907/douyu/968987 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5551871&douyu&logo" group-title="•斗鱼「娱乐」",Minana呀 +http://dns.yiandrive.com:15907/douyu/5551871 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",科幻灾难 http://dns.yiandrive.com:15907/douyu/323876 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/329667&douyu&logo" group-title="•斗鱼「娱乐」",kpop 音乐女团 -http://dns.yiandrive.com:15907/douyu/329667 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2104744&douyu&logo" group-title="•斗鱼「娱乐」",宇哥讲电影 http://dns.yiandrive.com:15907/douyu/2104744 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/434971&douyu&logo" group-title="•斗鱼「影视」",斗鱼影院 -http://dns.yiandrive.com:15907/douyu/434971 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/17732&douyu&logo" group-title="•斗鱼「娱乐」",7师傅 +http://dns.yiandrive.com:15907/douyu/17732 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8770422&douyu&logo" group-title="•斗鱼「影视」",豆瓣高分 +http://dns.yiandrive.com:15907/douyu/8770422 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6140589&douyu&logo" group-title="•斗鱼「影视」",漫威 +http://dns.yiandrive.com:15907/douyu/6140589 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3473163&douyu&logo" group-title="•斗鱼「娱乐」",胡嘉一 +http://dns.yiandrive.com:15907/douyu/3473163 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4105989&douyu&logo" group-title="•斗鱼「影视」",变形金刚 +http://dns.yiandrive.com:15907/douyu/4105989 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1165374&douyu&logo" group-title="•斗鱼「影视」",恐怖 http://dns.yiandrive.com:15907/douyu/1165374 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7552568&douyu&logo" group-title="•斗鱼「影视」",隋唐演义 +http://dns.yiandrive.com:15907/douyu/7552568 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3276456&douyu&logo" group-title="•斗鱼「娱乐」",贝拉小姐姐 +http://dns.yiandrive.com:15907/douyu/3276456 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4246519&douyu&logo" group-title="•斗鱼「影视」",邵氏电影·1 +http://dns.yiandrive.com:15907/douyu/4246519 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9286868&douyu&logo" group-title="•斗鱼「影视」",陈佩斯喜剧 +http://dns.yiandrive.com:15907/douyu/9286868 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/434971&douyu&logo" group-title="•斗鱼「影视」",斗鱼影院 +http://dns.yiandrive.com:15907/douyu/434971 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9290755&douyu&logo" group-title="•斗鱼「影视」",风云 +http://dns.yiandrive.com:15907/douyu/9290755 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8814650&douyu&logo" group-title="•斗鱼「影视」",霍格沃茨 +http://dns.yiandrive.com:15907/douyu/8814650 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/dy02le&douyin&logo" group-title="•抖音「游戏」",CF零贰 +http://dns.yiandrive.com:15907/douyin/dy02le +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/322360&douyu&logo" group-title="•斗鱼「影视」",小白 +http://dns.yiandrive.com:15907/douyu/322360 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2287949&douyu&logo" group-title="•斗鱼「影视」",成龙历险记 http://dns.yiandrive.com:15907/douyu/2287949 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/131977&douyu&logo" group-title="•斗鱼「影视」",Runningman http://dns.yiandrive.com:15907/douyu/131977 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9286868&douyu&logo" group-title="•斗鱼「影视」",陈佩斯喜剧 -http://dns.yiandrive.com:15907/douyu/9286868 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/610972&douyu&logo" group-title="•斗鱼「影视」",都市夜魔人 -http://dns.yiandrive.com:15907/douyu/610972 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",小片片说大片 -http://dns.yiandrive.com:15907/douyu/4258555 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",牛叔说电影 -http://dns.yiandrive.com:15907/douyu/2758565 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",刘老师说电影 http://dns.yiandrive.com:15907/douyu/8317926 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3439096&douyu&logo" group-title="•斗鱼「影视」",当燕双鹰遇见李元芳 -http://dns.yiandrive.com:15907/douyu/3439096 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",科幻Fans布玛 -http://dns.yiandrive.com:15907/douyu/3508304 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",贾玲经典小品 -http://dns.yiandrive.com:15907/douyu/10419541 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",万合天宜 -http://dns.yiandrive.com:15907/douyu/9220456 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8009547&douyu&logo" group-title="•斗鱼「影视」",香港鬼片 -http://dns.yiandrive.com:15907/douyu/8009547 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/322360&douyu&logo" group-title="•斗鱼「影视」",小白 -http://dns.yiandrive.com:15907/douyu/322360 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",史君说剧 -http://dns.yiandrive.com:15907/douyu/9419771 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/260322&douyu&logo" group-title="•斗鱼「影视」",懒猫 -http://dns.yiandrive.com:15907/douyu/260322 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5423&douyu&logo" group-title="•斗鱼「影视」",电影 -http://dns.yiandrive.com:15907/douyu/5423 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",宋小宝小品 -http://dns.yiandrive.com:15907/douyu/9817729 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",小约翰可汗 http://dns.yiandrive.com:15907/douyu/9738854 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",赵本山小品 -http://dns.yiandrive.com:15907/douyu/9817716 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",科幻Fans布玛 +http://dns.yiandrive.com:15907/douyu/3508304 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3439096&douyu&logo" group-title="•斗鱼「影视」",当燕双鹰遇见李元芳 +http://dns.yiandrive.com:15907/douyu/3439096 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/610972&douyu&logo" group-title="•斗鱼「影视」",都市夜魔人 +http://dns.yiandrive.com:15907/douyu/610972 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",史君说剧 +http://dns.yiandrive.com:15907/douyu/9419771 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",贾玲经典小品 +http://dns.yiandrive.com:15907/douyu/10419541 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",开心锤锤动漫 http://dns.yiandrive.com:15907/douyu/9018297 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5522351&douyu&logo" group-title="•斗鱼「影视」",疯狂小潴潴 -http://dns.yiandrive.com:15907/douyu/5522351 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/922564&douyu&logo" group-title="•斗鱼「影视」",卖女孩滴小姑凉 -http://dns.yiandrive.com:15907/douyu/922564 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11827530&douyu&logo" group-title="•斗鱼「影视」",家有儿女|一样二职 -http://dns.yiandrive.com:15907/douyu/11827530 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6863367&douyu&logo" group-title="•斗鱼「影视」",爱情公寓|爱情公寓vip -http://dns.yiandrive.com:15907/douyu/6863367 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6484910&douyu&logo" group-title="•斗鱼「影视」",名侦探柯南剧场版 -http://dns.yiandrive.com:15907/douyu/6484910 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11878141&douyu&logo" group-title="•斗鱼「影视」",蕃薯粥粥煮好了 -http://dns.yiandrive.com:15907/douyu/11878141 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",宋小宝小品 +http://dns.yiandrive.com:15907/douyu/9817729 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",小片片说大片 +http://dns.yiandrive.com:15907/douyu/4258555 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",大漠叔叔 http://dns.yiandrive.com:15907/douyu/1109218 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/426517&douyu&logo" group-title="•斗鱼「影视」",动漫轮播 +http://dns.yiandrive.com:15907/douyu/426517 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",牛叔说电影 +http://dns.yiandrive.com:15907/douyu/2758565 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",赵本山小品 +http://dns.yiandrive.com:15907/douyu/9817716 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11878141&douyu&logo" group-title="•斗鱼「影视」",蕃薯粥粥煮好了 +http://dns.yiandrive.com:15907/douyu/11878141 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5423&douyu&logo" group-title="•斗鱼「影视」",电影 +http://dns.yiandrive.com:15907/douyu/5423 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5522351&douyu&logo" group-title="•斗鱼「影视」",疯狂小潴潴 +http://dns.yiandrive.com:15907/douyu/5522351 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6863367&douyu&logo" group-title="•斗鱼「影视」",爱情公寓|爱情公寓vip +http://dns.yiandrive.com:15907/douyu/6863367 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/260322&douyu&logo" group-title="•斗鱼「影视」",懒猫 +http://dns.yiandrive.com:15907/douyu/260322 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",万合天宜 +http://dns.yiandrive.com:15907/douyu/9220456 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/922564&douyu&logo" group-title="•斗鱼「影视」",卖女孩滴小姑凉 +http://dns.yiandrive.com:15907/douyu/922564 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6484910&douyu&logo" group-title="•斗鱼「影视」",名侦探柯南剧场版 +http://dns.yiandrive.com:15907/douyu/6484910 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8009547&douyu&logo" group-title="•斗鱼「影视」",香港鬼片 +http://dns.yiandrive.com:15907/douyu/8009547 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12015111&douyu&logo" group-title="•斗鱼「影视」",经典老剧轮播 +http://dns.yiandrive.com:15907/douyu/12015111 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11827530&douyu&logo" group-title="•斗鱼「影视」",家有儿女|一样二职 +http://dns.yiandrive.com:15907/douyu/11827530 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9548850&douyu&logo" group-title="•斗鱼「影视」",漂洋过海来 +http://dns.yiandrive.com:15907/douyu/9548850 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9375430&douyu&logo" group-title="•斗鱼「影视」",爱笑会议室 http://dns.yiandrive.com:15907/douyu/9375430 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2793084&douyu&logo" group-title="•斗鱼「影视」",科幻 +http://dns.yiandrive.com:15907/douyu/2793084 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11906591&douyu&logo" group-title="•斗鱼「影视」",犬夜叉 +http://dns.yiandrive.com:15907/douyu/11906591 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11756388&douyu&logo" group-title="•斗鱼「影视」",经典 +http://dns.yiandrive.com:15907/douyu/11756388 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9942574&douyu&logo" group-title="•斗鱼「影视」",爆笑虫子 +http://dns.yiandrive.com:15907/douyu/9942574 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8231658&douyu&logo" group-title="•斗鱼「影视」",cym009 +http://dns.yiandrive.com:15907/douyu/8231658 #EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「影视」",电影迷小雅 http://dns.yiandrive.com:15907/douyu/9639225 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7655471&douyu&logo" group-title="•斗鱼「影视」",武侠剧 http://dns.yiandrive.com:15907/douyu/7655471 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6027991&douyu&logo" group-title="•斗鱼「影视」",狄仁杰 1-4 部 -http://dns.yiandrive.com:15907/douyu/6027991 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1174353&douyu&logo" group-title="•斗鱼「影视」",【动漫】超燃 怀旧 经典-苹果Zei甜 http://dns.yiandrive.com:15907/douyu/1174353 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9369468&douyu&logo" group-title="•斗鱼「影视」",未解之谜 -http://dns.yiandrive.com:15907/douyu/9369468 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9942574&douyu&logo" group-title="•斗鱼「影视」",爆笑虫子 -http://dns.yiandrive.com:15907/douyu/9942574 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8953746&douyu&logo" group-title="•斗鱼「影视」",西游记 -http://dns.yiandrive.com:15907/douyu/8953746 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11906591&douyu&logo" group-title="•斗鱼「影视」",犬夜叉 -http://dns.yiandrive.com:15907/douyu/11906591 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11645048&douyu&logo" group-title="•斗鱼「影视」",梅子 -http://dns.yiandrive.com:15907/douyu/11645048 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9650783&douyu&logo" group-title="•斗鱼「影视」",古董局中局 -http://dns.yiandrive.com:15907/douyu/9650783 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11391949&douyu&logo" group-title="•斗鱼「影视」",庆余年 -http://dns.yiandrive.com:15907/douyu/11391949 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9770949&douyu&logo" group-title="•斗鱼「影视」",我叫孙火旺 -http://dns.yiandrive.com:15907/douyu/9770949 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2164691&douyu&logo" group-title="•斗鱼「影视」",发条电影最TOP -http://dns.yiandrive.com:15907/douyu/2164691 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3643605&douyu&logo" group-title="•斗鱼「影视」",一目十影 -http://dns.yiandrive.com:15907/douyu/3643605 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9273031&douyu&logo" group-title="•斗鱼「影视」",相声 http://dns.yiandrive.com:15907/douyu/9273031 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3715426&douyu&logo" group-title="•斗鱼「影视」",精讲老剧 -http://dns.yiandrive.com:15907/douyu/3715426 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11595245&douyu&logo" group-title="•斗鱼「影视」", 海绵宝宝-再不减肥就胖成球了 -http://dns.yiandrive.com:15907/douyu/11595245 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12308334&douyu&logo" group-title="•斗鱼「影视」",燕双鹰猎鹰1 -http://dns.yiandrive.com:15907/douyu/12308334 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1226741&douyu&logo" group-title="•斗鱼「影视」",粤语电影丶 -http://dns.yiandrive.com:15907/douyu/1226741 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8413092&douyu&logo" group-title="•斗鱼「影视」",挖沟连彭沟长 -http://dns.yiandrive.com:15907/douyu/8413092 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8869614&douyu&logo" group-title="•斗鱼「影视」",蔡老板家的长工 -http://dns.yiandrive.com:15907/douyu/8869614 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1487654&douyu&logo" group-title="•斗鱼「影视」",龍組队长天昊 -http://dns.yiandrive.com:15907/douyu/1487654 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5261342&douyu&logo" group-title="•斗鱼「影视」",人气港剧 -http://dns.yiandrive.com:15907/douyu/5261342 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10010651&douyu&logo" group-title="•斗鱼「影视」",牛叔说电影二台 -http://dns.yiandrive.com:15907/douyu/10010651 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11391949&douyu&logo" group-title="•斗鱼「影视」",庆余年 +http://dns.yiandrive.com:15907/douyu/11391949 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9487003&douyu&logo" group-title="•斗鱼「影视」",宋江 http://dns.yiandrive.com:15907/douyu/9487003 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2947432&douyu&logo" group-title="•斗鱼「游戏」",呆妹儿 -http://dns.yiandrive.com:15907/douyu/2947432 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24422&douyu&logo" group-title="•斗鱼「游戏」",PIGFF -http://dns.yiandrive.com:15907/douyu/24422 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/88660&douyu&logo" group-title="•斗鱼「游戏」",鲷哥 -http://dns.yiandrive.com:15907/douyu/88660 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6027991&douyu&logo" group-title="•斗鱼「影视」",狄仁杰 1-4 部 +http://dns.yiandrive.com:15907/douyu/6027991 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8953746&douyu&logo" group-title="•斗鱼「影视」",西游记 +http://dns.yiandrive.com:15907/douyu/8953746 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2164691&douyu&logo" group-title="•斗鱼「影视」",发条电影最TOP +http://dns.yiandrive.com:15907/douyu/2164691 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9650783&douyu&logo" group-title="•斗鱼「影视」",古董局中局 +http://dns.yiandrive.com:15907/douyu/9650783 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9369468&douyu&logo" group-title="•斗鱼「影视」",未解之谜 +http://dns.yiandrive.com:15907/douyu/9369468 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7812810&douyu&logo" group-title="•斗鱼「影视」",庆余年 +http://dns.yiandrive.com:15907/douyu/7812810 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3715426&douyu&logo" group-title="•斗鱼「影视」",精讲老剧 +http://dns.yiandrive.com:15907/douyu/3715426 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10010651&douyu&logo" group-title="•斗鱼「影视」",牛叔说电影二台 +http://dns.yiandrive.com:15907/douyu/10010651 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5261342&douyu&logo" group-title="•斗鱼「影视」",人气港剧 +http://dns.yiandrive.com:15907/douyu/5261342 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1226741&douyu&logo" group-title="•斗鱼「影视」",粤语电影丶 +http://dns.yiandrive.com:15907/douyu/1226741 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11595245&douyu&logo" group-title="•斗鱼「影视」", 海绵宝宝-再不减肥就胖成球了 +http://dns.yiandrive.com:15907/douyu/11595245 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9770949&douyu&logo" group-title="•斗鱼「影视」",我叫孙火旺 +http://dns.yiandrive.com:15907/douyu/9770949 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8869614&douyu&logo" group-title="•斗鱼「影视」",蔡老板家的长工 +http://dns.yiandrive.com:15907/douyu/8869614 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8413092&douyu&logo" group-title="•斗鱼「影视」",挖沟连彭沟长 +http://dns.yiandrive.com:15907/douyu/8413092 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3643605&douyu&logo" group-title="•斗鱼「影视」",一目十影 +http://dns.yiandrive.com:15907/douyu/3643605 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12308334&douyu&logo" group-title="•斗鱼「影视」",燕双鹰猎鹰1 +http://dns.yiandrive.com:15907/douyu/12308334 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5635000&douyu&logo" group-title="•斗鱼「影视」",智仗心 +http://dns.yiandrive.com:15907/douyu/5635000 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1487654&douyu&logo" group-title="•斗鱼「影视」",龍組队长天昊 +http://dns.yiandrive.com:15907/douyu/1487654 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7254536&douyu&logo" group-title="•斗鱼「影视」",小栗子呀Liz +http://dns.yiandrive.com:15907/douyu/7254536 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11645048&douyu&logo" group-title="•斗鱼「影视」",梅子 +http://dns.yiandrive.com:15907/douyu/11645048 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4520630&douyu&logo" group-title="•斗鱼「游戏」",A妹A妹 +http://dns.yiandrive.com:15907/douyu/4520630 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12313&douyu&logo" group-title="•斗鱼「游戏」",叶音符 +http://dns.yiandrive.com:15907/douyu/12313 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9999&douyu&logo" group-title="•斗鱼「游戏」",YYF http://dns.yiandrive.com:15907/douyu/9999 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1165924&douyu&logo" group-title="•斗鱼「游戏」",靓旭 -http://dns.yiandrive.com:15907/douyu/1165924 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2947432&douyu&logo" group-title="•斗鱼「游戏」",呆妹儿 +http://dns.yiandrive.com:15907/douyu/2947432 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6512&douyu&logo" group-title="•斗鱼「游戏」",雨神丶 +http://dns.yiandrive.com:15907/douyu/6512 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/74960&douyu&logo" group-title="•斗鱼「游戏」",叫我老陈就好了 http://dns.yiandrive.com:15907/douyu/74960 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1870001&douyu&logo" group-title="•斗鱼「游戏」",大木 -http://dns.yiandrive.com:15907/douyu/1870001 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/38698&douyu&logo" group-title="•斗鱼「游戏」",MS_JOY -http://dns.yiandrive.com:15907/douyu/38698 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/178432&douyu&logo" group-title="•斗鱼「游戏」",QuQu、太常规 -http://dns.yiandrive.com:15907/douyu/178432 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/110&douyu&logo" group-title="•斗鱼「游戏」",谢彬 +http://dns.yiandrive.com:15907/douyu/110 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1457640&douyu&logo" group-title="•斗鱼「游戏」",仙某某 +http://dns.yiandrive.com:15907/douyu/1457640 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3484&douyu&logo" group-title="•斗鱼「游戏」",scboy +http://dns.yiandrive.com:15907/douyu/3484 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/312212&douyu&logo" group-title="•斗鱼「游戏」",智勋勋勋勋 +http://dns.yiandrive.com:15907/douyu/312212 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24422&douyu&logo" group-title="•斗鱼「游戏」",PIGFF +http://dns.yiandrive.com:15907/douyu/24422 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1165924&douyu&logo" group-title="•斗鱼「游戏」",靓旭 +http://dns.yiandrive.com:15907/douyu/1165924 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/88660&douyu&logo" group-title="•斗鱼「游戏」",鲷哥 +http://dns.yiandrive.com:15907/douyu/88660 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5498522&douyu&logo" group-title="•斗鱼「游戏」",Lilghost http://dns.yiandrive.com:15907/douyu/5498522 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3567314&douyu&logo" group-title="•斗鱼「游戏」",王纪超666 -http://dns.yiandrive.com:15907/douyu/3567314 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1126960&douyu&logo" group-title="•斗鱼「游戏」",余小C -http://dns.yiandrive.com:15907/douyu/1126960 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5684726&douyu&logo" group-title="•斗鱼「游戏」",皮特 +http://dns.yiandrive.com:15907/douyu/5684726 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/38698&douyu&logo" group-title="•斗鱼「游戏」",MS_JOY +http://dns.yiandrive.com:15907/douyu/38698 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9990298&douyu&logo" group-title="•斗鱼「游戏」",王大谋 +http://dns.yiandrive.com:15907/douyu/9990298 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1300804&douyu&logo" group-title="•斗鱼「游戏」",卷子 http://dns.yiandrive.com:15907/douyu/1300804 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12133146&douyu&logo" group-title="•斗鱼「游戏」",牛逼小番 +http://dns.yiandrive.com:15907/douyu/12133146 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52876&douyu&logo" group-title="•斗鱼「游戏」",ZSMJ http://dns.yiandrive.com:15907/douyu/52876 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6558897&douyu&logo" group-title="•斗鱼「游戏」",果小果是个弟弟 -http://dns.yiandrive.com:15907/douyu/6558897 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1126960&douyu&logo" group-title="•斗鱼「游戏」",余小C +http://dns.yiandrive.com:15907/douyu/1126960 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/71415&douyu&logo" group-title="•斗鱼「游戏」",寅子 +http://dns.yiandrive.com:15907/douyu/71415 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2140934&douyu&logo" group-title="•斗鱼「游戏」",老皮历险记 +http://dns.yiandrive.com:15907/douyu/2140934 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/32892&douyu&logo" group-title="•斗鱼「游戏」",过载十五岁的涛妹 +http://dns.yiandrive.com:15907/douyu/32892 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10639765&douyu&logo" group-title="•斗鱼「游戏」",艾琳bigbaby http://dns.yiandrive.com:15907/douyu/10639765 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/63136&douyu&logo" group-title="•斗鱼「游戏」",冬瓜强 +http://dns.yiandrive.com:15907/douyu/63136 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6558897&douyu&logo" group-title="•斗鱼「游戏」",果小果是个弟弟 +http://dns.yiandrive.com:15907/douyu/6558897 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52319&douyu&logo" group-title="•斗鱼「游戏」",loveyou_qq +http://dns.yiandrive.com:15907/douyu/52319 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6049122&douyu&logo" group-title="•斗鱼「游戏」",Tyloo骄阳 +http://dns.yiandrive.com:15907/douyu/6049122 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7180846&douyu&logo" group-title="•斗鱼「游戏」",jjking剑姬 +http://dns.yiandrive.com:15907/douyu/7180846 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4572396&douyu&logo" group-title="•斗鱼「游戏」",Npc +http://dns.yiandrive.com:15907/douyu/4572396 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/718133&douyu&logo" group-title="•斗鱼「游戏」",十月船长 http://dns.yiandrive.com:15907/douyu/718133 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11746004&douyu&logo" group-title="•斗鱼「游戏」",阿豪是超级大帅Bi http://dns.yiandrive.com:15907/douyu/11746004 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/63136&douyu&logo" group-title="•斗鱼「游戏」",冬瓜强 -http://dns.yiandrive.com:15907/douyu/63136 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3630850&douyu&logo" group-title="•斗鱼「游戏」",杀杀杀人哥 -http://dns.yiandrive.com:15907/douyu/3630850 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/7180846&douyu&logo" group-title="•斗鱼「游戏」",jjking剑姬 -http://dns.yiandrive.com:15907/douyu/7180846 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/528353&douyu&logo" group-title="•斗鱼「游戏」",As童话话话 +http://dns.yiandrive.com:15907/douyu/528353 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6499690&douyu&logo" group-title="•斗鱼「游戏」",国宝佳悦 +http://dns.yiandrive.com:15907/douyu/6499690 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3168536&douyu&logo" group-title="•斗鱼「游戏」",Xleft小叮当 +http://dns.yiandrive.com:15907/douyu/3168536 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/280087&douyu&logo" group-title="•斗鱼「游戏」",欠你幸福(四国军棋) http://dns.yiandrive.com:15907/douyu/280087 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/709710&douyu&logo" group-title="•斗鱼「游戏」",IMxiaoxin +http://dns.yiandrive.com:15907/douyu/709710 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4487219&douyu&logo" group-title="•斗鱼「游戏」",帽子(象棋) http://dns.yiandrive.com:15907/douyu/4487219 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5377721&douyu&logo" group-title="•斗鱼「游戏」",放逐大帝灬 -http://dns.yiandrive.com:15907/douyu/5377721 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/190448&douyu&logo" group-title="•斗鱼「游戏」",hasfin -http://dns.yiandrive.com:15907/douyu/190448 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/128489&douyu&logo" group-title="•斗鱼「游戏」",雷欧其 -http://dns.yiandrive.com:15907/douyu/128489 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/80887&douyu&logo" group-title="•斗鱼「游戏」",DMC 葡萄鹏 http://dns.yiandrive.com:15907/douyu/80887 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12821&douyu&logo" group-title="•斗鱼「游戏」",白鲨 -http://dns.yiandrive.com:15907/douyu/12821 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2207607&douyu&logo" group-title="•斗鱼「游戏」",骚易 -http://dns.yiandrive.com:15907/douyu/2207607 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/255287&douyu&logo" group-title="•斗鱼「游戏」",kz 石头 -http://dns.yiandrive.com:15907/douyu/255287 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52&douyu&logo" group-title="•斗鱼「游戏」",火星包 -http://dns.yiandrive.com:15907/douyu/52 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3305122&douyu&logo" group-title="•斗鱼「游戏」",丸子头的文哥哥 -http://dns.yiandrive.com:15907/douyu/3305122 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/62081&douyu&logo" group-title="•斗鱼「游戏」",叶落 -http://dns.yiandrive.com:15907/douyu/62081 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「游戏」",星夜 -http://dns.yiandrive.com:15907/douyu/6335847 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2311698&douyu&logo" group-title="•斗鱼「游戏」",斯祥 -http://dns.yiandrive.com:15907/douyu/2311698 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/433724&douyu&logo" group-title="•斗鱼「游戏」",王科长 -http://dns.yiandrive.com:15907/douyu/433724 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5894085&douyu&logo" group-title="•斗鱼「游戏」",茂不易 -http://dns.yiandrive.com:15907/douyu/5894085 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/138243&douyu&logo" group-title="•斗鱼「游戏」",洞主 -http://dns.yiandrive.com:15907/douyu/138243 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6979222&douyu&logo" group-title="•斗鱼「游戏」",玩机器丶Machine -http://dns.yiandrive.com:15907/douyu/6979222 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9462120&douyu&logo" group-title="•斗鱼「游戏」",凡尘困 +http://dns.yiandrive.com:15907/douyu/9462120 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1597956&douyu&logo" group-title="•斗鱼「游戏」",zola +http://dns.yiandrive.com:15907/douyu/1597956 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5226509&douyu&logo" group-title="•斗鱼「游戏」",BN、米修 +http://dns.yiandrive.com:15907/douyu/5226509 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8302&douyu&logo" group-title="•斗鱼「游戏」",祈风 +http://dns.yiandrive.com:15907/douyu/8302 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5168755&douyu&logo" group-title="•斗鱼「游戏」",武神59 http://dns.yiandrive.com:15907/douyu/5168755 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/252140&douyu&logo" group-title="•斗鱼「游戏」",doinb +http://dns.yiandrive.com:15907/douyu/252140 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5716430&douyu&logo" group-title="•斗鱼「游戏」",叶知秋Vanessa +http://dns.yiandrive.com:15907/douyu/5716430 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2106575&douyu&logo" group-title="•斗鱼「游戏」",吕布 +http://dns.yiandrive.com:15907/douyu/2106575 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12821&douyu&logo" group-title="•斗鱼「游戏」",白鲨 +http://dns.yiandrive.com:15907/douyu/12821 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/190448&douyu&logo" group-title="•斗鱼「游戏」",hasfin +http://dns.yiandrive.com:15907/douyu/190448 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52&douyu&logo" group-title="•斗鱼「游戏」",火星包 +http://dns.yiandrive.com:15907/douyu/52 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6442973&douyu&logo" group-title="•斗鱼「游戏」",Tony托公子 +http://dns.yiandrive.com:15907/douyu/6442973 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/653999&douyu&logo" group-title="•斗鱼「游戏」",暗夜猎手光头强 +http://dns.yiandrive.com:15907/douyu/653999 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/62081&douyu&logo" group-title="•斗鱼「游戏」",叶落 +http://dns.yiandrive.com:15907/douyu/62081 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3014399&douyu&logo" group-title="•斗鱼「游戏」",甄知棒 +http://dns.yiandrive.com:15907/douyu/3014399 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/433724&douyu&logo" group-title="•斗鱼「游戏」",王科长 +http://dns.yiandrive.com:15907/douyu/433724 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/633019&douyu&logo" group-title="•斗鱼「游戏」",啦啦啦 +http://dns.yiandrive.com:15907/douyu/633019 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5894085&douyu&logo" group-title="•斗鱼「游戏」",茂不易 +http://dns.yiandrive.com:15907/douyu/5894085 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2311698&douyu&logo" group-title="•斗鱼「游戏」",斯祥 +http://dns.yiandrive.com:15907/douyu/2311698 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5132174&douyu&logo" group-title="•斗鱼「游戏」",哈尼他姐 +http://dns.yiandrive.com:15907/douyu/5132174 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/斗鱼.png" group-title="•斗鱼「游戏」",星夜 +http://dns.yiandrive.com:15907/douyu/6335847 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/991&yy&logo" group-title="•歪歪「娱乐」",音乐991 http://dns.yiandrive.com:15907/yy/991 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/993&yy&logo" group-title="•歪歪「娱乐」",燃舞993 http://dns.yiandrive.com:15907/yy/993 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1357&yy&logo" group-title="•歪歪「娱乐」",少寒Shine http://dns.yiandrive.com:15907/yy/1357 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1669&yy&logo" group-title="•歪歪「娱乐」",大白兔 -http://dns.yiandrive.com:15907/yy/1669 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8350&yy&logo" group-title="•歪歪「娱乐」",小耳宝 +http://dns.yiandrive.com:15907/yy/8350 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/8565&yy&logo" group-title="•歪歪「娱乐」",娱+毕徒猴仔 http://dns.yiandrive.com:15907/yy/8565 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6979222&douyu&logo" group-title="•斗鱼「游戏」",玩机器丶Machine +http://dns.yiandrive.com:15907/douyu/6979222 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1669&yy&logo" group-title="•歪歪「娱乐」",大白兔 +http://dns.yiandrive.com:15907/yy/1669 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/58074&yy&logo" group-title="•歪歪「娱乐」",虎娱Dj MOMO +http://dns.yiandrive.com:15907/yy/58074 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/61986&yy&logo" group-title="•歪歪「娱乐」",小小 +http://dns.yiandrive.com:15907/yy/61986 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/44024&yy&logo" group-title="•歪歪「娱乐」",夏夕 +http://dns.yiandrive.com:15907/yy/44024 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749887&yy&logo" group-title="•歪歪「其他」",解压修牛蹄 http://dns.yiandrive.com:15907/yy/1382749887 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1462155211&yy&logo" group-title="•歪歪「娱乐」",晨一凉小呆 -http://dns.yiandrive.com:15907/yy/1462155211 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/37331053&yy&logo" group-title="•歪歪「娱乐」",大舌头滴百灵鸟 +http://dns.yiandrive.com:15907/yy/37331053 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382883390&yy&logo" group-title="•歪歪「其他」",蟠桃神仙会 +http://dns.yiandrive.com:15907/yy/1382883390 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1349695640&yy&logo" group-title="•歪歪「娱乐」",奇领珊瑚 http://dns.yiandrive.com:15907/yy/1349695640 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382784699&yy&logo" group-title="•歪歪「娱乐」",星之舟妖精 http://dns.yiandrive.com:15907/yy/1382784699 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1343872485&yy&logo" group-title="•歪歪「娱乐」",泡泡 -http://dns.yiandrive.com:15907/yy/1343872485 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736894&yy&logo" group-title="•歪歪「娱乐」",预先 http://dns.yiandrive.com:15907/yy/1382736894 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30698337&yy&logo" group-title="•歪歪「娱乐」",娱+7038 毕徒猴仔 http://dns.yiandrive.com:15907/yy/30698337 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10287387&yy&logo" group-title="•歪歪「娱乐」",星妹妹m http://dns.yiandrive.com:15907/yy/10287387 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930964&yy&logo" group-title="•歪歪「影视」",二炮手 -http://dns.yiandrive.com:15907/yy/1354930964 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354932355&yy&logo" group-title="•歪歪「影视」",第一滴血 -http://dns.yiandrive.com:15907/yy/1354932355 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1508902755&yy&logo" group-title="•歪歪「影视」",白娘子 -http://dns.yiandrive.com:15907/yy/1508902755 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382741638&yy&logo" group-title="•歪歪「影视」",俺娘田小草 http://dns.yiandrive.com:15907/yy/1382741638 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736803&yy&logo" group-title="•歪歪「影视」",变形金刚· -http://dns.yiandrive.com:15907/yy/1382736803 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745091&yy&logo" group-title="•歪歪「影视」",超英 -http://dns.yiandrive.com:15907/yy/1382745091 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354780649&yy&logo" group-title="•歪歪「影视」",天下 http://dns.yiandrive.com:15907/yy/1354780649 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930926&yy&logo" group-title="•歪歪「影视」",功夫 http://dns.yiandrive.com:15907/yy/1354930926 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930964&yy&logo" group-title="•歪歪「影视」",二炮手 +http://dns.yiandrive.com:15907/yy/1354930964 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930181&yy&logo" group-title="•歪歪「影视」",猩球 +http://dns.yiandrive.com:15907/yy/1354930181 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354932355&yy&logo" group-title="•歪歪「影视」",第一滴血 +http://dns.yiandrive.com:15907/yy/1354932355 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1508902755&yy&logo" group-title="•歪歪「影视」",白娘子 +http://dns.yiandrive.com:15907/yy/1508902755 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745091&yy&logo" group-title="•歪歪「影视」",超英 +http://dns.yiandrive.com:15907/yy/1382745091 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736803&yy&logo" group-title="•歪歪「影视」",变形金刚· +http://dns.yiandrive.com:15907/yy/1382736803 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936167&yy&logo" group-title="•歪歪「影视」",复联 +http://dns.yiandrive.com:15907/yy/1354936167 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736851&yy&logo" group-title="•歪歪「影视」",国外科幻 http://dns.yiandrive.com:15907/yy/1382736851 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930903&yy&logo" group-title="•歪歪「影视」",悬疑 烧脑 http://dns.yiandrive.com:15907/yy/1354930903 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930181&yy&logo" group-title="•歪歪「影视」",猩球 -http://dns.yiandrive.com:15907/yy/1354930181 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930977&yy&logo" group-title="•歪歪「影视」",熊出没 -http://dns.yiandrive.com:15907/yy/1354930977 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749892&yy&logo" group-title="•歪歪「影视」",速度与激情 http://dns.yiandrive.com:15907/yy/1382749892 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930977&yy&logo" group-title="•歪歪「影视」",熊出没 +http://dns.yiandrive.com:15907/yy/1354930977 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354790484&yy&logo" group-title="•歪歪「影视」",狂飙·1 http://dns.yiandrive.com:15907/yy/1354790484 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354210357&yy&logo" group-title="•歪歪「影视」",射雕 http://dns.yiandrive.com:15907/yy/1354210357 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926676&yy&logo" group-title="•歪歪「影视」",血色 -http://dns.yiandrive.com:15907/yy/1354926676 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745093&yy&logo" group-title="•歪歪「影视」",金刚 http://dns.yiandrive.com:15907/yy/1382745093 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382671124&yy&logo" group-title="•歪歪「影视」",真实案件 http://dns.yiandrive.com:15907/yy/1382671124 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926676&yy&logo" group-title="•歪歪「影视」",血色 +http://dns.yiandrive.com:15907/yy/1354926676 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1351814644&yy&logo" group-title="•歪歪「影视」",天龙 http://dns.yiandrive.com:15907/yy/1351814644 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745084&yy&logo" group-title="•歪歪「影视」",红楼梦 +http://dns.yiandrive.com:15907/yy/1382745084 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382704651&yy&logo" group-title="•歪歪「影视」",神雕 http://dns.yiandrive.com:15907/yy/1382704651 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1459331991&yy&logo" group-title="•歪歪「影视」",我的兄弟 +http://dns.yiandrive.com:15907/yy/1459331991 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28265277&yy&logo" group-title="•歪歪「影视」",鹿鼎记 http://dns.yiandrive.com:15907/yy/28265277 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1356043677&yy&logo" group-title="•歪歪「影视」",少年 http://dns.yiandrive.com:15907/yy/1356043677 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354658049&yy&logo" group-title="•歪歪「影视」",鹿鼎记周星驰 http://dns.yiandrive.com:15907/yy/1354658049 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354507447&yy&logo" group-title="•歪歪「影视」",古惑仔 +http://dns.yiandrive.com:15907/yy/1354507447 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1353892468&yy&logo" group-title="•歪歪「影视」",宰相 http://dns.yiandrive.com:15907/yy/1353892468 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1459331991&yy&logo" group-title="•歪歪「影视」",我的兄弟 -http://dns.yiandrive.com:15907/yy/1459331991 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930936&yy&logo" group-title="•歪歪「影视」",黑衣人 http://dns.yiandrive.com:15907/yy/1354930936 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1356043643&yy&logo" group-title="•歪歪「影视」",封神榜· http://dns.yiandrive.com:15907/yy/1356043643 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354507447&yy&logo" group-title="•歪歪「影视」",古惑仔 -http://dns.yiandrive.com:15907/yy/1354507447 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1453810838&yy&logo" group-title="•歪歪「影视」",亮剑 -http://dns.yiandrive.com:15907/yy/1453810838 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736864&yy&logo" group-title="•歪歪「影视」",苦乐村官 -http://dns.yiandrive.com:15907/yy/1382736864 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851588&yy&logo" group-title="•歪歪「影视」",正阳门下 -http://dns.yiandrive.com:15907/yy/1382851588 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936167&yy&logo" group-title="•歪歪「影视」",复联 -http://dns.yiandrive.com:15907/yy/1354936167 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736875&yy&logo" group-title="•歪歪「影视」",读心神探 -http://dns.yiandrive.com:15907/yy/1382736875 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735626&yy&logo" group-title="•歪歪「影视」",灌篮高手 -http://dns.yiandrive.com:15907/yy/1382735626 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1461037999&yy&logo" group-title="•歪歪「影视」",港片·2 http://dns.yiandrive.com:15907/yy/1461037999 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930904&yy&logo" group-title="•歪歪「影视」",黄大妮 http://dns.yiandrive.com:15907/yy/1354930904 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736864&yy&logo" group-title="•歪歪「影视」",苦乐村官 +http://dns.yiandrive.com:15907/yy/1382736864 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930894&yy&logo" group-title="•歪歪「影视」",家有九凤 http://dns.yiandrive.com:15907/yy/1354930894 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851588&yy&logo" group-title="•歪歪「影视」",正阳门下 +http://dns.yiandrive.com:15907/yy/1382851588 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1453810838&yy&logo" group-title="•歪歪「影视」",亮剑 +http://dns.yiandrive.com:15907/yy/1453810838 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736875&yy&logo" group-title="•歪歪「影视」",读心神探 +http://dns.yiandrive.com:15907/yy/1382736875 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926655&yy&logo" group-title="•歪歪「影视」",国产大片电影 http://dns.yiandrive.com:15907/yy/1354926655 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736891&yy&logo" group-title="•歪歪「影视」",流金岁月 http://dns.yiandrive.com:15907/yy/1382736891 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735626&yy&logo" group-title="•歪歪「影视」",灌篮高手 +http://dns.yiandrive.com:15907/yy/1382735626 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1353422557&yy&logo" group-title="•歪歪「影视」",经典功夫 http://dns.yiandrive.com:15907/yy/1353422557 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736890&yy&logo" group-title="•歪歪「影视」",小敏 http://dns.yiandrive.com:15907/yy/1382736890 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745084&yy&logo" group-title="•歪歪「影视」",红楼梦 -http://dns.yiandrive.com:15907/yy/1382745084 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936131&yy&logo" group-title="•歪歪「影视」",吃鱼了 -http://dns.yiandrive.com:15907/yy/1354936131 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749895&yy&logo" group-title="•歪歪「影视」",经典港片 http://dns.yiandrive.com:15907/yy/1382749895 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936131&yy&logo" group-title="•歪歪「影视」",吃鱼了 +http://dns.yiandrive.com:15907/yy/1354936131 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745176&yy&logo" group-title="•歪歪「影视」",动作片 http://dns.yiandrive.com:15907/yy/1382745176 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749901&yy&logo" group-title="•歪歪「影视」",炊事班的故事 -http://dns.yiandrive.com:15907/yy/1382749901 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930939&yy&logo" group-title="•歪歪「影视」",法证先锋 http://dns.yiandrive.com:15907/yy/1354930939 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736795&yy&logo" group-title="•歪歪「影视」",地下交通站 http://dns.yiandrive.com:15907/yy/1382736795 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930909&yy&logo" group-title="•歪歪「影视」",笑傲江湖TVB http://dns.yiandrive.com:15907/yy/1354930909 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736814&yy&logo" group-title="•歪歪「影视」",少年包青天3 +http://dns.yiandrive.com:15907/yy/1382736814 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926666&yy&logo" group-title="•歪歪「影视」",宫锁珠帘 http://dns.yiandrive.com:15907/yy/1354926666 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354933540&yy&logo" group-title="•歪歪「影视」",宫心计 http://dns.yiandrive.com:15907/yy/1354933540 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/504368&yy&logo" group-title="•歪歪「影视」",小甜甜-悬疑电视剧 -http://dns.yiandrive.com:15907/yy/504368 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736814&yy&logo" group-title="•歪歪「影视」",少年包青天3 -http://dns.yiandrive.com:15907/yy/1382736814 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926650&yy&logo" group-title="•歪歪「影视」",父母爱情 +http://dns.yiandrive.com:15907/yy/1354926650 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851599&yy&logo" group-title="•歪歪「影视」",法证先锋轮播 http://dns.yiandrive.com:15907/yy/1382851599 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735567&yy&logo" group-title="•歪歪「影视」",穿越时空的爱恋 http://dns.yiandrive.com:15907/yy/1382735567 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354926650&yy&logo" group-title="•歪歪「影视」",父母爱情 -http://dns.yiandrive.com:15907/yy/1354926650 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382828766&yy&logo" group-title="•歪歪「影视」",士兵突击 http://dns.yiandrive.com:15907/yy/1382828766 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735624&yy&logo" group-title="•歪歪「影视」",欢乐颂 http://dns.yiandrive.com:15907/yy/1382735624 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354888736&yy&logo" group-title="•歪歪「影视」",法证先锋高清轮播 http://dns.yiandrive.com:15907/yy/1354888736 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745105&yy&logo" group-title="•歪歪「影视」",哈利波特 -http://dns.yiandrive.com:15907/yy/1382745105 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936134&yy&logo" group-title="•歪歪「影视」",知否知否应是绿肥红瘦 http://dns.yiandrive.com:15907/yy/1354936134 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/504368&yy&logo" group-title="•歪歪「影视」",小甜甜-悬疑电视剧 +http://dns.yiandrive.com:15907/yy/504368 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745105&yy&logo" group-title="•歪歪「影视」",哈利波特 +http://dns.yiandrive.com:15907/yy/1382745105 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749914&yy&logo" group-title="•歪歪「影视」",加勒比海盗系列 +http://dns.yiandrive.com:15907/yy/1382749914 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1509038705&yy&logo" group-title="•歪歪「影视」",犬夜叉-半妖四魂之玉之路 http://dns.yiandrive.com:15907/yy/1509038705 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382828767&yy&logo" group-title="•歪歪「影视」",猫系女友-神探狄仁杰2 -http://dns.yiandrive.com:15907/yy/1382828767 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736833&yy&logo" group-title="•歪歪「影视」",国外动作大片 +http://dns.yiandrive.com:15907/yy/1382736833 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736867&yy&logo" group-title="•歪歪「影视」",国外高分大片 http://dns.yiandrive.com:15907/yy/1382736867 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354889024&yy&logo" group-title="•歪歪「影视」",木乃伊全集 http://dns.yiandrive.com:15907/yy/1354889024 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930976&yy&logo" group-title="•歪歪「影视」",来自星星的你 http://dns.yiandrive.com:15907/yy/1354930976 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749914&yy&logo" group-title="•歪歪「影视」",加勒比海盗系列 -http://dns.yiandrive.com:15907/yy/1382749914 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936239&yy&logo" group-title="•歪歪「影视」",经典喜剧憨豆先生 http://dns.yiandrive.com:15907/yy/1354936239 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1454859415&yy&logo" group-title="•歪歪「影视」",大碗娱乐小品轮播 http://dns.yiandrive.com:15907/yy/1454859415 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736833&yy&logo" group-title="•歪歪「影视」",国外动作大片 -http://dns.yiandrive.com:15907/yy/1382736833 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736885&yy&logo" group-title="•歪歪「影视」",炊事班的故事合集 http://dns.yiandrive.com:15907/yy/1382736885 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736856&yy&logo" group-title="•歪歪「影视」",国产喜剧 http://dns.yiandrive.com:15907/yy/1382736856 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382714119&yy&logo" group-title="•歪歪「影视」",神医喜来乐 http://dns.yiandrive.com:15907/yy/1382714119 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735578&yy&logo" group-title="•歪歪「影视」",传奇英雄 +http://dns.yiandrive.com:15907/yy/1382735578 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382749901&yy&logo" group-title="•歪歪「影视」",炊事班的故事 +http://dns.yiandrive.com:15907/yy/1382749901 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382745114&yy&logo" group-title="•歪歪「影视」",人生必看的科幻片 http://dns.yiandrive.com:15907/yy/1382745114 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735627&yy&logo" group-title="•歪歪「影视」",国内奇幻电影大片 http://dns.yiandrive.com:15907/yy/1382735627 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936228&yy&logo" group-title="•歪歪「影视」",从秦始皇到汉武帝 http://dns.yiandrive.com:15907/yy/1354936228 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930954&yy&logo" group-title="•歪歪「影视」",小吃货-探秘中华美食 -http://dns.yiandrive.com:15907/yy/1354930954 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1353323999&yy&logo" group-title="•歪歪「影视」",金刚葫芦娃 -http://dns.yiandrive.com:15907/yy/1353323999 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「其他」",挨饿德 -http://dns.yiandrive.com:15907/huya/15373958 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735584&yy&logo" group-title="•歪歪「影视」",国产喜剧 http://dns.yiandrive.com:15907/yy/1382735584 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382688400&yy&logo" group-title="•歪歪「影视」",精彩玄幻电影 http://dns.yiandrive.com:15907/yy/1382688400 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930954&yy&logo" group-title="•歪歪「影视」",小吃货-探秘中华美食 +http://dns.yiandrive.com:15907/yy/1354930954 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1353323999&yy&logo" group-title="•歪歪「影视」",金刚葫芦娃 +http://dns.yiandrive.com:15907/yy/1353323999 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736912&yy&logo" group-title="•歪歪「影视」",经典传奇 http://dns.yiandrive.com:15907/yy/1382736912 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354932407&yy&logo" group-title="•歪歪「影视」",星球大战 http://dns.yiandrive.com:15907/yy/1354932407 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936249&yy&logo" group-title="•歪歪「影视」",解放-苏联战争巨片 http://dns.yiandrive.com:15907/yy/1354936249 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21288462&huya&logo" group-title="•虎牙「其他」",大蒙香味 -http://dns.yiandrive.com:15907/huya/21288462 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/18958242&huya&logo" group-title="•虎牙「其他」",梨涡少女mini -http://dns.yiandrive.com:15907/huya/18958242 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21969336&huya&logo" group-title="•虎牙「其他」",李子柒 -http://dns.yiandrive.com:15907/huya/21969336 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14079954&huya&logo" group-title="•虎牙「其他」",JJ斗地主 -http://dns.yiandrive.com:15907/huya/14079954 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382736820&yy&logo" group-title="•歪歪「影视」",妖猫传 http://dns.yiandrive.com:15907/yy/1382736820 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936145&yy&logo" group-title="•歪歪「影视」",脱口秀大会 +http://dns.yiandrive.com:15907/yy/1354936145 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「其他」",斯诺克 +http://dns.yiandrive.com:15907/huya/287115 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21288462&huya&logo" group-title="•虎牙「其他」",大蒙香味 +http://dns.yiandrive.com:15907/huya/21288462 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/631427 &huya&logo" group-title="•虎牙「其他」",徐大骚 http://dns.yiandrive.com:15907/huya/631427 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1454629602&yy&logo" group-title="•歪歪「影视」",武林外传·1 -http://dns.yiandrive.com:15907/yy/1454629602 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/880625&huya&logo" group-title="•虎牙「其他」",虎牙斯诺克副舞台 -http://dns.yiandrive.com:15907/huya/880625 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24007208&huya&logo" group-title="•虎牙「其他」",荒野小哥 -http://dns.yiandrive.com:15907/huya/24007208 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/593667&huya&logo" group-title="•虎牙「其他」",荒野求生 -http://dns.yiandrive.com:15907/huya/593667 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/16289380&huya&logo" group-title="•虎牙「其他」",德爷荒岛求生解说 -http://dns.yiandrive.com:15907/huya/16289380 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1355652820&yy&logo" group-title="•歪歪「影视」",武林外传·3 -http://dns.yiandrive.com:15907/yy/1355652820 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21092633&yy&logo" group-title="•歪歪「影视」",武林外传·2 -http://dns.yiandrive.com:15907/yy/21092633 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23402146&yy&logo" group-title="•歪歪「影视」",插翅难逃 -http://dns.yiandrive.com:15907/yy/23402146 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1356243352&yy&logo" group-title="•歪歪「影视」",动画 -http://dns.yiandrive.com:15907/yy/1356243352 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「其他」",美食纪录片 风味人间 -http://dns.yiandrive.com:15907/huya/26355760 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/歪歪.png" group-title="•歪歪「影视」",最美的青春 -http://dns.yiandrive.com:15907/yy/1382745116 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/34229877&yy&logo" group-title="•歪歪「影视」",林正英高清 -http://dns.yiandrive.com:15907/yy/34229877 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735574&yy&logo" group-title="•歪歪「影视」",天道 -http://dns.yiandrive.com:15907/yy/1382735574 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1455225203&yy&logo" group-title="•歪歪「影视」",亮剑 -http://dns.yiandrive.com:15907/yy/1455225203 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1453996620&yy&logo" group-title="•歪歪「影视」",林正英全集 -http://dns.yiandrive.com:15907/yy/1453996620 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14079954&huya&logo" group-title="•虎牙「其他」",JJ斗地主 +http://dns.yiandrive.com:15907/huya/14079954 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/16797006&huya&logo" group-title="•虎牙「其他」",山药视频 http://dns.yiandrive.com:15907/huya/16797006 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354932402&yy&logo" group-title="•歪歪「影视」",TM -http://dns.yiandrive.com:15907/yy/1354932402 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936221&yy&logo" group-title="•歪歪「影视」",博物馆奇妙夜 -http://dns.yiandrive.com:15907/yy/1354936221 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/880214&huya&logo" group-title="•虎牙「其他」",虎牙斯诺克 -http://dns.yiandrive.com:15907/huya/880214 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735578&yy&logo" group-title="•歪歪「影视」",传奇英雄 -http://dns.yiandrive.com:15907/yy/1382735578 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21356214&huya&logo" group-title="•虎牙「其他」",原始美食与生活 -http://dns.yiandrive.com:15907/huya/21356214 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/138168&huya&logo" group-title="•虎牙「娱乐」",纯情宣贵人 -http://dns.yiandrive.com:15907/huya/138168 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21969336&huya&logo" group-title="•虎牙「其他」",李子柒 +http://dns.yiandrive.com:15907/huya/21969336 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/18958242&huya&logo" group-title="•虎牙「其他」",梨涡少女mini +http://dns.yiandrive.com:15907/huya/18958242 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「其他」",挨饿德 +http://dns.yiandrive.com:15907/huya/15373958 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1454629602&yy&logo" group-title="•歪歪「影视」",武林外传·1 +http://dns.yiandrive.com:15907/yy/1454629602 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21092633&yy&logo" group-title="•歪歪「影视」",武林外传·2 +http://dns.yiandrive.com:15907/yy/21092633 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1355652820&yy&logo" group-title="•歪歪「影视」",武林外传·3 +http://dns.yiandrive.com:15907/yy/1355652820 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14363949&huya&logo" group-title="•虎牙「其他」",野食小哥 http://dns.yiandrive.com:15907/huya/14363949 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29640502&huya&logo" group-title="•虎牙「娱乐」",Wechatc -http://dns.yiandrive.com:15907/huya/29640502 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/32588&huya&logo" group-title="•虎牙「其他」",划线百嘉 +http://dns.yiandrive.com:15907/huya/32588 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382735574&yy&logo" group-title="•歪歪「影视」",天道 +http://dns.yiandrive.com:15907/yy/1382735574 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382828767&yy&logo" group-title="•歪歪「影视」",猫系女友-神探狄仁杰2 +http://dns.yiandrive.com:15907/yy/1382828767 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21356214&huya&logo" group-title="•虎牙「其他」",原始美食与生活 +http://dns.yiandrive.com:15907/huya/21356214 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1356243352&yy&logo" group-title="•歪歪「影视」",动画 +http://dns.yiandrive.com:15907/yy/1356243352 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1356158015&yy&logo" group-title="•歪歪「影视」",包青天之 +http://dns.yiandrive.com:15907/yy/1356158015 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/564185&huya&logo" group-title="•虎牙「其他」",女子世界冠军石春侠 +http://dns.yiandrive.com:15907/huya/564185 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28258706&huya&logo" group-title="•虎牙「其他」",老范说台球 +http://dns.yiandrive.com:15907/huya/28258706 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/16289380&huya&logo" group-title="•虎牙「其他」",德爷荒岛求生解说 +http://dns.yiandrive.com:15907/huya/16289380 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1455225203&yy&logo" group-title="•歪歪「影视」",亮剑 +http://dns.yiandrive.com:15907/yy/1455225203 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/880625&huya&logo" group-title="•虎牙「其他」",虎牙斯诺克副舞台 +http://dns.yiandrive.com:15907/huya/880625 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「其他」",美食纪录片 风味人间 +http://dns.yiandrive.com:15907/huya/26355760 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10147&huya&logo" group-title="•虎牙「其他」",一诺台球解说 +http://dns.yiandrive.com:15907/huya/10147 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23402146&yy&logo" group-title="•歪歪「影视」",插翅难逃 +http://dns.yiandrive.com:15907/yy/23402146 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1453996620&yy&logo" group-title="•歪歪「影视」",林正英全集 +http://dns.yiandrive.com:15907/yy/1453996620 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/34229877&yy&logo" group-title="•歪歪「影视」",林正英高清 +http://dns.yiandrive.com:15907/yy/34229877 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20072773&huya&logo" group-title="•虎牙「其他」",欧神 +http://dns.yiandrive.com:15907/huya/20072773 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354932402&yy&logo" group-title="•歪歪「影视」",TM +http://dns.yiandrive.com:15907/yy/1354932402 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/880214&huya&logo" group-title="•虎牙「其他」",虎牙斯诺克 +http://dns.yiandrive.com:15907/huya/880214 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24007208&huya&logo" group-title="•虎牙「其他」",荒野小哥 +http://dns.yiandrive.com:15907/huya/24007208 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/520314&huya&logo" group-title="•虎牙「娱乐」",千雅 +http://dns.yiandrive.com:15907/huya/520314 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/593667&huya&logo" group-title="•虎牙「其他」",荒野求生 +http://dns.yiandrive.com:15907/huya/593667 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/145920&huya&logo" group-title="•虎牙「娱乐」",芊若吖 +http://dns.yiandrive.com:15907/huya/145920 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/340204&huya&logo" group-title="•虎牙「娱乐」",fydaddy +http://dns.yiandrive.com:15907/huya/340204 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/155525&huya&logo" group-title="•虎牙「娱乐」",飞机文 +http://dns.yiandrive.com:15907/huya/155525 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/206199&huya&logo" group-title="•虎牙「娱乐」",乐听、雪寒 +http://dns.yiandrive.com:15907/huya/206199 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/291326&huya&logo" group-title="•虎牙「娱乐」",绮夏 +http://dns.yiandrive.com:15907/huya/291326 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354936221&yy&logo" group-title="•歪歪「影视」",博物馆奇妙夜 +http://dns.yiandrive.com:15907/yy/1354936221 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/980312&huya&logo" group-title="•虎牙「娱乐」",Ning +http://dns.yiandrive.com:15907/huya/980312 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「娱乐」",瓦莉拉 +http://dns.yiandrive.com:15907/huya/100270 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/398147&huya&logo" group-title="•虎牙「娱乐」",星辰 +http://dns.yiandrive.com:15907/huya/398147 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1995&huya&logo" group-title="•虎牙「娱乐」",小小小酷哥 +http://dns.yiandrive.com:15907/huya/1995 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30114997&huya&logo" group-title="•虎牙「娱乐」",小九 +http://dns.yiandrive.com:15907/huya/30114997 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20072620&huya&logo" group-title="•虎牙「其他」",斯诺克1号桌 +http://dns.yiandrive.com:15907/huya/20072620 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/233&huya&logo" group-title="•虎牙「娱乐」",张开朗 +http://dns.yiandrive.com:15907/huya/233 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/128369&huya&logo" group-title="•虎牙「娱乐」",cx-梦艺 +http://dns.yiandrive.com:15907/huya/128369 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9120&huya&logo" group-title="•虎牙「娱乐」",九兔 +http://dns.yiandrive.com:15907/huya/9120 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/134739&huya&logo" group-title="•虎牙「娱乐」",一口甜茶 +http://dns.yiandrive.com:15907/huya/134739 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/573190&huya&logo" group-title="•虎牙「娱乐」",AH-大恶魔 +http://dns.yiandrive.com:15907/huya/573190 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/16188&huya&logo" group-title="•虎牙「娱乐」",阳宝宝、 +http://dns.yiandrive.com:15907/huya/16188 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851575&yy&logo" group-title="•歪歪「影视」",神探狄仁杰·1 +http://dns.yiandrive.com:15907/yy/1382851575 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851146&yy&logo" group-title="•歪歪「影视」",喵系女友-神探狄仁杰2 http://dns.yiandrive.com:15907/yy/1382851146 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/339124&huya&logo" group-title="•虎牙「娱乐」",王者明凯 +http://dns.yiandrive.com:15907/huya/339124 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1354930934&yy&logo" group-title="•歪歪「影视」",神探狄仁杰·2 http://dns.yiandrive.com:15907/yy/1354930934 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342403&huya&logo" group-title="•虎牙「影视」",不发威当我Kitty http://dns.yiandrive.com:15907/huya/11342403 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865080&huya&logo" group-title="•虎牙「影视」",香港喜剧大全 -http://dns.yiandrive.com:15907/huya/23865080 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602058&huya&logo" group-title="•虎牙「影视」",四大裁子之首 -http://dns.yiandrive.com:15907/huya/11602058 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1382851575&yy&logo" group-title="•歪歪「影视」",神探狄仁杰·1 -http://dns.yiandrive.com:15907/yy/1382851575 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/143721&huya&logo" group-title="•虎牙「娱乐」",HY-铃初初 -http://dns.yiandrive.com:15907/huya/143721 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/95920&huya&logo" group-title="•虎牙「娱乐」",95920 +http://dns.yiandrive.com:15907/huya/95920 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29916843&huya&logo" group-title="•虎牙「娱乐」",Ms王炸 +http://dns.yiandrive.com:15907/huya/29916843 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/770714&huya&logo" group-title="•虎牙「娱乐」",cxy0714 +http://dns.yiandrive.com:15907/huya/770714 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26058097&huya&logo" group-title="•虎牙「影视」",都爱看 http://dns.yiandrive.com:15907/huya/26058097 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342412&huya&logo" group-title="•虎牙「影视」",周星星 -http://dns.yiandrive.com:15907/huya/11342412 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/134769&huya&logo" group-title="•虎牙「娱乐」",张伟丽MMA -http://dns.yiandrive.com:15907/huya/134769 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342421&huya&logo" group-title="•虎牙「影视」",7喜先生 -http://dns.yiandrive.com:15907/huya/11342421 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342435&huya&logo" group-title="•虎牙「影视」",可爱的小强 -http://dns.yiandrive.com:15907/huya/11342435 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903123&huya&logo" group-title="•虎牙「影视」",堆堆港剧日常 -http://dns.yiandrive.com:15907/huya/23903123 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903130&huya&logo" group-title="•虎牙「影视」",堆堆港剧日记 -http://dns.yiandrive.com:15907/huya/23903130 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602068&huya&logo" group-title="•虎牙「影视」",我爱黑科技 -http://dns.yiandrive.com:15907/huya/11602068 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336571&huya&logo" group-title="•虎牙「影视」",槽老师 -http://dns.yiandrive.com:15907/huya/11336571 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342386&huya&logo" group-title="•虎牙「影视」",偷心大盗ヽ龍宝 -http://dns.yiandrive.com:15907/huya/11342386 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355824&huya&logo" group-title="•虎牙「影视」",尽是与君别 -http://dns.yiandrive.com:15907/huya/26355824 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23734169&huya&logo" group-title="•虎牙「影视」",埋堆搞搞震 -http://dns.yiandrive.com:15907/huya/23734169 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23864973&huya&logo" group-title="•虎牙「影视」",我是周粤驰 -http://dns.yiandrive.com:15907/huya/23864973 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336587&huya&logo" group-title="•虎牙「影视」",Yummy -http://dns.yiandrive.com:15907/huya/11336587 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/138531&huya&logo" group-title="•虎牙「影视」",依依妹妹在等你 -http://dns.yiandrive.com:15907/huya/138531 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23863804&huya&logo" group-title="•虎牙「影视」",iTVB大后宫 -http://dns.yiandrive.com:15907/huya/23863804 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29731435&huya&logo" group-title="•虎牙「影视」",金媛-开心娱乐 -http://dns.yiandrive.com:15907/huya/29731435 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342390&huya&logo" group-title="•虎牙「影视」",核桃姐姐 -http://dns.yiandrive.com:15907/huya/11342390 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342427&huya&logo" group-title="•虎牙「影视」",逗比宝宝 -http://dns.yiandrive.com:15907/huya/11342427 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601960&huya&logo" group-title="•虎牙「影视」",实力拔萝卜 -http://dns.yiandrive.com:15907/huya/11601960 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602044&huya&logo" group-title="•虎牙「影视」",小怪兽、 -http://dns.yiandrive.com:15907/huya/11602044 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352944&huya&logo" group-title="•虎牙「影视」",鯎爺 -http://dns.yiandrive.com:15907/huya/11352944 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26298751&huya&logo" group-title="•虎牙「影视」",婧丶 -http://dns.yiandrive.com:15907/huya/26298751 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865171&huya&logo" group-title="•虎牙「影视」",阿呀呀阿sir -http://dns.yiandrive.com:15907/huya/23865171 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352950&huya&logo" group-title="•虎牙「影视」",我很忙 -http://dns.yiandrive.com:15907/huya/11352950 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355792&huya&logo" group-title="•虎牙「影视」",合班阿離 -http://dns.yiandrive.com:15907/huya/26355792 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355850&huya&logo" group-title="•虎牙「影视」",嶺外奇服兮 http://dns.yiandrive.com:15907/huya/26355850 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602082&huya&logo" group-title="•虎牙「影视」",漓江塔景区售票阿姨 -http://dns.yiandrive.com:15907/huya/11602082 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355861&huya&logo" group-title="•虎牙「影视」",西游记 -http://dns.yiandrive.com:15907/huya/26355861 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059612&huya&logo" group-title="•虎牙「影视」",风云2 -http://dns.yiandrive.com:15907/huya/21059612 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355788&huya&logo" group-title="•虎牙「影视」",李卫 -http://dns.yiandrive.com:15907/huya/26355788 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352894&huya&logo" group-title="•虎牙「影视」",飙车的老司机 -http://dns.yiandrive.com:15907/huya/11352894 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/353798&huya&logo" group-title="•虎牙「影视」",红色 -http://dns.yiandrive.com:15907/huya/353798 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352958&huya&logo" group-title="•虎牙「影视」",神探· -http://dns.yiandrive.com:15907/huya/11352958 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29580971&huya&logo" group-title="•虎牙「影视」",农民 -http://dns.yiandrive.com:15907/huya/29580971 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903196&huya&logo" group-title="•虎牙「影视」",冷门港片大全 -http://dns.yiandrive.com:15907/huya/23903196 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352919&huya&logo" group-title="•虎牙「影视」",海绵宝宝 -http://dns.yiandrive.com:15907/huya/11352919 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352965&huya&logo" group-title="•虎牙「影视」",笙歌 -http://dns.yiandrive.com:15907/huya/11352965 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352935&huya&logo" group-title="•虎牙「影视」",丹 -http://dns.yiandrive.com:15907/huya/11352935 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23734246&huya&logo" group-title="•虎牙「影视」",我叫山鸡哥 -http://dns.yiandrive.com:15907/huya/23734246 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059594&huya&logo" group-title="•虎牙「影视」",里昂保护的马蒂达 -http://dns.yiandrive.com:15907/huya/21059594 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342421&huya&logo" group-title="•虎牙「影视」",7喜先生 +http://dns.yiandrive.com:15907/huya/11342421 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602058&huya&logo" group-title="•虎牙「影视」",四大裁子之首 +http://dns.yiandrive.com:15907/huya/11602058 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29640502&huya&logo" group-title="•虎牙「娱乐」",Wechatc +http://dns.yiandrive.com:15907/huya/29640502 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342412&huya&logo" group-title="•虎牙「影视」",周星星 +http://dns.yiandrive.com:15907/huya/11342412 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903130&huya&logo" group-title="•虎牙「影视」",堆堆港剧日记 +http://dns.yiandrive.com:15907/huya/23903130 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342427&huya&logo" group-title="•虎牙「影视」",逗比宝宝 +http://dns.yiandrive.com:15907/huya/11342427 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/127316&huya&logo" group-title="•虎牙「娱乐」",姓田的小花虎【ZH】 +http://dns.yiandrive.com:15907/huya/127316 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903123&huya&logo" group-title="•虎牙「影视」",堆堆港剧日常 +http://dns.yiandrive.com:15907/huya/23903123 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/25742076&huya&logo" group-title="•虎牙「影视」",梦溪影视 +http://dns.yiandrive.com:15907/huya/25742076 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602068&huya&logo" group-title="•虎牙「影视」",我爱黑科技 +http://dns.yiandrive.com:15907/huya/11602068 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355802&huya&logo" group-title="•虎牙「影视」",之而成冠毛 +http://dns.yiandrive.com:15907/huya/26355802 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26298751&huya&logo" group-title="•虎牙「影视」",婧丶 +http://dns.yiandrive.com:15907/huya/26298751 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865080&huya&logo" group-title="•虎牙「影视」",香港喜剧大全 +http://dns.yiandrive.com:15907/huya/23865080 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342435&huya&logo" group-title="•虎牙「影视」",可爱的小强 +http://dns.yiandrive.com:15907/huya/11342435 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355824&huya&logo" group-title="•虎牙「影视」",尽是与君别 +http://dns.yiandrive.com:15907/huya/26355824 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23796393&huya&logo" group-title="•虎牙「影视」",赢城-江爽 +http://dns.yiandrive.com:15907/huya/23796393 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/134769&huya&logo" group-title="•虎牙「娱乐」",张伟丽MMA +http://dns.yiandrive.com:15907/huya/134769 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23864973&huya&logo" group-title="•虎牙「影视」",我是周粤驰 +http://dns.yiandrive.com:15907/huya/23864973 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23734169&huya&logo" group-title="•虎牙「影视」",埋堆搞搞震 +http://dns.yiandrive.com:15907/huya/23734169 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23863804&huya&logo" group-title="•虎牙「影视」",iTVB大后宫 +http://dns.yiandrive.com:15907/huya/23863804 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342390&huya&logo" group-title="•虎牙「影视」",核桃姐姐 +http://dns.yiandrive.com:15907/huya/11342390 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336571&huya&logo" group-title="•虎牙「影视」",槽老师 +http://dns.yiandrive.com:15907/huya/11336571 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336587&huya&logo" group-title="•虎牙「影视」",Yummy +http://dns.yiandrive.com:15907/huya/11336587 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352909&huya&logo" group-title="•虎牙「影视」",小军迷 http://dns.yiandrive.com:15907/huya/11352909 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865171&huya&logo" group-title="•虎牙「影视」",阿呀呀阿sir +http://dns.yiandrive.com:15907/huya/23865171 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342386&huya&logo" group-title="•虎牙「影视」",偷心大盗ヽ龍宝 +http://dns.yiandrive.com:15907/huya/11342386 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23734246&huya&logo" group-title="•虎牙「影视」",我叫山鸡哥 +http://dns.yiandrive.com:15907/huya/23734246 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602044&huya&logo" group-title="•虎牙「影视」",小怪兽、 +http://dns.yiandrive.com:15907/huya/11602044 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26508934&huya&logo" group-title="•虎牙「影视」",我不是茯苓 +http://dns.yiandrive.com:15907/huya/26508934 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355861&huya&logo" group-title="•虎牙「影视」",西游记 +http://dns.yiandrive.com:15907/huya/26355861 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355792&huya&logo" group-title="•虎牙「影视」",合班阿離 +http://dns.yiandrive.com:15907/huya/26355792 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352950&huya&logo" group-title="•虎牙「影视」",我很忙 +http://dns.yiandrive.com:15907/huya/11352950 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20985776&huya&logo" group-title="•虎牙「影视」",千里 http://dns.yiandrive.com:15907/huya/20985776 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601978&huya&logo" group-title="•虎牙「影视」",神医 -http://dns.yiandrive.com:15907/huya/11601978 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601986&huya&logo" group-title="•虎牙「影视」",贺岁 -http://dns.yiandrive.com:15907/huya/11601986 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355829&huya&logo" group-title="•虎牙「影视」",超 -http://dns.yiandrive.com:15907/huya/26355829 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602082&huya&logo" group-title="•虎牙「影视」",漓江塔景区售票阿姨 +http://dns.yiandrive.com:15907/huya/11602082 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352944&huya&logo" group-title="•虎牙「影视」",鯎爺 +http://dns.yiandrive.com:15907/huya/11352944 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11282233&huya&logo" group-title="•虎牙「影视」",樹袋熊小九九 +http://dns.yiandrive.com:15907/huya/11282233 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059612&huya&logo" group-title="•虎牙「影视」",风云2 +http://dns.yiandrive.com:15907/huya/21059612 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059594&huya&logo" group-title="•虎牙「影视」",里昂保护的马蒂达 +http://dns.yiandrive.com:15907/huya/21059594 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29580971&huya&logo" group-title="•虎牙「影视」",农民 +http://dns.yiandrive.com:15907/huya/29580971 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/138531&huya&logo" group-title="•虎牙「影视」",依依妹妹在等你 +http://dns.yiandrive.com:15907/huya/138531 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903196&huya&logo" group-title="•虎牙「影视」",冷门港片大全 +http://dns.yiandrive.com:15907/huya/23903196 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352965&huya&logo" group-title="•虎牙「影视」",笙歌 +http://dns.yiandrive.com:15907/huya/11352965 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352958&huya&logo" group-title="•虎牙「影视」",神探· +http://dns.yiandrive.com:15907/huya/11352958 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355788&huya&logo" group-title="•虎牙「影视」",李卫 +http://dns.yiandrive.com:15907/huya/26355788 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/353798&huya&logo" group-title="•虎牙「影视」",红色 +http://dns.yiandrive.com:15907/huya/353798 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352919&huya&logo" group-title="•虎牙「影视」",海绵宝宝 +http://dns.yiandrive.com:15907/huya/11352919 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/歪歪.png" group-title="•歪歪「影视」",最美的青春 +http://dns.yiandrive.com:15907/yy/1382745116 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601960&huya&logo" group-title="•虎牙「影视」",实力拔萝卜 +http://dns.yiandrive.com:15907/huya/11601960 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602046&huya&logo" group-title="•虎牙「影视」",杰克 +http://dns.yiandrive.com:15907/huya/11602046 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342404&huya&logo" group-title="•虎牙「影视」",扫黑 +http://dns.yiandrive.com:15907/huya/11342404 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355860&huya&logo" group-title="•虎牙「影视」",水 http://dns.yiandrive.com:15907/huya/26355860 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059563&huya&logo" group-title="•虎牙「影视」",宝莲灯 http://dns.yiandrive.com:15907/huya/21059563 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342424&huya&logo" group-title="•虎牙「影视」",刘德华 -http://dns.yiandrive.com:15907/huya/11342424 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601981&huya&logo" group-title="•虎牙「影视」",成立 -http://dns.yiandrive.com:15907/huya/11601981 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352877&huya&logo" group-title="•虎牙「影视」",王宝强 -http://dns.yiandrive.com:15907/huya/11352877 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342404&huya&logo" group-title="•虎牙「影视」",扫黑 -http://dns.yiandrive.com:15907/huya/11342404 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/11352970&huya&logo" group-title="•虎牙「影视」",野原的一家 -http://dns.yiandrive.com:15907/huya/11352970 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23735126&huya&logo" group-title="•虎牙「影视」",天地争霸美猴王 -http://dns.yiandrive.com:15907/huya/23735126 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342387&huya&logo" group-title="•虎牙「影视」",电影_发哥 -http://dns.yiandrive.com:15907/huya/11342387 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342425&huya&logo" group-title="•虎牙「影视」",神探 -http://dns.yiandrive.com:15907/huya/11342425 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29852720&huya&logo" group-title="•虎牙「影视」",胡八一 -http://dns.yiandrive.com:15907/huya/29852720 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352894&huya&logo" group-title="•虎牙「影视」",飙车的老司机 +http://dns.yiandrive.com:15907/huya/11352894 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352935&huya&logo" group-title="•虎牙「影视」",丹 +http://dns.yiandrive.com:15907/huya/11352935 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11274154&huya&logo" group-title="•虎牙「影视」",陈翔六点半 http://dns.yiandrive.com:15907/huya/11274154 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11282233&huya&logo" group-title="•虎牙「影视」",樹袋熊小九九 -http://dns.yiandrive.com:15907/huya/11282233 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601958&huya&logo" group-title="•虎牙「影视」",熊猫 -http://dns.yiandrive.com:15907/huya/11601958 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355781&huya&logo" group-title="•虎牙「影视」",探索 -http://dns.yiandrive.com:15907/huya/26355781 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355856&huya&logo" group-title="•虎牙「影视」",大宋 -http://dns.yiandrive.com:15907/huya/26355856 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601978&huya&logo" group-title="•虎牙「影视」",神医 +http://dns.yiandrive.com:15907/huya/11601978 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601986&huya&logo" group-title="•虎牙「影视」",贺岁 +http://dns.yiandrive.com:15907/huya/11601986 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/11352970&huya&logo" group-title="•虎牙「影视」",野原的一家 +http://dns.yiandrive.com:15907/huya/11352970 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342425&huya&logo" group-title="•虎牙「影视」",神探 +http://dns.yiandrive.com:15907/huya/11342425 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601981&huya&logo" group-title="•虎牙「影视」",成立 +http://dns.yiandrive.com:15907/huya/11601981 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355829&huya&logo" group-title="•虎牙「影视」",超 +http://dns.yiandrive.com:15907/huya/26355829 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23749096&huya&logo" group-title="•虎牙「影视」",封神榜 http://dns.yiandrive.com:15907/huya/23749096 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352877&huya&logo" group-title="•虎牙「影视」",王宝强 +http://dns.yiandrive.com:15907/huya/11352877 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355856&huya&logo" group-title="•虎牙「影视」",大宋 +http://dns.yiandrive.com:15907/huya/26355856 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601958&huya&logo" group-title="•虎牙「影视」",熊猫 +http://dns.yiandrive.com:15907/huya/11601958 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602034&huya&logo" group-title="•虎牙「影视」",电影_漫威 http://dns.yiandrive.com:15907/huya/11602034 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352886&huya&logo" group-title="•虎牙「影视」",电影_警匪 -http://dns.yiandrive.com:15907/huya/11352886 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342429&huya&logo" group-title="•虎牙「影视」",梁家辉 -http://dns.yiandrive.com:15907/huya/11342429 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602046&huya&logo" group-title="•虎牙「影视」",杰克 -http://dns.yiandrive.com:15907/huya/11602046 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29852720&huya&logo" group-title="•虎牙「影视」",胡八一 +http://dns.yiandrive.com:15907/huya/29852720 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059567&huya&logo" group-title="•虎牙「影视」",唯爱 http://dns.yiandrive.com:15907/huya/21059567 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059581&huya&logo" group-title="•虎牙「影视」",电影_强森 -http://dns.yiandrive.com:15907/huya/21059581 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352962&huya&logo" group-title="•虎牙「影视」",电影_罪犯 -http://dns.yiandrive.com:15907/huya/11352962 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601968&huya&logo" group-title="•虎牙「影视」",电影_沈腾 -http://dns.yiandrive.com:15907/huya/11601968 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29798259&huya&logo" group-title="•虎牙「影视」",蜡笔小新大象舞 -http://dns.yiandrive.com:15907/huya/29798259 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342428&huya&logo" group-title="•虎牙「影视」",电影_宇宙 -http://dns.yiandrive.com:15907/huya/11342428 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23735126&huya&logo" group-title="•虎牙「影视」",天地争霸美猴王 +http://dns.yiandrive.com:15907/huya/23735126 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355781&huya&logo" group-title="•虎牙「影视」",探索 +http://dns.yiandrive.com:15907/huya/26355781 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342429&huya&logo" group-title="•虎牙「影视」",梁家辉 +http://dns.yiandrive.com:15907/huya/11342429 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29863394&huya&logo" group-title="•虎牙「影视」",斗破-萧炎 +http://dns.yiandrive.com:15907/huya/29863394 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059579&huya&logo" group-title="•虎牙「影视」",电影_枪战 http://dns.yiandrive.com:15907/huya/21059579 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29465856&huya&logo" group-title="•虎牙「影视」",刑事侦缉档案 -http://dns.yiandrive.com:15907/huya/29465856 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059581&huya&logo" group-title="•虎牙「影视」",电影_强森 +http://dns.yiandrive.com:15907/huya/21059581 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342387&huya&logo" group-title="•虎牙「影视」",电影_发哥 +http://dns.yiandrive.com:15907/huya/11342387 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352962&huya&logo" group-title="•虎牙「影视」",电影_罪犯 +http://dns.yiandrive.com:15907/huya/11352962 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21136378&huya&logo" group-title="•虎牙「影视」",周星驰吧 http://dns.yiandrive.com:15907/huya/21136378 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059564&huya&logo" group-title="•虎牙「影视」",马春夏秋冬梅 -http://dns.yiandrive.com:15907/huya/21059564 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059595&huya&logo" group-title="•虎牙「影视」",电影_海盗 -http://dns.yiandrive.com:15907/huya/21059595 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352876&huya&logo" group-title="•虎牙「影视」",电影_黄渤 -http://dns.yiandrive.com:15907/huya/11352876 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059577&huya&logo" group-title="•虎牙「影视」",电影_怪兽 -http://dns.yiandrive.com:15907/huya/21059577 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080255&huya&logo" group-title="•虎牙「影视」",乡村爱情 -http://dns.yiandrive.com:15907/huya/30080255 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352897&huya&logo" group-title="•虎牙「影视」",电影 -http://dns.yiandrive.com:15907/huya/11352897 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602041&huya&logo" group-title="•虎牙「影视」",电影_推荐 -http://dns.yiandrive.com:15907/huya/11602041 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29580970&huya&logo" group-title="•虎牙「影视」",年年营 -http://dns.yiandrive.com:15907/huya/29580970 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",痞子帅叔叔 -http://dns.yiandrive.com:15907/huya/11342433 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",扁豆看电影 -http://dns.yiandrive.com:15907/huya/16028551 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1394565204&huya&logo" group-title="•虎牙「影视」",木子先生,铁齿铜牙纪晓岚 -http://dns.yiandrive.com:15907/huya/11342396 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",止戈电影 -http://dns.yiandrive.com:15907/huya/19863777 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29982639&huya&logo" group-title="•虎牙「影视」",庆余年 -http://dns.yiandrive.com:15907/huya/29982639 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352966&huya&logo" group-title="•虎牙「影视」",魔幻手机|如意菜头 -http://dns.yiandrive.com:15907/huya/11352966 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601970&huya&logo" group-title="•虎牙「影视」",征服 -http://dns.yiandrive.com:15907/huya/11601970 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352956&huya&logo" group-title="•虎牙「影视」",双面胶 -http://dns.yiandrive.com:15907/huya/11352956 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352872&huya&logo" group-title="•虎牙「影视」",家有儿女|种瓜得弟弟 -http://dns.yiandrive.com:15907/huya/11352872 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342426&huya&logo" group-title="•虎牙「影视」",情满四合院 -http://dns.yiandrive.com:15907/huya/11342426 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22592516&huya&logo" group-title="•虎牙「影视」",虹猫蓝兔系列|虹猫蓝兔官方 -http://dns.yiandrive.com:15907/huya/22592516 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342424&huya&logo" group-title="•虎牙「影视」",刘德华 +http://dns.yiandrive.com:15907/huya/11342424 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352886&huya&logo" group-title="•虎牙「影视」",电影_警匪 +http://dns.yiandrive.com:15907/huya/11352886 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602071&huya&logo" group-title="•虎牙「影视」",父母爱情 http://dns.yiandrive.com:15907/huya/11602071 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602085&huya&logo" group-title="•虎牙「影视」",杨光 -http://dns.yiandrive.com:15907/huya/11602085 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080236&huya&logo" group-title="•虎牙「影视」",名侦探柯南|傍晚猴 -http://dns.yiandrive.com:15907/huya/30080236 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865058&huya&logo" group-title="•虎牙「影视」",笑看风云 -http://dns.yiandrive.com:15907/huya/23865058 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342400&huya&logo" group-title="•虎牙「影视」",活佛济公 -http://dns.yiandrive.com:15907/huya/11342400 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352882&huya&logo" group-title="•虎牙「影视」",网球王子|我们都爱笑 -http://dns.yiandrive.com:15907/huya/11352882 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11279247&huya&logo" group-title="•虎牙「影视」",电影_赛车 -http://dns.yiandrive.com:15907/huya/11279247 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355793&huya&logo" group-title="•虎牙「影视」",錦丹广明 -http://dns.yiandrive.com:15907/huya/26355793 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336726&huya&logo" group-title="•虎牙「影视」",爱情公寓|武林萌主唐小姐 -http://dns.yiandrive.com:15907/huya/11336726 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23740156&huya&logo" group-title="•虎牙「影视」",埋堆堆官方 -http://dns.yiandrive.com:15907/huya/23740156 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865142&huya&logo" group-title="•虎牙「影视」",港剧慢品汇 -http://dns.yiandrive.com:15907/huya/23865142 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080229&huya&logo" group-title="•虎牙「影视」",狄仁杰电影 -http://dns.yiandrive.com:15907/huya/30080229 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059577&huya&logo" group-title="•虎牙「影视」",电影_怪兽 +http://dns.yiandrive.com:15907/huya/21059577 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352876&huya&logo" group-title="•虎牙「影视」",电影_黄渤 +http://dns.yiandrive.com:15907/huya/11352876 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602081&huya&logo" group-title="•虎牙「影视」",三国演义 http://dns.yiandrive.com:15907/huya/11602081 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059564&huya&logo" group-title="•虎牙「影视」",马春夏秋冬梅 +http://dns.yiandrive.com:15907/huya/21059564 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",痞子帅叔叔 +http://dns.yiandrive.com:15907/huya/11342433 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29465856&huya&logo" group-title="•虎牙「影视」",刑事侦缉档案 +http://dns.yiandrive.com:15907/huya/29465856 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/1394565204&huya&logo" group-title="•虎牙「影视」",木子先生,铁齿铜牙纪晓岚 +http://dns.yiandrive.com:15907/huya/11342396 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",扁豆看电影 +http://dns.yiandrive.com:15907/huya/16028551 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059595&huya&logo" group-title="•虎牙「影视」",电影_海盗 +http://dns.yiandrive.com:15907/huya/21059595 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080238&huya&logo" group-title="•虎牙「影视」",挨打 +http://dns.yiandrive.com:15907/huya/30080238 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602085&huya&logo" group-title="•虎牙「影视」",杨光 +http://dns.yiandrive.com:15907/huya/11602085 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352956&huya&logo" group-title="•虎牙「影视」",双面胶 +http://dns.yiandrive.com:15907/huya/11352956 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352897&huya&logo" group-title="•虎牙「影视」",电影 +http://dns.yiandrive.com:15907/huya/11352897 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342428&huya&logo" group-title="•虎牙「影视」",电影_宇宙 +http://dns.yiandrive.com:15907/huya/11342428 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11279247&huya&logo" group-title="•虎牙「影视」",电影_赛车 +http://dns.yiandrive.com:15907/huya/11279247 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",止戈电影 +http://dns.yiandrive.com:15907/huya/19863777 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352872&huya&logo" group-title="•虎牙「影视」",家有儿女|种瓜得弟弟 +http://dns.yiandrive.com:15907/huya/11352872 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29982639&huya&logo" group-title="•虎牙「影视」",庆余年 +http://dns.yiandrive.com:15907/huya/29982639 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342400&huya&logo" group-title="•虎牙「影视」",活佛济公 +http://dns.yiandrive.com:15907/huya/11342400 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/22592516&huya&logo" group-title="•虎牙「影视」",虹猫蓝兔系列|虹猫蓝兔官方 +http://dns.yiandrive.com:15907/huya/22592516 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080236&huya&logo" group-title="•虎牙「影视」",名侦探柯南|傍晚猴 +http://dns.yiandrive.com:15907/huya/30080236 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352966&huya&logo" group-title="•虎牙「影视」",魔幻手机|如意菜头 +http://dns.yiandrive.com:15907/huya/11352966 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355793&huya&logo" group-title="•虎牙「影视」",錦丹广明 +http://dns.yiandrive.com:15907/huya/26355793 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29580970&huya&logo" group-title="•虎牙「影视」",年年营 +http://dns.yiandrive.com:15907/huya/29580970 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342426&huya&logo" group-title="•虎牙「影视」",情满四合院 +http://dns.yiandrive.com:15907/huya/11342426 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336726&huya&logo" group-title="•虎牙「影视」",爱情公寓|武林萌主唐小姐 +http://dns.yiandrive.com:15907/huya/11336726 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080255&huya&logo" group-title="•虎牙「影视」",乡村爱情 +http://dns.yiandrive.com:15907/huya/30080255 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/19524135&huya&logo" group-title="•虎牙「影视」",炊事班de故事 http://dns.yiandrive.com:15907/huya/19524135 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352882&huya&logo" group-title="•虎牙「影视」",网球王子|我们都爱笑 +http://dns.yiandrive.com:15907/huya/11352882 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23740156&huya&logo" group-title="•虎牙「影视」",埋堆堆官方 +http://dns.yiandrive.com:15907/huya/23740156 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602041&huya&logo" group-title="•虎牙「影视」",电影_推荐 +http://dns.yiandrive.com:15907/huya/11602041 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865142&huya&logo" group-title="•虎牙「影视」",港剧慢品汇 +http://dns.yiandrive.com:15907/huya/23865142 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342393&huya&logo" group-title="•虎牙「影视」",漫长的季节 +http://dns.yiandrive.com:15907/huya/11342393 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28962587&huya&logo" group-title="•虎牙「影视」",光头阿强 +http://dns.yiandrive.com:15907/huya/28962587 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/15152155&huya&logo" group-title="•虎牙「影视」",科幻梦工场 +http://dns.yiandrive.com:15907/huya/15152155 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080229&huya&logo" group-title="•虎牙「影视」",狄仁杰电影 +http://dns.yiandrive.com:15907/huya/30080229 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903183&huya&logo" group-title="•虎牙「影视」",鉴证实录 +http://dns.yiandrive.com:15907/huya/23903183 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/13303478&huya&logo" group-title="•虎牙「影视」",阿斗归来了 +http://dns.yiandrive.com:15907/huya/13303478 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29465863&huya&logo" group-title="•虎牙「影视」",鬼吹灯之龙岭迷窟 +http://dns.yiandrive.com:15907/huya/29465863 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",小松说剧 +http://dns.yiandrive.com:15907/huya/11593369 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23865058&huya&logo" group-title="•虎牙「影视」",笑看风云 +http://dns.yiandrive.com:15907/huya/23865058 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352922&huya&logo" group-title="•虎牙「影视」",四驱兄弟 +http://dns.yiandrive.com:15907/huya/11352922 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601957&huya&logo" group-title="•虎牙「影视」",鬼吹灯之昆仑神宫 +http://dns.yiandrive.com:15907/huya/11601957 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14734068&huya&logo" group-title="•虎牙「影视」",泛爱心说剧 +http://dns.yiandrive.com:15907/huya/14734068 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352871&huya&logo" group-title="•虎牙「影视」",鬼吹灯之精绝古城 +http://dns.yiandrive.com:15907/huya/11352871 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601966&huya&logo" group-title="•虎牙「影视」",七龙珠改-超级赛亚人孙悟空 +http://dns.yiandrive.com:15907/huya/11601966 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602075&huya&logo" group-title="•虎牙「影视」",鬼吹灯之怒晴湘西 +http://dns.yiandrive.com:15907/huya/11602075 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355767&huya&logo" group-title="•虎牙「影视」",乌龙闯情关 +http://dns.yiandrive.com:15907/huya/26355767 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602072&huya&logo" group-title="•虎牙「影视」",民兵葛二蛋 http://dns.yiandrive.com:15907/huya/11602072 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080227&huya&logo" group-title="•虎牙「影视」",迪迦奥特曼 http://dns.yiandrive.com:15907/huya/30080227 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/15152155&huya&logo" group-title="•虎牙「影视」",科幻梦工场 -http://dns.yiandrive.com:15907/huya/15152155 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352898&huya&logo" group-title="•虎牙「影视」",鬼吹灯之云南虫谷 -http://dns.yiandrive.com:15907/huya/11352898 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601957&huya&logo" group-title="•虎牙「影视」",鬼吹灯之昆仑神宫 -http://dns.yiandrive.com:15907/huya/11601957 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352913&huya&logo" group-title="•虎牙「影视」",古墓系列-去冒险吧! -http://dns.yiandrive.com:15907/huya/11352913 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342393&huya&logo" group-title="•虎牙「影视」",漫长的季节 -http://dns.yiandrive.com:15907/huya/11342393 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/14734068&huya&logo" group-title="•虎牙「影视」",泛爱心说剧 -http://dns.yiandrive.com:15907/huya/14734068 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/29465863&huya&logo" group-title="•虎牙「影视」",鬼吹灯之龙岭迷窟 -http://dns.yiandrive.com:15907/huya/29465863 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080238&huya&logo" group-title="•虎牙「影视」",挨打 -http://dns.yiandrive.com:15907/huya/30080238 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",小松说剧 -http://dns.yiandrive.com:15907/huya/11593369 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601966&huya&logo" group-title="•虎牙「影视」",七龙珠改-超级赛亚人孙悟空 -http://dns.yiandrive.com:15907/huya/11601966 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352883&huya&logo" group-title="•虎牙「影视」",鬼吹灯 -http://dns.yiandrive.com:15907/huya/11352883 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23903183&huya&logo" group-title="•虎牙「影视」",鉴证实录 -http://dns.yiandrive.com:15907/huya/23903183 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352871&huya&logo" group-title="•虎牙「影视」",鬼吹灯之精绝古城 -http://dns.yiandrive.com:15907/huya/11352871 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352922&huya&logo" group-title="•虎牙「影视」",四驱兄弟 -http://dns.yiandrive.com:15907/huya/11352922 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602069&huya&logo" group-title="•虎牙「影视」",向阳花-神奇宝贝 -http://dns.yiandrive.com:15907/huya/11602069 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602075&huya&logo" group-title="•虎牙「影视」",鬼吹灯之怒晴湘西 -http://dns.yiandrive.com:15907/huya/11602075 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342430&huya&logo" group-title="•虎牙「影视」",领带哥 http://dns.yiandrive.com:15907/huya/11342430 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342394&huya&logo" group-title="•虎牙「影视」",樱桃小丸子 http://dns.yiandrive.com:15907/huya/11342394 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342385&huya&logo" group-title="•虎牙「影视」",火影 -http://dns.yiandrive.com:15907/huya/11342385 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355802&huya&logo" group-title="•虎牙「影视」",之而成冠毛 -http://dns.yiandrive.com:15907/huya/26355802 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30311494&huya&logo" group-title="•虎牙「影视」",征服 -http://dns.yiandrive.com:15907/huya/30311494 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059609&huya&logo" group-title="•虎牙「影视」",30而已 -http://dns.yiandrive.com:15907/huya/21059609 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352913&huya&logo" group-title="•虎牙「影视」",古墓系列-去冒险吧! +http://dns.yiandrive.com:15907/huya/11352913 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352898&huya&logo" group-title="•虎牙「影视」",鬼吹灯之云南虫谷 +http://dns.yiandrive.com:15907/huya/11352898 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/16144175&huya&logo" group-title="•虎牙「影视」",亮哥讲电影 http://dns.yiandrive.com:15907/huya/16144175 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30250949&huya&logo" group-title="•虎牙「影视」",狄仁杰 1+4 部 -http://dns.yiandrive.com:15907/huya/30250949 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",大盛魁 -http://dns.yiandrive.com:15907/huya/30292086 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/17091681&huya&logo" group-title="•虎牙「影视」",音乐石榴 -http://dns.yiandrive.com:15907/huya/17091681 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28272846&huya&logo" group-title="•虎牙「影视」",和珅 -http://dns.yiandrive.com:15907/huya/28272846 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11774959&huya&logo" group-title="•虎牙「影视」",电影最top -http://dns.yiandrive.com:15907/huya/11774959 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352946&huya&logo" group-title="•虎牙「影视」",成龙历险记|老司机 -http://dns.yiandrive.com:15907/huya/11352946 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21277391&huya&logo" group-title="•虎牙「影视」",大象放映室 -http://dns.yiandrive.com:15907/huya/21277391 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355767&huya&logo" group-title="•虎牙「影视」",乌龙闯情关 -http://dns.yiandrive.com:15907/huya/26355767 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30080225&huya&logo" group-title="•虎牙「影视」",风筝 http://dns.yiandrive.com:15907/huya/30080225 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355806&huya&logo" group-title="•虎牙「影视」",小宝与康熙 -http://dns.yiandrive.com:15907/huya/26355806 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30311494&huya&logo" group-title="•虎牙「影视」",征服 +http://dns.yiandrive.com:15907/huya/30311494 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352946&huya&logo" group-title="•虎牙「影视」",成龙历险记|老司机 +http://dns.yiandrive.com:15907/huya/11352946 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/28272846&huya&logo" group-title="•虎牙「影视」",和珅 +http://dns.yiandrive.com:15907/huya/28272846 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/20488841&huya&logo" group-title="•虎牙「影视」",阿良说美剧 http://dns.yiandrive.com:15907/huya/20488841 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21059609&huya&logo" group-title="•虎牙「影视」",30而已 +http://dns.yiandrive.com:15907/huya/21059609 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601968&huya&logo" group-title="•虎牙「影视」",电影_沈腾 +http://dns.yiandrive.com:15907/huya/11601968 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342385&huya&logo" group-title="•虎牙「影视」",火影 +http://dns.yiandrive.com:15907/huya/11342385 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11602069&huya&logo" group-title="•虎牙「影视」",向阳花-神奇宝贝 +http://dns.yiandrive.com:15907/huya/11602069 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30219264&huya&logo" group-title="•虎牙「影视」",燕双鹰 +http://dns.yiandrive.com:15907/huya/30219264 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",大盛魁 +http://dns.yiandrive.com:15907/huya/30292086 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11352883&huya&logo" group-title="•虎牙「影视」",鬼吹灯 +http://dns.yiandrive.com:15907/huya/11352883 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/967722&huya&logo" group-title="•虎牙「游戏」",967722 +http://dns.yiandrive.com:15907/huya/967722 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/99724&huya&logo" group-title="•虎牙「游戏」",赖神 +http://dns.yiandrive.com:15907/huya/99724 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21277391&huya&logo" group-title="•虎牙「影视」",大象放映室 +http://dns.yiandrive.com:15907/huya/21277391 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/17091681&huya&logo" group-title="•虎牙「影视」",音乐石榴 +http://dns.yiandrive.com:15907/huya/17091681 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/26355806&huya&logo" group-title="•虎牙「影视」",小宝与康熙 +http://dns.yiandrive.com:15907/huya/26355806 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/243547&huya&logo" group-title="•虎牙「游戏」",吕德华 +http://dns.yiandrive.com:15907/huya/243547 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52033&huya&logo" group-title="•虎牙「游戏」",许仙 +http://dns.yiandrive.com:15907/huya/52033 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/998572&huya&logo" group-title="•虎牙「游戏」",Emo +http://dns.yiandrive.com:15907/huya/998572 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/222523&huya&logo" group-title="•虎牙「游戏」",kRYST4L +http://dns.yiandrive.com:15907/huya/222523 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/123321&huya&logo" group-title="•虎牙「游戏」",CSBOY +http://dns.yiandrive.com:15907/huya/123321 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/705112&huya&logo" group-title="•虎牙「游戏」",老鬼 +http://dns.yiandrive.com:15907/huya/705112 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342415&huya&logo" group-title="•虎牙「影视」",盗墓笔记-怒海潜沙-秦岭神树 http://dns.yiandrive.com:15907/huya/11342415 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/712417&huya&logo" group-title="•虎牙「游戏」",卡莎 +http://dns.yiandrive.com:15907/huya/712417 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11601970&huya&logo" group-title="•虎牙「影视」",征服 +http://dns.yiandrive.com:15907/huya/11601970 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/262985&huya&logo" group-title="•虎牙「游戏」",解说海威 +http://dns.yiandrive.com:15907/huya/262985 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/333003&huya&logo" group-title="•虎牙「游戏」",Zz1tai姿态 +http://dns.yiandrive.com:15907/huya/333003 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/714539&huya&logo" group-title="•虎牙「游戏」",小问天lux +http://dns.yiandrive.com:15907/huya/714539 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/310112&huya&logo" group-title="•虎牙「游戏」",Sdn +http://dns.yiandrive.com:15907/huya/310112 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/883235&huya&logo" group-title="•虎牙「游戏」",Chalice +http://dns.yiandrive.com:15907/huya/883235 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/199300&huya&logo" group-title="•虎牙「游戏」",陈子豪 +http://dns.yiandrive.com:15907/huya/199300 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52988&huya&logo" group-title="•虎牙「游戏」",大飞 +http://dns.yiandrive.com:15907/huya/52988 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/976453&huya&logo" group-title="•虎牙「游戏」",英雄杀曙光 +http://dns.yiandrive.com:15907/huya/976453 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/211888&huya&logo" group-title="•虎牙「游戏」",Maybe +http://dns.yiandrive.com:15907/huya/211888 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/949527&huya&logo" group-title="•虎牙「游戏」",文森特 +http://dns.yiandrive.com:15907/huya/949527 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/836458&huya&logo" group-title="•虎牙「游戏」",微竞、莎莉 http://dns.yiandrive.com:15907/huya/836458 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/13303478&huya&logo" group-title="•虎牙「影视」",阿斗归来了 -http://dns.yiandrive.com:15907/huya/13303478 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/660149&huya&logo" group-title="•虎牙「游戏」",HSL虎牙超级联赛 -http://dns.yiandrive.com:15907/huya/660149 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/189201&huya&logo" group-title="•虎牙「游戏」",霸哥 -http://dns.yiandrive.com:15907/huya/189201 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/528300&huya&logo" group-title="•虎牙「游戏」",安德罗妮、 -http://dns.yiandrive.com:15907/huya/528300 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/181469&huya&logo" group-title="•虎牙「游戏」",张嘉文 -http://dns.yiandrive.com:15907/huya/181469 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/691406&huya&logo" group-title="•虎牙「游戏」",baicaiovo -http://dns.yiandrive.com:15907/huya/691406 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/657314&huya&logo" group-title="•虎牙「游戏」",虎牙丶三伟子 -http://dns.yiandrive.com:15907/huya/657314 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/328340&huya&logo" group-title="•虎牙「游戏」",冰封三国杀 -http://dns.yiandrive.com:15907/huya/328340 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/196645&huya&logo" group-title="•虎牙「游戏」",浪D -http://dns.yiandrive.com:15907/huya/196645 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/115959&huya&logo" group-title="•虎牙「游戏」",AG 虎牙绝迹 -http://dns.yiandrive.com:15907/huya/115959 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2808&huya&logo" group-title="•虎牙「游戏」",豚豚 -http://dns.yiandrive.com:15907/huya/2808 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/585800&huya&logo" group-title="•虎牙「游戏」",9点抱紧P神大腿 +http://dns.yiandrive.com:15907/huya/585800 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/617694&huya&logo" group-title="•虎牙「游戏」",guoma +http://dns.yiandrive.com:15907/huya/617694 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/123888&huya&logo" group-title="•虎牙「游戏」",Sccc丶 +http://dns.yiandrive.com:15907/huya/123888 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/579236&huya&logo" group-title="•虎牙「游戏」",老实人sask +http://dns.yiandrive.com:15907/huya/579236 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/872189&huya&logo" group-title="•虎牙「游戏」",吃鸡-染宝宝 http://dns.yiandrive.com:15907/huya/872189 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/314957&huya&logo" group-title="•虎牙「游戏」",虎牙-莱昂凯 +http://dns.yiandrive.com:15907/huya/314957 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/660149&huya&logo" group-title="•虎牙「游戏」",HSL虎牙超级联赛 +http://dns.yiandrive.com:15907/huya/660149 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10188&huya&logo" group-title="•虎牙「游戏」",DANK1ing +http://dns.yiandrive.com:15907/huya/10188 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/521000&huya&logo" group-title="•虎牙「游戏」",卡尔 +http://dns.yiandrive.com:15907/huya/521000 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/189201&huya&logo" group-title="•虎牙「游戏」",霸哥 +http://dns.yiandrive.com:15907/huya/189201 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/531309&huya&logo" group-title="•虎牙「游戏」",MT丶季多鱼 +http://dns.yiandrive.com:15907/huya/531309 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/459804&huya&logo" group-title="•虎牙「游戏」",虎牙Jiale-MG +http://dns.yiandrive.com:15907/huya/459804 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/18958992&huya&logo" group-title="•虎牙「游戏」",War3魔尊重楼 +http://dns.yiandrive.com:15907/huya/18958992 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/326513&huya&logo" group-title="•虎牙「游戏」",XLX露雪 +http://dns.yiandrive.com:15907/huya/326513 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/883174&huya&logo" group-title="•虎牙「游戏」",青帝 +http://dns.yiandrive.com:15907/huya/883174 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/102411&huya&logo" group-title="•虎牙「游戏」",神超 +http://dns.yiandrive.com:15907/huya/102411 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/180943&huya&logo" group-title="•虎牙「游戏」",壶神 +http://dns.yiandrive.com:15907/huya/180943 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/837804&huya&logo" group-title="•虎牙「游戏」",拼 +http://dns.yiandrive.com:15907/huya/837804 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/115959&huya&logo" group-title="•虎牙「游戏」",AG 虎牙绝迹 +http://dns.yiandrive.com:15907/huya/115959 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/132743&huya&logo" group-title="•虎牙「游戏」",Yx丶炎帝 +http://dns.yiandrive.com:15907/huya/132743 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/196645&huya&logo" group-title="•虎牙「游戏」",浪D +http://dns.yiandrive.com:15907/huya/196645 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/547825&huya&logo" group-title="•虎牙「游戏」",绿绿 +http://dns.yiandrive.com:15907/huya/547825 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30255412&huya&logo" group-title="•虎牙「游戏」",呆妹 http://dns.yiandrive.com:15907/huya/30255412 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/616702&huya&logo" group-title="•虎牙「游戏」",呆呆 +http://dns.yiandrive.com:15907/huya/616702 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30255430&huya&logo" group-title="•虎牙「游戏」",玩机器 +http://dns.yiandrive.com:15907/huya/30255430 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/181469&huya&logo" group-title="•虎牙「游戏」",张嘉文 +http://dns.yiandrive.com:15907/huya/181469 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/13579&huya&logo" group-title="•虎牙「游戏」",董小飒 +http://dns.yiandrive.com:15907/huya/13579 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/216301&huya&logo" group-title="•虎牙「游戏」",巅峰-张美丽吖 +http://dns.yiandrive.com:15907/huya/216301 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/998&huya&logo" group-title="•虎牙「游戏」",楚河 +http://dns.yiandrive.com:15907/huya/998 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/769178&huya&logo" group-title="•虎牙「游戏」",AzZ丶半个橙子 +http://dns.yiandrive.com:15907/huya/769178 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/126518&huya&logo" group-title="•虎牙「游戏」",EDGZmjjKK康康 +http://dns.yiandrive.com:15907/huya/126518 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/915056&huya&logo" group-title="•虎牙「游戏」",南瓜 +http://dns.yiandrive.com:15907/huya/915056 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/459995&huya&logo" group-title="•虎牙「游戏」",CF.周虎 +http://dns.yiandrive.com:15907/huya/459995 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/351794&huya&logo" group-title="•虎牙「游戏」",风影 +http://dns.yiandrive.com:15907/huya/351794 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11424&huya&logo" group-title="•虎牙「游戏」",CF.宠儿 +http://dns.yiandrive.com:15907/huya/11424 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/312410&huya&logo" group-title="•虎牙「游戏」",炉石春哥 +http://dns.yiandrive.com:15907/huya/312410 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/209801&huya&logo" group-title="•虎牙「游戏」",三千丶新娘 +http://dns.yiandrive.com:15907/huya/209801 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/393751&huya&logo" group-title="•虎牙「游戏」",暖阳 +http://dns.yiandrive.com:15907/huya/393751 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/126198&huya&logo" group-title="•虎牙「游戏」",童言 +http://dns.yiandrive.com:15907/huya/126198 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/640056&huya&logo" group-title="•虎牙「游戏」",李文哲 +http://dns.yiandrive.com:15907/huya/640056 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/861098&huya&logo" group-title="•虎牙「游戏」",蜜小涛 +http://dns.yiandrive.com:15907/huya/861098 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/51106&huya&logo" group-title="•虎牙「游戏」",口袋 +http://dns.yiandrive.com:15907/huya/51106 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11774959&huya&logo" group-title="•虎牙「影视」",电影最top +http://dns.yiandrive.com:15907/huya/11774959 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/660162&huya&logo" group-title="•虎牙「游戏」",虎牙英雄联盟传奇杯 http://dns.yiandrive.com:15907/huya/660162 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/138967&huya&logo" group-title="•虎牙「游戏」",狼队-道崽 +http://dns.yiandrive.com:15907/huya/138967 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/786724&huya&logo" group-title="•虎牙「游戏」",明眸 +http://dns.yiandrive.com:15907/huya/786724 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/52333&huya&logo" group-title="•虎牙「游戏」",LING-张老三 +http://dns.yiandrive.com:15907/huya/52333 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/387067&huya&logo" group-title="•虎牙「游戏」",随风蛮王 http://dns.yiandrive.com:15907/huya/387067 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Jiumengey&douyin&logo" group-title="•抖音「游戏」",无敌老旧梦 -http://dns.yiandrive.com:15907/douyin/Jiumengey -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/834622&huya&logo" group-title="•虎牙「游戏」",TG-老熊【平头哥】 -http://dns.yiandrive.com:15907/huya/834622 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/135792&huya&logo" group-title="•虎牙「游戏」",恬柚睡着惹 -http://dns.yiandrive.com:15907/huya/135792 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/136526&huya&logo" group-title="•虎牙「游戏」",是浮生不是福生 -http://dns.yiandrive.com:15907/huya/136526 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/139258&huya&logo" group-title="•虎牙「游戏」",小草包QAQ +http://dns.yiandrive.com:15907/huya/139258 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/178489&huya&logo" group-title="•虎牙「游戏」",Jimmy吉米叽 +http://dns.yiandrive.com:15907/huya/178489 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/23687280&huya&logo" group-title="•虎牙「游戏」",杰瑞 +http://dns.yiandrive.com:15907/huya/23687280 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/940213&huya&logo" group-title="•虎牙「游戏」",非凡-迪安 http://dns.yiandrive.com:15907/huya/940213 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/713320&huya&logo" group-title="•虎牙「游戏」",巅峰丶阳酱吖 -http://dns.yiandrive.com:15907/huya/713320 -#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",无花果不结果 -http://dns.yiandrive.com:15907/huya/30080228 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342419&huya&logo" group-title="•虎牙「影视」",黑帮斗争 -http://dns.yiandrive.com:15907/huya/11342419 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4975965&bilibili&logo" group-title="•B站「影视」",情深深 -http://dns.yiandrive.com:15907/bilibili/4975965 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/10098&huya&logo" group-title="•虎牙「游戏」",狂鸟丶小宇热游-90098 +http://dns.yiandrive.com:15907/huya/10098 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30256385&huya&logo" group-title="•虎牙「游戏」",阳光男孩Aq +http://dns.yiandrive.com:15907/huya/30256385 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/328737&huya&logo" group-title="•虎牙「游戏」",ALpb马平 +http://dns.yiandrive.com:15907/huya/328737 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/139628&huya&logo" group-title="•虎牙「游戏」",avoidless +http://dns.yiandrive.com:15907/huya/139628 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/427152&huya&logo" group-title="•虎牙「游戏」",苏晓 +http://dns.yiandrive.com:15907/huya/427152 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/333708&huya&logo" group-title="•虎牙「游戏」",微竟-嘎嘎V +http://dns.yiandrive.com:15907/huya/333708 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/703000&huya&logo" group-title="•虎牙「游戏」",幻灭 +http://dns.yiandrive.com:15907/huya/703000 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「游戏」",微竞涛哥 +http://dns.yiandrive.com:15907/huya/552332 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/834622&huya&logo" group-title="•虎牙「游戏」",TG-老熊【平头哥】 +http://dns.yiandrive.com:15907/huya/834622 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/21417927&huya&logo" group-title="•虎牙「游戏」",TG-纯爱猫猫子 +http://dns.yiandrive.com:15907/huya/21417927 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/XC78333&douyin&logo" group-title="•抖音「游戏」",肖菠萝 +http://dns.yiandrive.com:15907/douyin/XC78333 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30256340&huya&logo" group-title="•虎牙「游戏」",东北大鹌鹑 +http://dns.yiandrive.com:15907/huya/30256340 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/136526&huya&logo" group-title="•虎牙「游戏」",是浮生不是福生 +http://dns.yiandrive.com:15907/huya/136526 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/851040&douyu&logo" group-title="•斗鱼「娱乐」",八卦象棋 +http://dns.yiandrive.com:15907/douyu/851040 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/milkkim123&soop&logo" group-title="•SOOP「娱乐」",김우유♡ +https://live.iill.top/soop/milkkim123 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/12030099&douyu&logo" group-title="•斗鱼「游戏」",CF.飞段 +http://dns.yiandrive.com:15907/douyu/12030099 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Kimvreywell&douyin&logo" group-title="•抖音「游戏」",kim +http://dns.yiandrive.com:15907/douyin/Kimvreywell +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/lky_00113&douyin&logo" group-title="•抖音「娱乐」",牙刷 +http://dns.yiandrive.com:15907/douyin/lky_00113 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11544610&douyu&logo" group-title="•斗鱼「影视」",四爷 http://dns.yiandrive.com:15907/douyu/11544610 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/24939&douyu&logo" group-title="•斗鱼「游戏」",CF.王振 +http://dns.yiandrive.com:15907/douyu/24939 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/515460&huya&logo" group-title="•虎牙「游戏」",乱迷魂 +http://dns.yiandrive.com:15907/huya/515460 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9242659&douyu&logo" group-title="•斗鱼「影视」",港剧超经典 http://dns.yiandrive.com:15907/douyu/9242659 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2221574577&douyin&logo" group-title="•抖音「娱乐」",阿鑫塑形有氧运动 -http://dns.yiandrive.com:15907/douyin/2221574577 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336719&huya&logo" group-title="•虎牙「影视」",古惑 -http://dns.yiandrive.com:15907/huya/11336719 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/Lbuding0326&douyin&logo" group-title="•抖音「游戏」",大能 -http://dns.yiandrive.com:15907/douyin/Lbuding0326 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/115753&huya&logo" group-title="•虎牙「游戏」",CF.Even +http://dns.yiandrive.com:15907/huya/115753 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/4975965&bilibili&logo" group-title="•B站「影视」",情深深 +http://dns.yiandrive.com:15907/bilibili/4975965 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/660219&huya&logo" group-title="•虎牙「游戏」",QQ飞车官方赛事 http://dns.yiandrive.com:15907/huya/660219 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/seosils2&soop&logo" group-title="•SOOP「娱乐」",서실♡ +https://live.iill.top/soop/seosils2 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/714963&huya&logo" group-title="•虎牙「游戏」",久爱-秋人 +http://dns.yiandrive.com:15907/huya/714963 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/YNDGG16888&douyin&logo" group-title="•抖音「其他」",颠锅锅 +http://dns.yiandrive.com:15907/douyin/YNDGG16888 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11342419&huya&logo" group-title="•虎牙「影视」",黑帮斗争 +http://dns.yiandrive.com:15907/huya/11342419 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/5068070&douyin&logo" group-title="•抖音「游戏」",棋棋是技播 +http://dns.yiandrive.com:15907/douyin/5068070 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336719&huya&logo" group-title="•虎牙「影视」",古惑 +http://dns.yiandrive.com:15907/huya/11336719 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/2145431900&douyin&logo" group-title="•抖音「娱乐」",黄甜甜 +http://dns.yiandrive.com:15907/douyin/2145431900 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/zifengr&douyin&logo" group-title="•抖音「游戏」",紫风(国服游走) +http://dns.yiandrive.com:15907/douyin/zifengr +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/400298&huya&logo" group-title="•虎牙「游戏」",鲨鱼 +http://dns.yiandrive.com:15907/huya/400298 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/3691980&douyu&logo" group-title="•斗鱼「游戏」",最小的海 +http://dns.yiandrive.com:15907/douyu/3691980 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/31798779262&douyin&logo" group-title="•抖音「游戏」",小凯 pubg +http://dns.yiandrive.com:15907/douyin/31798779262 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/CFxixi666&douyin&logo" group-title="•抖音「游戏」",CF.XiXi +http://dns.yiandrive.com:15907/douyin/CFxixi666 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/699772&huya&logo" group-title="•虎牙「游戏」",星痕OB +http://dns.yiandrive.com:15907/huya/699772 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/jiaowoguanren99&douyin&logo" group-title="•抖音「娱乐」",叫我官人 +http://dns.yiandrive.com:15907/douyin/jiaowoguanren99 #EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/6386914&douyu&logo" group-title="•斗鱼「游戏」",小明鸽i http://dns.yiandrive.com:15907/douyu/6386914 -#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/30328432&huya&logo" group-title="•虎牙「游戏」",故氏 -http://dns.yiandrive.com:15907/huya/30328432 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/142894&huya&logo" group-title="•虎牙「游戏」",CF.马哲 +http://dns.yiandrive.com:15907/huya/142894 +#EXTINF:-1 tvg-logo="https://epg.iill.top/logo/虎牙.png" group-title="•虎牙「影视」",无花果不结果 +http://dns.yiandrive.com:15907/huya/30080228 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/11336592&huya&logo" group-title="•虎牙「影视」",红茶妹妹 +http://dns.yiandrive.com:15907/huya/11336592 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/70537&huya&logo" group-title="•虎牙「游戏」",A+ +http://dns.yiandrive.com:15907/huya/70537 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/9191006&douyu&logo" group-title="•斗鱼「娱乐」",动漫视听 +http://dns.yiandrive.com:15907/douyu/9191006 +#EXTINF:-1 tvg-logo="https://tv.iill.top/LOGO/mzsdf888&douyin&logo" group-title="•抖音「游戏」",蚂蚱OVO +http://dns.yiandrive.com:15907/douyin/mzsdf888 diff --git a/摸鱼儿/api.json b/摸鱼儿/api.json index 0d7f4a3..faef14d 100644 --- a/摸鱼儿/api.json +++ b/摸鱼儿/api.json @@ -81,16 +81,13 @@ { "key": "皮皮虾", "name": "😛皮皮吃虾┃4K纯净", + "playerType": 1, "type": 3, - "api": "csp_AppYsV3", + "api": "csp_AppYsV2", "searchable": 1, "quickSearch": 1, "filterable": 1, - "ext": { - "cmsApis": "R0NNEUWaOb1LpNX5d/wBWINblRR3D6g8kwu/NNyxuEj7yYzVrqiS+6qI0Kf3e8vo", - "jxApi": "LnkT3kx3JdWCe+2pMS7J9CuPqcF/f7CDMK/7Kz4lcW66bv0Z+3kNMcZJ7rFhSbV6uJzEzn8gGGjUdjU5GRB61w==", - "prefix": "GygNsW7GmW6sQigWwHzG/Hwqul3u2kADy6YkyP2j8xU=" - } + "ext": "http://www.ppxys.vip/api.php/app/" }, { "key": "流光影视", @@ -200,6 +197,29 @@ "filterable": 1, "ext": "" }, + { + "key": "白白", + "name": "🐭白白┃秒播┃纯净", + "type": 3, + "api": "csp_Sbaibai", + "playerType": 2, + "searchable": 1, + "quickSearch": 1, + "changeable": 1 + }, + { + "key": "Lib", + "name": "🌟立播┃秒播┃纯净", + "type": 3, + "api": "csp_Libvio", + "searchable": 1, + "quickSearch": 1, + "changeable": 1, + "ext": { + "Cloud-drive": "TVBox/Cloud-drive.txt", + "from": "4k|auto" + } + }, { "key": "糯米", "name": "🍓糯米┃秒播┃纯净", @@ -256,12 +276,11 @@ "key": "可可", "name": "👻可可┃多线┃纯净", "type": 3, - "api": "csp_XBPQ", - "jar": "./jars/配置中心.jar", + "api": "csp_Kekys", + "playerType": 2, "searchable": 1, "quickSearch": 1, - "filterable": 1, - "ext": "http://我不是.摸鱼儿.com/api/moyu.php?file=可可" + "changeable": 1 }, { "key": "zxzj", @@ -1418,9 +1437,9 @@ "url": "Demo" }, { - "name": "皮皮虾", + "name": "摸鱼皮皮虾", "type": "1", - "url": "http://45.207.215.101:5423/index.php?url=", + "url": "http://jiexi.52ppx.top/lxjson.php?url=", "ext": { "flag": [ "PPXLG", diff --git a/摸鱼儿/api/drpy.min.js b/摸鱼儿/api/drpy.min.js index 7111baf..12fcd8c 100644 --- a/摸鱼儿/api/drpy.min.js +++ b/摸鱼儿/api/drpy.min.js @@ -1,2317 +1,73 @@ -import cheerio from "assets://js/lib/cheerio.min.js"; -import "assets://js/lib/crypto-js.js"; -import "./jsencrypt.js"; -import 模板 from "./模板.js"; -import { - gbkTool -} -from "./gbk.js"; - -function init_test() { - console.log("init_test_start"); - console.log("当前版本号:" + VERSION); - console.log(RKEY); - console.log(JSON.stringify(rule)); - console.log("init_test_end") -} -function pre() { - if (typeof rule.预处理 === "string" && rule.预处理 && rule.预处理.trim()) { - let code = rule.预处理.trim(); - console.log("执行预处理代码:" + code); - if (code.startsWith("js:")) { - code = code.replace("js:", "") - } - try { - eval(code) - } catch (e) { - console.log("预处理执行失败:" + e.message) - } - } -} -let rule = {}; -let vercode = typeof pdfl === "function" ? "drpy2.1" : "drpy2"; -const VERSION = vercode + " 3.9.49beta40 202400426"; -const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36"; -const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36"; -const UA = "Mozilla/5.0"; -const UC_UA = "Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36"; -const IOS_UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"; -const RULE_CK = "cookie"; -const CATE_EXCLUDE = "首页|留言|APP|下载|资讯|新闻|动态"; -const TAB_EXCLUDE = "猜你|喜欢|下载|剧情|热播"; -const OCR_RETRY = 3; -const OCR_API = "http://drpy.nokia.press:8028/ocr/drpy/text"; -if (typeof MY_URL === "undefined") { - var MY_URL -} -var HOST; -var RKEY; -var fetch; -var print; -var log; -var rule_fetch_params; -var fetch_params; -var oheaders; -var _pdfh; -var _pdfa; -var _pd; -const DOM_CHECK_ATTR = /(url|src|href|-original|-src|-play|-url|style)$/; -const SPECIAL_URL = /^(ftp|magnet|thunder|ws):/; -const NOADD_INDEX = /:eq|:lt|:gt|:first|:last|^body$|^#/; -const URLJOIN_ATTR = /(url|src|href|-original|-src|-play|-url|style)$/; -const SELECT_REGEX = /:eq|:lt|:gt|#/g; -const SELECT_REGEX_A = /:eq|:lt|:gt/g; -if (typeof Object.assign != "function") { - Object.assign = function() { - let target = arguments[0]; - for (let i = 1; i < arguments.length; i++) { - let source = arguments[i]; - for (let key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key] - } - } - } - return target - } -} -if (!String.prototype.includes) { - String.prototype.includes = function(search, start) { - if (typeof start !== "number") { - start = 0 - } - if (start + search.length > this.length) { - return false - } else { - return this.indexOf(search, start) !== -1 - } - } -} -if (!Array.prototype.includes) { - Object.defineProperty(Array.prototype, "includes", { - value: function(searchElement, fromIndex) { - if (this == null) { - throw new TypeError('"this" is null or not defined') - } - var o = Object(this); - var len = o.length >>> 0; - if (len === 0) { - return false - } - var n = fromIndex | 0; - var k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); - while (k < len) { - if (o[k] === searchElement) { - return true - } - k++ - } - return false - } - }) -} -if (typeof String.prototype.startsWith != "function") { - String.prototype.startsWith = function(prefix) { - return this.slice(0, prefix.length) === prefix - } -} -if (typeof String.prototype.endsWith != "function") { - String.prototype.endsWith = function(suffix) { - return this.indexOf(suffix, this.length - suffix.length) !== -1 - } -} -Object.prototype.myValues = function(obj) { - if (obj == null) { - throw new TypeError("Cannot convert undefined or null to object") - } - var res = []; - for (var k in obj) { - if (obj.hasOwnProperty(k)) { - res.push(obj[k]) - } - } - return res -}; -if (typeof Object.prototype.values != "function") { - Object.prototype.values = function(obj) { - if (obj == null) { - throw new TypeError("Cannot convert undefined or null to object") - } - var res = []; - for (var k in obj) { - if (obj.hasOwnProperty(k)) { - res.push(obj[k]) - } - } - return res - } -} -if (typeof Array.prototype.join != "function") { - Array.prototype.join = function(emoji) { - emoji = emoji || ""; - let self = this; - let str = ""; - let i = 0; - if (!Array.isArray(self)) { - throw String(self) + "is not Array" - } - if (self.length === 0) { - return "" - } - if (self.length === 1) { - return String(self[0]) - } - i = 1; - str = this[0]; - for (; i < self.length; i++) { - str += String(emoji) + String(self[i]) - } - return str - } -} -if (typeof Array.prototype.toReversed != "function") { - Array.prototype.toReversed = function() { - const clonedList = this.slice(); - const reversedList = clonedList.reverse(); - return reversedList - } -} -String.prototype.rstrip = function(chars) { - let regex = new RegExp(chars + "$"); - return this.replace(regex, "") -}; -Array.prototype.append = Array.prototype.push; -String.prototype.strip = String.prototype.trim; - -function 是否正版(vipUrl) { - let flag = new RegExp("qq.com|iqiyi.com|youku.com|mgtv.com|bilibili.com|sohu.com|ixigua.com|pptv.com|miguvideo.com|le.com|1905.com|fun.tv"); - return flag.test(vipUrl) -} -function urlDeal(vipUrl) { - if (!vipUrl) { - return "" - } - if (!是否正版(vipUrl)) { - return vipUrl - } - if (!/miguvideo/.test(vipUrl)) { - vipUrl = vipUrl.split("#")[0].split("?")[0] - } - return vipUrl -} -function setResult(d) { - if (!Array.isArray(d)) { - return [] - } - VODS = []; - d.forEach(function(it) { - let obj = { - vod_id: it.url || "", - vod_name: it.title || "", - vod_remarks: it.desc || "", - vod_content: it.content || "", - vod_pic: it.pic_url || it.img || "" - }; - let keys = Object.keys(it); - if (keys.includes("tname")) { - obj.type_name = it.tname || "" - } - if (keys.includes("tid")) { - obj.type_id = it.tid || "" - } - if (keys.includes("year")) { - obj.vod_year = it.year || "" - } - if (keys.includes("actor")) { - obj.vod_actor = it.actor || "" - } - if (keys.includes("director")) { - obj.vod_director = it.director || "" - } - if (keys.includes("area")) { - obj.vod_area = it.area || "" - } - VODS.push(obj) - }); - return VODS -} -function setResult2(res) { - VODS = res.list || []; - return VODS -} -function setHomeResult(res) { - if (!res || typeof res !== "object") { - return [] - } - return setResult(res.list) -} -function rc(js) { - if (js === "maomi_aes.js") { - var a = CryptoJS.enc.Utf8.parse("625222f9149e961d"); - var t = CryptoJS.enc.Utf8.parse("5efdtf6060e2o330"); - return { - De: function(word) { - word = CryptoJS.enc.Hex.parse(word); - return CryptoJS.AES.decrypt(CryptoJS.enc.Base64.stringify(word), a, { - iv: t, - mode: CryptoJS.mode.CBC, - padding: CryptoJS.pad.Pkcs7 - }) - .toString(CryptoJS.enc.Utf8) - }, - En: function(word) { - var Encrypted = CryptoJS.AES.encrypt(word, a, { - iv: t, - mode: CryptoJS.mode.CBC, - padding: CryptoJS.pad.Pkcs7 - }); - return Encrypted.ciphertext.toString() - } - } - } - return {} -} -function maoss(jxurl, ref, key) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - eval(getCryptoJS()); - try { - var getVideoInfo = function(text) { - return CryptoJS.AES.decrypt(text, key, { - iv: iv, - padding: CryptoJS.pad.Pkcs7 - }) - .toString(CryptoJS.enc.Utf8) - }; - var token_key = key == undefined ? "dvyYRQlnPRCMdQSe" : key; - if (ref) { - var html = request(jxurl, { - headers: { - Referer: ref - } - }) - } else { - var html = request(jxurl) - } - if (html.indexOf("&btwaf=") != -1) { - html = request(jxurl + "&btwaf" + html.match(/&btwaf(.*?)"/)[1], { - headers: { - Referer: ref - } - }) - } - var token_iv = html.split('_token = "')[1].split('"')[0]; - var key = CryptoJS.enc.Utf8.parse(token_key); - var iv = CryptoJS.enc.Utf8.parse(token_iv); - eval(html.match(/var config = {[\s\S]*?}/)[0] + ""); - if (!config.url.startsWith("http")) { - config.url = CryptoJS.AES.decrypt(config.url, key, { - iv: iv, - padding: CryptoJS.pad.Pkcs7 - }) - .toString(CryptoJS.enc.Utf8) - } - return config.url - } catch (e) { - return "" - } -} -function urlencode(str) { - str = (str + "") - .toString(); - return encodeURIComponent(str) - .replace(/!/g, "%21") - .replace(/'/g, "%27") - .replace(/\(/g, "%28") - .replace(/\)/g, "%29") - .replace(/\*/g, "%2A") - .replace(/%20/g, "+") -} -function base64Encode(text) { - return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text)) -} -function base64Decode(text) { - return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text)) -} -function md5(text) { - return CryptoJS.MD5(text) - .toString() -} -function encodeStr(input, encoding) { - encoding = encoding || "gbk"; - if (encoding.startsWith("gb")) { - const strTool = gbkTool(); - input = strTool.encode(input) - } - return input -} -function decodeStr(input, encoding) { - encoding = encoding || "gbk"; - if (encoding.startsWith("gb")) { - const strTool = gbkTool(); - input = strTool.decode(input) - } - return input -} -function getCryptoJS() { - return 'console.log("CryptoJS已装载");' -} -const RSA = { - decode: function(data, key, option) { - option = option || {}; - if (typeof JSEncrypt === "function") { - let chunkSize = option.chunkSize || 117; - let privateKey = this.getPrivateKey(key); - const decryptor = new JSEncrypt; - decryptor.setPrivateKey(privateKey); - let uncrypted = ""; - uncrypted = decryptor.decryptUnicodeLong(data); - return uncrypted - } else { - return false - } - }, - encode: function(data, key, option) { - option = option || {}; - if (typeof JSEncrypt === "function") { - let chunkSize = option.chunkSize || 117; - let publicKey = this.getPublicKey(key); - const encryptor = new JSEncrypt; - encryptor.setPublicKey(publicKey); - let encrypted = ""; - encrypted = encryptor.encryptUnicodeLong(data); - return encrypted - } else { - return false - } - }, - fixKey(key, prefix, endfix) { - if (!key.includes(prefix)) { - key = prefix + key - } - if (!key.includes(endfix)) { - key += endfix - } - return key - }, - getPrivateKey(key) { - let prefix = "-----BEGIN RSA PRIVATE KEY-----"; - let endfix = "-----END RSA PRIVATE KEY-----"; - return this.fixKey(key, prefix, endfix) - }, - getPublicKey(key) { - let prefix = "-----BEGIN PUBLIC KEY-----"; - let endfix = "-----END PUBLIC KEY-----"; - return this.fixKey(key, prefix, endfix) - } -}; - -function getProxyUrl() { - if (typeof getProxy === "function") { - return getProxy(true) - } else { - return "http://127.0.0.1:9978/proxy?do=js" - } -} -function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) { - if (!m3u8_text && !m3u8_url || !m3u8_text && m3u8_url && !m3u8_url.startsWith("http")) { - return "" - } - if (!m3u8_text) { - log("m3u8_url:" + m3u8_url); - m3u8_text = request(m3u8_url) - } - log("len(m3u8_text):" + m3u8_text.length); - if (!ad_remove) { - return m3u8_text - } - if (ad_remove.startsWith("reg:")) { - ad_remove = ad_remove.slice(4) - } else if (ad_remove.startsWith("js:")) { - ad_remove = ad_remove.slice(3) - } - let m3u8_start = m3u8_text.slice(0, m3u8_text.indexOf("#EXTINF")) - .trim(); - let m3u8_body = m3u8_text.slice(m3u8_text.indexOf("#EXTINF"), m3u8_text.indexOf("#EXT-X-ENDLIST")) - .trim(); - let m3u8_end = m3u8_text.slice(m3u8_text.indexOf("#EXT-X-ENDLIST")) - .trim(); - let murls = []; - let m3_body_list = m3u8_body.split("\n"); - let m3_len = m3_body_list.length; - let i = 0; - while (i < m3_len) { - let mi = m3_body_list[i]; - let mi_1 = m3_body_list[i + 1]; - if (mi.startsWith("#EXTINF")) { - murls.push([mi, mi_1].join("&")); - i += 2 - } else if (mi.startsWith("#EXT-X-DISCONTINUITY")) { - let mi_2 = m3_body_list[i + 2]; - murls.push([mi, mi_1, mi_2].join("&")); - i += 3 - } else { - break - } - } - let new_m3u8_body = []; - for (let murl of murls) { - if (ad_remove && new RegExp(ad_remove) - .test(murl)) {} else { - let murl_list = murl.split("&"); - if (!murl_list[murl_list.length - 1].startsWith("http") && m3u8_url.startsWith("http")) { - murl_list[murl_list.length - 1] = urljoin(m3u8_url, murl_list[murl_list.length - 1]) - } - murl_list.forEach(it => { - new_m3u8_body.push(it) - }) - } - } - new_m3u8_body = new_m3u8_body.join("\n") - .trim(); - m3u8_text = [m3u8_start, new_m3u8_body, m3u8_end].join("\n") - .trim(); - return m3u8_text -} -function fixAdM3u8Ai(m3u8_url) { - let ts = (new Date) - .getTime(); - - function b(s1, s2) { - let i = 0; - while (i < s1.length) { - if (s1[i] !== s2[i]) { - break - } - i++ - } - return i - } - function reverseString(str) { - return str.split("") - .reverse() - .join("") - } - let m3u8 = request(m3u8_url); - m3u8 = m3u8.trim() - .split("\n") - .map(it => it.startsWith("#") ? it : urljoin(m3u8_url, it)) - .join("\n"); - let last_url = m3u8.split("\n") - .slice(-1)[0]; - if (last_url.includes(".m3u8") && last_url !== m3u8_url) { - m3u8_url = last_url; - m3u8 = request(m3u8_url) - } - let s = m3u8.trim() - .split("\n") - .filter(it => it.trim()) - .join("\n"); - let ss = s.split("\n"); - let firststr = ss.find(x => !x.startsWith("#")); - let maxl = 0; - let firststrlen = firststr.length; - let ml = Math.round(ss.length / 2) - .toString() - .length; - let laststr = ss.toReversed() - .find(x => { - if (!x.startsWith("#")) { - let k = b(reverseString(firststr), reverseString(x)); - maxl = b(firststr, x); - if (firststrlen - maxl <= ml + k) { - return true - } - } - return false - }); - log("最后一条切片:" + laststr); - let ad_urls = []; - for (let i = 0; i < ss.length; i++) { - let s = ss[i]; - if (!s.startsWith("#")) { - if (b(firststr, s) < maxl) { - ad_urls.push(s); - ss.splice(i - 1, 2); - i = i - 2 - } else { - ss[i] = urljoin(m3u8_url, s) - } - } else { - ss[i] = s.replace(/URI=\"(.*)\"/, 'URI="' + urljoin(m3u8_url, "$1") + '"') - } - } - log("处理的m3u8地址:" + m3u8_url); - log("----广告地址----"); - log(ad_urls); - m3u8 = ss.join("\n"); - log("处理耗时:" + ((new Date) - .getTime() - ts) - .toString()); - return m3u8 -} -function forceOrder(lists, key, option) { - let start = Math.floor(lists.length / 2); - let end = Math.min(lists.length - 1, start + 1); - if (start >= end) { - return lists - } - let first = lists[start]; - let second = lists[end]; - if (key) { - try { - first = first[key]; - second = second[key] - } catch (e) {} - } - if (option && typeof option === "function") { - try { - first = option(first); - second = option(second) - } catch (e) {} - } - first += ""; - second += ""; - if (first.match(/(\d+)/) && second.match(/(\d+)/)) { - let num1 = Number(first.match(/(\d+)/)[1]); - let num2 = Number(second.match(/(\d+)/)[1]); - if (num1 > num2) { - lists.reverse() - } - } - return lists -} -let VODS = []; -let VOD = {}; -let TABS = []; -let LISTS = []; -globalThis.encodeUrl = urlencode; -globalThis.urlencode = urlencode; - -function urljoin(fromPath, nowPath) { - fromPath = fromPath || ""; - nowPath = nowPath || ""; - return joinUrl(fromPath, nowPath) -} -var urljoin2 = urljoin; -const defaultParser = { - pdfh: pdfh, - pdfa: pdfa, - pd: pd -}; - -function pdfh2(html, parse) { - let html2 = html; - try { - if (typeof html !== "string") { - html2 = html.rr(html.ele) - .toString() - } - } catch (e) { - print("html对象转文本发生了错误:" + e.message) - } - let result = defaultParser.pdfh(html2, parse); - let option = parse.includes("&&") ? parse.split("&&") - .slice(-1)[0] : parse.split(" ") - .slice(-1)[0]; - if (/style/.test(option.toLowerCase()) && /url\(/.test(result)) { - try { - result = result.match(/url\((.*?)\)/)[1]; - result = result.replace(/^['|"](.*)['|"]$/, "$1") - } catch (e) {} - } - return result -} -function pdfa2(html, parse) { - let html2 = html; - try { - if (typeof html !== "string") { - html2 = html.rr(html.ele) - .toString() - } - } catch (e) { - print("html对象转文本发生了错误:" + e.message) - } - return defaultParser.pdfa(html2, parse) -} -function pd2(html, parse, uri) { - let ret = pdfh2(html, parse); - if (typeof uri === "undefined" || !uri) { - uri = "" - } - if (DOM_CHECK_ATTR.test(parse) && !SPECIAL_URL.test(ret)) { - if (/http/.test(ret)) { - ret = ret.slice(ret.indexOf("http")) - } else { - ret = urljoin(MY_URL, ret) - } - } - return ret -} -const parseTags = { - jsp: { - pdfh: pdfh2, - pdfa: pdfa2, - pd: pd2 - }, - json: { - pdfh(html, parse) { - if (!parse || !parse.trim()) { - return "" - } - if (typeof html === "string") { - html = JSON.parse(html) - } - parse = parse.trim(); - if (!parse.startsWith("$.")) { - parse = "$." + parse - } - parse = parse.split("||"); - for (let ps of parse) { - let ret = cheerio.jp(ps, html); - if (Array.isArray(ret)) { - ret = ret[0] || "" - } else { - ret = ret || "" - } - if (ret && typeof ret !== "string") { - ret = ret.toString() - } - if (ret) { - return ret - } - } - return "" - }, pdfa(html, parse) { - if (!parse || !parse.trim()) { - return "" - } - if (typeof html === "string") { - html = JSON.parse(html) - } - parse = parse.trim(); - if (!parse.startsWith("$.")) { - parse = "$." + parse - } - let ret = cheerio.jp(parse, html); - if (Array.isArray(ret) && Array.isArray(ret[0]) && ret.length === 1) { - return ret[0] || [] - } - return ret || [] - }, pd(html, parse) { - let ret = parseTags.json.pdfh(html, parse); - if (ret) { - return urljoin(MY_URL, ret) - } - return ret - } - }, - jq: { - pdfh(html, parse) { - if (!html || !parse || !parse.trim()) { - return "" - } - parse = parse.trim(); - let result = defaultParser.pdfh(html, parse); - return result - }, pdfa(html, parse) { - if (!html || !parse || !parse.trim()) { - return [] - } - parse = parse.trim(); - let result = defaultParser.pdfa(html, parse); - print(`pdfa解析${parse}=>${result.length}`); - return result - }, pd(html, parse, base_url) { - if (!html || !parse || !parse.trim()) { - return "" - } - parse = parse.trim(); - base_url = base_url || MY_URL; - return defaultParser.pd(html, parse, base_url) - } - }, - getParse(p0) { - if (p0.startsWith("jsp:")) { - return this.jsp - } else if (p0.startsWith("json:")) { - return this.json - } else if (p0.startsWith("jq:")) { - return this.jq - } else { - return this.jq - } - } -}; -const stringify = JSON.stringify; -const jsp = parseTags.jsp; -const jq = parseTags.jq; - -function readFile(filePath) { - filePath = filePath || "./uri.min.js"; - var fd = os.open(filePath); - var buffer = new ArrayBuffer(1024); - var len = os.read(fd, buffer, 0, 1024); - console.log(len); - let text = String.fromCharCode.apply(null, new Uint8Array(buffer)); - console.log(text); - return text -} -function dealJson(html) { - try { - html = html.trim(); - if (!(html.startsWith("{") && html.endsWith("}") || html.startsWith("[") && html.endsWith("]"))) { - html = "{" + html.match(/.*?\{(.*)\}/m)[1] + "}" - } - } catch (e) {} - try { - html = JSON.parse(html) - } catch (e) {} - return html -} -var OcrApi = { - api: OCR_API, - classification: function(img) { - let code = ""; - try { - log("通过drpy_ocr验证码接口过验证..."); - let html = request(OCR_API, { - data: { - img: img - }, - headers: { - "User-Agent": PC_UA - }, - method: "POST" - }, true); - code = html || "" - } catch (e) { - log(`OCR识别验证码发生错误:${e.message}`) - } - return code - } -}; - -function verifyCode(url) { - let cnt = 0; - let host = getHome(url); - let cookie = ""; - while (cnt < OCR_RETRY) { - try { - let yzm_url = `${host}/index.php/verify/index.html`; - console.log(`验证码链接:${yzm_url}`); - let hhtml = request(yzm_url, { - withHeaders: true, - toBase64: true - }, true); - let json = JSON.parse(hhtml); - if (!cookie) { - let setCk = Object.keys(json) - .find(it => it.toLowerCase() === "set-cookie"); - cookie = setCk ? json[setCk].split(";")[0] : "" - } - console.log("cookie:" + cookie); - let img = json.body; - let code = OcrApi.classification(img); - console.log(`第${cnt+1}次验证码识别结果:${code}`); - let submit_url = `${host}/index.php/ajax/verify_check?type=search&verify=${code}`; - console.log(submit_url); - let html = request(submit_url, { - headers: { - Cookie: cookie, - "User-Agent": MOBILE_UA - }, - method: "POST" - }); - html = JSON.parse(html); - if (html.msg === "ok") { - console.log(`第${cnt+1}次验证码提交成功`); - return cookie - } else if (html.msg !== "ok" && cnt + 1 >= OCR_RETRY) { - cookie = "" - } - } catch (e) { - console.log(`第${cnt+1}次验证码提交失败:${e.message}`); - if (cnt + 1 >= OCR_RETRY) { - cookie = "" - } - } - cnt += 1 - } - return cookie -} -function setItem(k, v) { - local.set(RKEY, k, v); - console.log(`规则${RKEY}设置${k} => ${v}`) -} -function getItem(k, v) { - return local.get(RKEY, k) || v -} -function clearItem(k) { - local.delete(RKEY, k) -} -function getHome(url) { - if (!url) { - return "" - } - let tmp = url.split("//"); - url = tmp[0] + "//" + tmp[1].split("/")[0]; - try { - url = decodeURIComponent(url) - } catch (e) {} - return url -} -function buildUrl(url, obj) { - obj = obj || {}; - if (url.indexOf("?") < 0) { - url += "?" - } - let param_list = []; - let keys = Object.keys(obj); - keys.forEach(it => { - param_list.push(it + "=" + obj[it]) - }); - let prs = param_list.join("&"); - if (keys.length > 0 && !url.endsWith("?")) { - url += "&" - } - url += prs; - return url -} -function require(url) { - eval(request(url)) -} -function request(url, obj, ocr_flag) { - ocr_flag = ocr_flag || false; - if (typeof obj === "undefined" || !obj || obj === {}) { - if (!fetch_params || !fetch_params.headers) { - let headers = { - "User-Agent": MOBILE_UA - }; - if (rule.headers) { - Object.assign(headers, rule.headers) - } - if (!fetch_params) { - fetch_params = {} - } - fetch_params.headers = headers - } - if (!fetch_params.headers.Referer) { - fetch_params.headers.Referer = getHome(url) - } - obj = fetch_params - } else { - let headers = obj.headers || {}; - let keys = Object.keys(headers) - .map(it => it.toLowerCase()); - if (!keys.includes("user-agent")) { - headers["User-Agent"] = MOBILE_UA - } - if (!keys.includes("referer")) { - headers["Referer"] = getHome(url) - } - obj.headers = headers - } - if (rule.encoding && rule.encoding !== "utf-8" && !ocr_flag) { - if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { - obj.headers["Content-Type"] = "text/html; charset=" + rule.encoding - } - } - if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "string") { - if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { - obj.headers["Content-Type"] = "application/x-www-form-urlencoded; charset=" + rule.encoding - } - } else if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "object") { - obj.data = obj.body; - delete obj.body - } - if (!url) { - return obj.withHeaders ? "{}" : "" - } - if (obj.toBase64) { - obj.buffer = 2; - delete obj.toBase64 - } - if (obj.redirect === false) { - obj.redirect = 0 - } - console.log(JSON.stringify(obj.headers)); - console.log("request:" + url + `|method:${obj.method||"GET"}|body:${obj.body||""}`); - let res = req(url, obj); - let html = res.content || ""; - if (obj.withHeaders) { - let htmlWithHeaders = res.headers; - htmlWithHeaders.body = html; - return JSON.stringify(htmlWithHeaders) - } else { - return html - } -} -function post(url, obj) { - obj.method = "POST"; - return request(url, obj) -} -fetch = request; -print = function(data) { - data = data || ""; - if (typeof data == "object" && Object.keys(data) - .length > 0) { - try { - data = JSON.stringify(data); - console.log(data) - } catch (e) { - console.log(typeof data + ":" + data.length); - return - } - } else if (typeof data == "object" && Object.keys(data) - .length < 1) { - console.log("null object") - } else { - console.log(data) - } -}; -log = print; - -function checkHtml(html, url, obj) { - if (/\?btwaf=/.test(html)) { - let btwaf = html.match(/btwaf(.*?)"/)[1]; - url = url.split("#")[0] + "?btwaf" + btwaf; - print("宝塔验证访问链接:" + url); - html = request(url, obj) - } - return html -} -function getCode(url, obj) { - let html = request(url, obj); - html = checkHtml(html, url, obj); - return html -} -function getHtml(url) { - let obj = {}; - if (rule.headers) { - obj.headers = rule.headers - } - let cookie = getItem(RULE_CK, ""); - if (cookie) { - if (obj.headers && !Object.keys(obj.headers) - .map(it => it.toLowerCase()) - .includes("cookie")) { - log("历史无cookie,新增过验证后的cookie"); - obj.headers["Cookie"] = cookie - } else if (obj.headers && obj.headers.cookie && obj.headers.cookie !== cookie) { - obj.headers["Cookie"] = cookie; - log("历史有小写过期的cookie,更新过验证后的cookie") - } else if (obj.headers && obj.headers.Cookie && obj.headers.Cookie !== cookie) { - obj.headers["Cookie"] = cookie; - log("历史有大写过期的cookie,更新过验证后的cookie") - } else if (!obj.headers) { - obj.headers = { - Cookie: cookie - }; - log("历史无headers,更新过验证后的含cookie的headers") - } - } - let html = getCode(url, obj); - return html -} -function homeParse(homeObj) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let classes = []; - if (homeObj.class_name && homeObj.class_url) { - let names = homeObj.class_name.split("&"); - let urls = homeObj.class_url.split("&"); - let cnt = Math.min(names.length, urls.length); - for (let i = 0; i < cnt; i++) { - classes.push({ - type_id: urls[i], - type_name: names[i] - }) - } - } - if (homeObj.class_parse) { - if (homeObj.class_parse.startsWith("js:")) { - var input = homeObj.MY_URL; - try { - eval(homeObj.class_parse.replace("js:", "")); - if (Array.isArray(input)) { - classes = input - } - } catch (e) { - log("通过js动态获取分类发生了错误:" + e.message) - } - } else { - let p = homeObj.class_parse.split(";"); - let p0 = p[0]; - let _ps = parseTags.getParse(p0); - let is_json = p0.startsWith("json:"); - _pdfa = _ps.pdfa; - _pdfh = _ps.pdfh; - _pd = _ps.pd; - MY_URL = rule.url; - if (is_json) { - try { - let cms_cate_url = homeObj.MY_URL.replace("ac=detail", "ac=list"); - let html = getHtml(cms_cate_url); - if (html) { - if (cms_cate_url === homeObj.MY_URL) { - homeHtmlCache = html - } - let list = _pdfa(html, p0.replace("json:", "")); - if (list && list.length > 0) { - classes = list - } - } - } catch (e) { - console.log(e.message) - } - } else if (p.length >= 3 && !is_json) { - try { - let html = getHtml(homeObj.MY_URL); - if (html) { - homeHtmlCache = html; - let list = _pdfa(html, p0); - if (list && list.length > 0) { - list.forEach((it, idex) => { - try { - let name = _pdfh(it, p[1]); - if (homeObj.cate_exclude && new RegExp(homeObj.cate_exclude) - .test(name)) { - return - } - let url = _pd(it, p[2]); - if (p.length > 3 && p[3]) { - let exp = new RegExp(p[3]); - url = url.match(exp)[1] - } - classes.push({ - type_id: url.trim(), - type_name: name.trim() - }) - } catch (e) { - console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`) - } - }) - } - } - } catch (e) { - console.log(e.message) - } - } - } - } - classes = classes.filter(it => !homeObj.cate_exclude || !new RegExp(homeObj.cate_exclude) - .test(it.type_name)); - let resp = { - class: classes - }; - if (homeObj.filter) { - resp.filters = homeObj.filter - } - console.log(JSON.stringify(resp)); - return JSON.stringify(resp) -} -function getPP(p, pn, pp, ppn) { - try { - let ps = p[pn] === "*" && pp.length > ppn ? pp[ppn] : p[pn]; - return ps - } catch (e) { - return "" - } -} -function homeVodParse(homeVodObj) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let d = []; - MY_URL = homeVodObj.homeUrl; - console.log(MY_URL); - let t1 = (new Date) - .getTime(); - let p = homeVodObj.推荐; - print("p:" + p); - if (p === "*" && rule.一级) { - p = rule.一级; - homeVodObj.double = false - } - if (!p || typeof p !== "string") { - return "{}" - } - p = p.trim(); - let pp = rule.一级.split(";"); - if (p.startsWith("js:")) { - const TYPE = "home"; - var input = MY_URL; - HOST = rule.host; - eval(p.replace("js:", "")); - d = VODS - } else { - p = p.split(";"); - if (!homeVodObj.double && p.length < 5) { - return "{}" - } else if (homeVodObj.double && p.length < 6) { - return "{}" - } - let p0 = getPP(p, 0, pp, 0); - let _ps = parseTags.getParse(p0); - _pdfa = _ps.pdfa; - _pdfh = _ps.pdfh; - _pd = _ps.pd; - let is_json = p0.startsWith("json:"); - p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); - let html = homeHtmlCache || getHtml(MY_URL); - homeHtmlCache = undefined; - if (is_json) { - html = dealJson(html) - } - try { - console.log("double:" + homeVodObj.double); - if (homeVodObj.double) { - let items = _pdfa(html, p0); - let p1 = getPP(p, 1, pp, 0); - let p2 = getPP(p, 2, pp, 1); - let p3 = getPP(p, 3, pp, 2); - let p4 = getPP(p, 4, pp, 3); - let p5 = getPP(p, 5, pp, 4); - let p6 = getPP(p, 6, pp, 5); - for (let item of items) { - let items2 = _pdfa(item, p1); - for (let item2 of items2) { - try { - let title = _pdfh(item2, p2); - let img = ""; - try { - img = _pd(item2, p3) - } catch (e) {} - let desc = ""; - try { - desc = _pdfh(item2, p4) - } catch (e) {} - let links = []; - for (let _p5 of p5.split("+")) { - let link = !homeVodObj.detailUrl ? _pd(item2, _p5, MY_URL) : _pdfh(item2, _p5); - links.push(link) - } - let content; - if (p.length > 6 && p[6]) { - content = _pdfh(item2, p6) - } else { - content = "" - } - let vid = links.join("$"); - if (rule.二级 === "*") { - vid = vid + "@@" + title + "@@" + img - } - let vod = { - vod_name: title, - vod_pic: img, - vod_remarks: desc, - vod_content: content, - vod_id: vid - }; - d.push(vod) - } catch (e) { - console.log("首页列表双层定位处理发生错误:" + e.message) - } - } - } - } else { - let items = _pdfa(html, p0); - let p1 = getPP(p, 1, pp, 1); - let p2 = getPP(p, 2, pp, 2); - let p3 = getPP(p, 3, pp, 3); - let p4 = getPP(p, 4, pp, 4); - let p5 = getPP(p, 5, pp, 5); - for (let item of items) { - try { - let title = _pdfh(item, p1); - let img = ""; - try { - img = _pd(item, p2, MY_URL) - } catch (e) {} - let desc = ""; - try { - desc = _pdfh(item, p3) - } catch (e) {} - let links = []; - for (let _p5 of p4.split("+")) { - let link = !homeVodObj.detailUrl ? _pd(item, _p5, MY_URL) : _pdfh(item, _p5); - links.push(link) - } - let content; - if (p.length > 5 && p[5]) { - content = _pdfh(item, p5) - } else { - content = "" - } - let vid = links.join("$"); - if (rule.二级 === "*") { - vid = vid + "@@" + title + "@@" + img - } - let vod = { - vod_name: title, - vod_pic: img, - vod_remarks: desc, - vod_content: content, - vod_id: vid - }; - d.push(vod) - } catch (e) { - console.log("首页列表单层定位处理发生错误:" + e.message) - } - } - } - } catch (e) {} - } - let t2 = (new Date) - .getTime(); - console.log("加载首页推荐耗时:" + (t2 - t1) + "毫秒"); - if (rule.图片替换 && rule.图片替换.includes("=>")) { - let replace_from = rule.图片替换.split("=>")[0]; - let replace_to = rule.图片替换.split("=>")[1]; - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic.replace(replace_from, replace_to) - } - }) - } - if (rule.图片来源) { - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic + rule.图片来源 - } - }) - } - if (d.length > 0) { - print(d.slice(0, 2)) - } - return JSON.stringify({ - list: d - }) -} -function categoryParse(cateObj) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let p = cateObj.一级; - if (!p || typeof p !== "string") { - return "{}" - } - let d = []; - let url = cateObj.url.replaceAll("fyclass", cateObj.tid); - if (cateObj.pg === 1 && url.includes("[") && url.includes("]")) { - url = url.split("[")[1].split("]")[0] - } else if (cateObj.pg > 1 && url.includes("[") && url.includes("]")) { - url = url.split("[")[0] - } - if (rule.filter_url) { - if (!/fyfilter/.test(url)) { - if (!url.endsWith("&") && !rule.filter_url.startsWith("&")) { - url += "&" - } - url += rule.filter_url - } else { - url = url.replace("fyfilter", rule.filter_url) - } - let fl = cateObj.filter ? cateObj.extend : {}; - if (rule.filter_def && typeof rule.filter_def === "object") { - try { - if (Object.keys(rule.filter_def) - .length > 0 && rule.filter_def.hasOwnProperty(cateObj.tid)) { - let self_fl_def = rule.filter_def[cateObj.tid]; - if (self_fl_def && typeof self_fl_def === "object") { - let fl_def = JSON.parse(JSON.stringify(self_fl_def)); - fl = Object.assign(fl_def, fl) - } - } - } catch (e) { - print("合并不同分类对应的默认筛选出错:" + e.message) - } - } - let new_url; - new_url = cheerio.jinja2(url, { - fl: fl - }); - url = new_url - } - if (/fypage/.test(url)) { - if (url.includes("(") && url.includes(")")) { - let url_rep = url.match(/.*?\((.*)\)/)[1]; - let cnt_page = url_rep.replaceAll("fypage", cateObj.pg); - let cnt_pg = eval(cnt_page); - url = url.replaceAll(url_rep, cnt_pg) - .replaceAll("(", "") - .replaceAll(")", "") - } else { - url = url.replaceAll("fypage", cateObj.pg) - } - } - MY_URL = url; - console.log(MY_URL); - p = p.trim(); - const MY_CATE = cateObj.tid; - if (p.startsWith("js:")) { - var MY_FL = cateObj.extend; - const TYPE = "cate"; - var input = MY_URL; - const MY_PAGE = cateObj.pg; - var desc = ""; - eval(p.trim() - .replace("js:", "")); - d = VODS - } else { - p = p.split(";"); - if (p.length < 5) { - return "{}" - } - let _ps = parseTags.getParse(p[0]); - _pdfa = _ps.pdfa; - _pdfh = _ps.pdfh; - _pd = _ps.pd; - let is_json = p[0].startsWith("json:"); - p[0] = p[0].replace(/^(jsp:|json:|jq:)/, ""); - try { - let html = getHtml(MY_URL); - if (html) { - if (is_json) { - html = dealJson(html) - } - let list = _pdfa(html, p[0]); - list.forEach(it => { - let links = p[4].split("+") - .map(p4 => { - return !rule.detailUrl ? _pd(it, p4, MY_URL) : _pdfh(it, p4) - }); - let link = links.join("$"); - let vod_id = rule.detailUrl ? MY_CATE + "$" + link : link; - let vod_name = _pdfh(it, p[1]) - .replace(/\n|\t/g, "") - .trim(); - let vod_pic = _pd(it, p[2], MY_URL); - if (rule.二级 === "*") { - vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic - } - d.push({ - vod_id: vod_id, - vod_name: vod_name, - vod_pic: vod_pic, - vod_remarks: _pdfh(it, p[3]) - .replace(/\n|\t/g, "") - .trim() - }) - }) - } - } catch (e) { - console.log(e.message) - } - } - if (rule.图片替换 && rule.图片替换.includes("=>")) { - let replace_from = rule.图片替换.split("=>")[0]; - let replace_to = rule.图片替换.split("=>")[1]; - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic.replace(replace_from, replace_to) - } - }) - } - if (rule.图片来源) { - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic + rule.图片来源 - } - }) - } - if (d.length > 0) { - print(d.slice(0, 2)) - } - let pagecount = 0; - if (rule.pagecount && typeof rule.pagecount === "object" && rule.pagecount.hasOwnProperty(MY_CATE)) { - print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`); - pagecount = parseInt(rule.pagecount[MY_CATE]) - } - let nodata = { - list: [{ - vod_name: "无数据,防无限请求", - vod_id: "no_data", - vod_remarks: "不要点,会崩的", - vod_pic: "https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg" - }], - total: 1, - pagecount: 1, - page: 1, - limit: 1 - }; - let vod = d.length < 1 ? JSON.stringify(nodata) : JSON.stringify({ - page: parseInt(cateObj.pg), - pagecount: pagecount || 999, - limit: 20, - total: 999, - list: d - }); - return vod -} -function searchParse(searchObj) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let d = []; - if (!searchObj.searchUrl) { - return "{}" - } - let p = searchObj.搜索 === "*" && rule.一级 ? rule.一级 : searchObj.搜索; - if (!p || typeof p !== "string") { - return "{}" - } - p = p.trim(); - let pp = rule.一级.split(";"); - let url = searchObj.searchUrl.replaceAll("**", searchObj.wd); - if (searchObj.pg === 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { - url = url.split("[")[1].split("]")[0] - } else if (searchObj.pg > 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { - url = url.split("[")[0] - } - if (/fypage/.test(url)) { - if (url.includes("(") && url.includes(")")) { - let url_rep = url.match(/.*?\((.*)\)/)[1]; - let cnt_page = url_rep.replaceAll("fypage", searchObj.pg); - let cnt_pg = eval(cnt_page); - url = url.replaceAll(url_rep, cnt_pg) - .replaceAll("(", "") - .replaceAll(")", "") - } else { - url = url.replaceAll("fypage", searchObj.pg) - } - } - MY_URL = url; - console.log(MY_URL); - if (p.startsWith("js:")) { - const TYPE = "search"; - const MY_PAGE = searchObj.pg; - const KEY = searchObj.wd; - var input = MY_URL; - var detailUrl = rule.detailUrl || ""; - eval(p.trim() - .replace("js:", "")); - d = VODS - } else { - p = p.split(";"); - if (p.length < 5) { - return "{}" - } - let p0 = getPP(p, 0, pp, 0); - let _ps = parseTags.getParse(p0); - _pdfa = _ps.pdfa; - _pdfh = _ps.pdfh; - _pd = _ps.pd; - let is_json = p0.startsWith("json:"); - p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); - try { - let req_method = MY_URL.split(";") - .length > 1 ? MY_URL.split(";")[1].toLowerCase() : "get"; - let html; - if (req_method === "post") { - let rurls = MY_URL.split(";")[0].split("#"); - let rurl = rurls[0]; - let params = rurls.length > 1 ? rurls[1] : ""; - print(`post=》rurl:${rurl},params:${params}`); - let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let postData = { - body: params - }; - Object.assign(_fetch_params, postData); - html = post(rurl, _fetch_params) - } else if (req_method === "postjson") { - let rurls = MY_URL.split(";")[0].split("#"); - let rurl = rurls[0]; - let params = rurls.length > 1 ? rurls[1] : ""; - print(`postjson-》rurl:${rurl},params:${params}`); - try { - params = JSON.parse(params) - } catch (e) { - params = "{}" - } - let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let postData = { - body: params - }; - Object.assign(_fetch_params, postData); - html = post(rurl, _fetch_params) - } else { - html = getHtml(MY_URL) - } - if (html) { - if (/系统安全验证|输入验证码/.test(html)) { - let cookie = verifyCode(MY_URL); - if (cookie) { - console.log(`本次成功过验证,cookie:${cookie}`); - setItem(RULE_CK, cookie) - } else { - console.log(`本次自动过搜索验证失败,cookie:${cookie}`) - } - html = getHtml(MY_URL) - } - if (!html.includes(searchObj.wd)) { - console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码"); - console.log(html) - } - if (is_json) { - html = dealJson(html) - } - let list = _pdfa(html, p0); - let p1 = getPP(p, 1, pp, 1); - let p2 = getPP(p, 2, pp, 2); - let p3 = getPP(p, 3, pp, 3); - let p4 = getPP(p, 4, pp, 4); - let p5 = getPP(p, 5, pp, 5); - list.forEach(it => { - let links = p4.split("+") - .map(_p4 => { - return !rule.detailUrl ? _pd(it, _p4, MY_URL) : _pdfh(it, _p4) - }); - let link = links.join("$"); - let content; - if (p.length > 5 && p[5]) { - content = _pdfh(it, p5) - } else { - content = "" - } - let vod_id = link; - let vod_name = _pdfh(it, p1) - .replace(/\n|\t/g, "") - .trim(); - let vod_pic = _pd(it, p2, MY_URL); - if (rule.二级 === "*") { - vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic - } - let ob = { - vod_id: vod_id, - vod_name: vod_name, - vod_pic: vod_pic, - vod_remarks: _pdfh(it, p3) - .replace(/\n|\t/g, "") - .trim(), - vod_content: content.replace(/\n|\t/g, "") - .trim() - }; - d.push(ob) - }) - } - } catch (e) { - print("搜索发生错误:" + e.message); - return "{}" - } - } - if (rule.图片替换 && rule.图片替换.includes("=>")) { - let replace_from = rule.图片替换.split("=>")[0]; - let replace_to = rule.图片替换.split("=>")[1]; - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic.replace(replace_from, replace_to) - } - }) - } - if (rule.图片来源) { - d.forEach(it => { - if (it.vod_pic && it.vod_pic.startsWith("http")) { - it.vod_pic = it.vod_pic + rule.图片来源 - } - }) - } - return JSON.stringify({ - page: parseInt(searchObj.pg), - pagecount: 10, - limit: 20, - total: 100, - list: d - }) -} -function detailParse(detailObj) { - let t1 = (new Date) - .getTime(); - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - let orId = detailObj.orId; - let vod_name = "片名"; - let vod_pic = ""; - let vod_id = orId; - if (rule.二级 === "*") { - let extra = orId.split("@@"); - vod_name = extra.length > 1 ? extra[1] : vod_name; - vod_pic = extra.length > 2 ? extra[2] : vod_pic - } - let vod = { - vod_id: vod_id, - vod_name: vod_name, - vod_pic: vod_pic, - type_name: "类型", - vod_year: "年份", - vod_area: "地区", - vod_remarks: "更新信息", - vod_actor: "主演", - vod_director: "导演", - vod_content: "简介" - }; - let p = detailObj.二级; - let url = detailObj.url; - let detailUrl = detailObj.detailUrl; - let fyclass = detailObj.fyclass; - let tab_exclude = detailObj.tab_exclude; - let html = detailObj.html || ""; - MY_URL = url; - if (detailObj.二级访问前) { - try { - print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`); - eval(detailObj.二级访问前.trim() - .replace("js:", "")) - } catch (e) { - print(`二级访问前执行代码出现错误:${e.message}`) - } - } - if (p === "*") { - vod.vod_play_from = "道长在线"; - vod.vod_remarks = detailUrl; - vod.vod_actor = "没有二级,只有一级链接直接嗅探播放"; - vod.vod_content = MY_URL; - vod.vod_play_url = "嗅探播放$" + MY_URL.split("@@")[0] - } else if (typeof p === "string" && p.trim() - .startsWith("js:")) { - const TYPE = "detail"; - var input = MY_URL; - var play_url = ""; - eval(p.trim() - .replace("js:", "")); - vod = VOD; - console.log(JSON.stringify(vod)) - } else if (p && typeof p === "object") { - let tt1 = (new Date) - .getTime(); - if (!html) { - html = getHtml(MY_URL) - } - print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`); - let _ps; - if (p.is_json) { - print("二级是json"); - _ps = parseTags.json; - html = dealJson(html) - } else if (p.is_jsp) { - print("二级是jsp"); - _ps = parseTags.jsp - } else if (p.is_jq) { - print("二级是jq"); - _ps = parseTags.jq - } else { - print("二级默认jq"); - _ps = parseTags.jq - } - let tt2 = (new Date) - .getTime(); - print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`); - _pdfa = _ps.pdfa; - _pdfh = _ps.pdfh; - _pd = _ps.pd; - if (p.title) { - let p1 = p.title.split(";"); - vod.vod_name = _pdfh(html, p1[0]) - .replace(/\n|\t/g, "") - .trim(); - let type_name = p1.length > 1 ? _pdfh(html, p1[1]) - .replace(/\n|\t/g, "") - .replace(/ /g, "") - .trim() : ""; - vod.type_name = type_name || vod.type_name - } - if (p.desc) { - try { - let p1 = p.desc.split(";"); - vod.vod_remarks = _pdfh(html, p1[0]) - .replace(/\n|\t/g, "") - .trim(); - vod.vod_year = p1.length > 1 ? _pdfh(html, p1[1]) - .replace(/\n|\t/g, "") - .trim() : ""; - vod.vod_area = p1.length > 2 ? _pdfh(html, p1[2]) - .replace(/\n|\t/g, "") - .trim() : ""; - vod.vod_actor = p1.length > 3 ? _pdfh(html, p1[3]) - .replace(/\n|\t/g, "") - .trim() : ""; - vod.vod_director = p1.length > 4 ? _pdfh(html, p1[4]) - .replace(/\n|\t/g, "") - .trim() : "" - } catch (e) {} - } - if (p.content) { - try { - let p1 = p.content.split(";"); - vod.vod_content = _pdfh(html, p1[0]) - .replace(/\n|\t/g, "") - .trim() - } catch (e) {} - } - if (p.img) { - try { - let p1 = p.img.split(";"); - vod.vod_pic = _pd(html, p1[0], MY_URL) - } catch (e) {} - } - let vod_play_from = "$$$"; - let playFrom = []; - if (p.重定向 && p.重定向.startsWith("js:")) { - print("开始执行重定向代码:" + p.重定向); - html = eval(p.重定向.replace("js:", "")) - } - if (p.tabs) { - if (p.tabs.startsWith("js:")) { - print("开始执行tabs代码:" + p.tabs); - var input = MY_URL; - eval(p.tabs.replace("js:", "")); - playFrom = TABS - } else { - let p_tab = p.tabs.split(";")[0]; - let vHeader = _pdfa(html, p_tab); - console.log(vHeader.length); - let tab_text = p.tab_text || "body&&Text"; - let new_map = {}; - for (let v of vHeader) { - let v_title = _pdfh(v, tab_text) - .trim(); - if (!v_title) { - v_title = "线路空" - } - console.log(v_title); - if (tab_exclude && new RegExp(tab_exclude) - .test(v_title)) { - continue - } - if (!new_map.hasOwnProperty(v_title)) { - new_map[v_title] = 1 - } else { - new_map[v_title] += 1 - } - if (new_map[v_title] > 1) { - v_title += Number(new_map[v_title] - 1) - } - playFrom.push(v_title) - } - } - console.log(JSON.stringify(playFrom)) - } else { - playFrom = ["道长在线"] - } - vod.vod_play_from = playFrom.join(vod_play_from); - let vod_play_url = "$$$"; - let vod_tab_list = []; - if (p.lists) { - if (p.lists.startsWith("js:")) { - print("开始执行lists代码:" + p.lists); - try { - var input = MY_URL; - var play_url = ""; - eval(p.lists.replace("js:", "")); - for (let i in LISTS) { - if (LISTS.hasOwnProperty(i)) { - try { - LISTS[i] = LISTS[i].map(it => it.split("$") - .slice(0, 2) - .join("$")) - } catch (e) { - print("格式化LISTS发生错误:" + e.message) - } - } - } - vod_play_url = LISTS.map(it => it.join("#")) - .join(vod_play_url) - } catch (e) { - print("js执行lists: 发生错误:" + e.message) - } - } else { - let list_text = p.list_text || "body&&Text"; - let list_url = p.list_url || "a&&href"; - let is_tab_js = p.tabs.trim() - .startsWith("js:"); - for (let i = 0; i < playFrom.length; i++) { - let tab_name = playFrom[i]; - let tab_ext = p.tabs.split(";") - .length > 1 && !is_tab_js ? p.tabs.split(";")[1] : ""; - let p1 = p.lists.replaceAll("#idv", tab_name) - .replaceAll("#id", i); - tab_ext = tab_ext.replaceAll("#idv", tab_name) - .replaceAll("#id", i); - let tabName = tab_ext ? _pdfh(html, tab_ext) : tab_name; - console.log(tabName); - let new_vod_list = []; - let tt1 = (new Date) - .getTime(); - if (typeof pdfl === "function") { - new_vod_list = pdfl(html, p1, list_text, list_url, MY_URL) - } else { - let vodList = []; - try { - vodList = _pdfa(html, p1); - console.log("len(vodList):" + vodList.length) - } catch (e) {} - for (let i = 0; i < vodList.length; i++) { - let it = vodList[i]; - new_vod_list.push(_pdfh(it, list_text) - .trim() + "$" + _pd(it, list_url, MY_URL)) - } - } - if (new_vod_list.length > 0) { - new_vod_list = forceOrder(new_vod_list, "", x => x.split("$")[0]); - console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`) - } - let vlist = new_vod_list.join("#"); - vod_tab_list.push(vlist) - } - vod_play_url = vod_tab_list.join(vod_play_url) - } - } - vod.vod_play_url = vod_play_url - } - if (rule.图片替换 && rule.图片替换.includes("=>")) { - let replace_from = rule.图片替换.split("=>")[0]; - let replace_to = rule.图片替换.split("=>")[1]; - vod.vod_pic = vod.vod_pic.replace(replace_from, replace_to) - } - if (rule.图片来源 && vod.vod_pic && vod.vod_pic.startsWith("http")) { - vod.vod_pic = vod.vod_pic + rule.图片来源 - } - if (!vod.vod_id || vod_id.includes("$") && vod.vod_id !== vod_id) { - vod.vod_id = vod_id - } - let t2 = (new Date) - .getTime(); - console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`); - vod = vodDeal(vod); - return JSON.stringify({ - list: [vod] - }) -} -function get_tab_index(vod) { - let obj = {}; - vod.vod_play_from.split("$$$") - .forEach((it, index) => { - obj[it] = index - }); - return obj -} -function vodDeal(vod) { - let vod_play_from = vod.vod_play_from.split("$$$"); - let vod_play_url = vod.vod_play_url.split("$$$"); - let tab_removed_list = vod_play_from; - let tab_ordered_list = vod_play_from; - let tab_renamed_list = vod_play_from; - let tab_list = vod_play_from; - let play_ordered_list = vod_play_url; - if (rule.tab_remove && rule.tab_remove.length > 0 || rule.tab_order && rule.tab_order.length > 0) { - let tab_index_dict = get_tab_index(vod); - if (rule.tab_remove && rule.tab_remove.length > 0) { - tab_removed_list = vod_play_from.filter(it => !rule.tab_remove.includes(it)); - tab_list = tab_removed_list - } - if (rule.tab_order && rule.tab_order.length > 0) { - let tab_order = rule.tab_order; - tab_ordered_list = tab_removed_list.sort((a, b) => { - return (tab_order.indexOf(a) === -1 ? 9999 : tab_order.indexOf(a)) - (tab_order.indexOf(b) === -1 ? 9999 : tab_order.indexOf(b)) - }); - tab_list = tab_ordered_list - } - play_ordered_list = tab_list.map(it => vod_play_url[tab_index_dict[it]]) - } - if (rule.tab_rename && typeof rule.tab_rename === "object" & Object.keys(rule.tab_rename) - .length > 0) { - tab_renamed_list = tab_list.map(it => rule.tab_rename[it] || it); - tab_list = tab_renamed_list - } - vod.vod_play_from = tab_list.join("$$$"); - vod.vod_play_url = play_ordered_list.join("$$$"); - return vod -} -function tellIsJx(url) { - try { - let is_vip = !/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0]) && 是否正版(url); - return is_vip ? 1 : 0 - } catch (e) { - return 1 - } -} -function playParse(playObj) { - fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); - MY_URL = playObj.url; - var MY_FLAG = playObj.flag; - if (!/http/.test(MY_URL)) { - try { - MY_URL = base64Decode(MY_URL) - } catch (e) {} - } - MY_URL = decodeURIComponent(MY_URL); - var input = MY_URL; - var flag = MY_FLAG; - let common_play = { - parse: 1, - url: input, - flag: flag, - jx: tellIsJx(input) - }; - let lazy_play; - if (!rule.play_parse || !rule.lazy) { - lazy_play = common_play - } else if (rule.play_parse && rule.lazy && typeof rule.lazy === "string") { - try { - let lazy_code = rule.lazy.replace("js:", "") - .trim(); - print("开始执行js免嗅=>" + lazy_code); - eval(lazy_code); - lazy_play = typeof input === "object" ? input : { - parse: 1, - jx: tellIsJx(input), - url: input - } - } catch (e) { - print("js免嗅错误:" + e.message); - lazy_play = common_play - } - } else { - lazy_play = common_play - } - if (Array.isArray(rule.play_json) && rule.play_json.length > 0) { - let web_url = lazy_play.url; - for (let pjson of rule.play_json) { - if (pjson.re && (pjson.re === "*" || web_url.match(new RegExp(pjson.re)))) { - if (pjson.json && typeof pjson.json === "object") { - let base_json = pjson.json; - lazy_play = Object.assign(lazy_play, base_json); - break - } - } - } - } else if (rule.play_json && !Array.isArray(rule.play_json)) { - let base_json = { - jx: 1, - parse: 1 - }; - lazy_play = Object.assign(lazy_play, base_json) - } else if (!rule.play_json) { - let base_json = { - jx: 0, - parse: 1 - }; - lazy_play = Object.assign(lazy_play, base_json) - } - console.log(JSON.stringify(lazy_play)); - return JSON.stringify(lazy_play) -} -function proxyParse(proxyObj) { - var input = proxyObj.params; - if (proxyObj.proxy_rule) { - log("准备执行本地代理规则:\n" + proxyObj.proxy_rule); - try { - eval(proxyObj.proxy_rule); - if (input && input !== proxyObj.params && Array.isArray(input) && input.length === 3) { - return input - } else { - return [404, "text/plain", "Not Found"] - } - } catch (e) { - return [500, "text/plain", "代理规则错误:" + e.message] - } - } else { - return [404, "text/plain", "Not Found"] - } -} -function isVideoParse(isVideoObj) { - var input = isVideoObj.url; - if (!isVideoObj.t) { - let re_matcher = new RegExp(isVideoObj.isVideo, "i"); - return re_matcher.test(input) - } else { - try { - eval(isVideoObj.isVideo); - if (typeof input === "boolean") { - return input - } else { - return false - } - } catch (e) { - log("执行嗅探规则发生错误:" + e.message); - return false - } - } -} -function init(ext) { - console.log("init"); - try { - let muban = 模板.getMubans(); - if (typeof ext == "object") { - rule = ext - } else if (typeof ext == "string") { - if (ext.startsWith("http")) { - let js = request(ext, { - method: "GET" - }); - if (js) { - eval(js.replace("var rule", "rule")) - } - } else { - eval(ext.replace("var rule", "rule")) - } - } - if (rule.模板 && muban.hasOwnProperty(rule.模板)) { - print("继承模板:" + rule.模板); - rule = Object.assign(muban[rule.模板], rule) - } - let rule_cate_excludes = (rule.cate_exclude || "") - .split("|") - .filter(it => it.trim()); - let rule_tab_excludes = (rule.tab_exclude || "") - .split("|") - .filter(it => it.trim()); - rule_cate_excludes = rule_cate_excludes.concat(CATE_EXCLUDE.split("|") - .filter(it => it.trim())); - rule_tab_excludes = rule_tab_excludes.concat(TAB_EXCLUDE.split("|") - .filter(it => it.trim())); - rule.cate_exclude = rule_cate_excludes.join("|"); - rule.tab_exclude = rule_tab_excludes.join("|"); - rule.host = (rule.host || "") - .rstrip("/"); - HOST = rule.host; - if (rule.hostJs) { - console.log(`检测到hostJs,准备执行...`); - try { - eval(rule.hostJs); - rule.host = HOST.rstrip("/") - } catch (e) { - console.log(`执行${rule.hostJs}获取host发生错误:` + e.message) - } - } - rule.url = rule.url || ""; - rule.double = rule.double || false; - rule.homeUrl = rule.homeUrl || ""; - rule.detailUrl = rule.detailUrl || ""; - rule.searchUrl = rule.searchUrl || ""; - rule.homeUrl = rule.host && rule.homeUrl ? urljoin(rule.host, rule.homeUrl) : rule.homeUrl || rule.host; - rule.homeUrl = cheerio.jinja2(rule.homeUrl, { - rule: rule - }); - rule.detailUrl = rule.host && rule.detailUrl ? urljoin(rule.host, rule.detailUrl) : rule.detailUrl; - rule.二级访问前 = rule.二级访问前 || ""; - if (rule.url.includes("[") && rule.url.includes("]")) { - let u1 = rule.url.split("[")[0]; - let u2 = rule.url.split("[")[1].split("]")[0]; - rule.url = rule.host && rule.url ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.url - } else { - rule.url = rule.host && rule.url ? urljoin(rule.host, rule.url) : rule.url - } - if (rule.searchUrl.includes("[") && rule.searchUrl.includes("]") && !rule.searchUrl.includes("#")) { - let u1 = rule.searchUrl.split("[")[0]; - let u2 = rule.searchUrl.split("[")[1].split("]")[0]; - rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.searchUrl - } else { - rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, rule.searchUrl) : rule.searchUrl - } - rule.timeout = rule.timeout || 5e3; - rule.encoding = rule.编码 || rule.encoding || "utf-8"; - rule.search_encoding = rule.搜索编码 || rule.search_encoding || ""; - rule.图片来源 = rule.图片来源 || ""; - rule.图片替换 = rule.图片替换 || ""; - rule.play_json = rule.hasOwnProperty("play_json") ? rule.play_json : []; - rule.pagecount = rule.hasOwnProperty("pagecount") ? rule.pagecount : {}; - rule.proxy_rule = rule.hasOwnProperty("proxy_rule") ? rule.proxy_rule : ""; - rule.sniffer = rule.hasOwnProperty("sniffer") ? rule.sniffer : ""; - rule.sniffer = !! (rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false"); - rule.isVideo = rule.hasOwnProperty("isVideo") ? rule.isVideo : ""; - rule.tab_remove = rule.hasOwnProperty("tab_remove") ? rule.tab_remove : []; - rule.tab_order = rule.hasOwnProperty("tab_order") ? rule.tab_order : []; - rule.tab_rename = rule.hasOwnProperty("tab_rename") ? rule.tab_rename : {}; - if (rule.headers && typeof rule.headers === "object") { - try { - let header_keys = Object.keys(rule.headers); - for (let k of header_keys) { - if (k.toLowerCase() === "user-agent") { - let v = rule.headers[k]; - console.log(v); - if (["MOBILE_UA", "PC_UA", "UC_UA", "IOS_UA", "UA"].includes(v)) { - rule.headers[k] = eval(v) - } - } else if (k.toLowerCase() === "cookie") { - let v = rule.headers[k]; - if (v && v.startsWith("http")) { - console.log(v); - try { - v = fetch(v); - console.log(v); - rule.headers[k] = v - } catch (e) { - console.log(`从${v}获取cookie发生错误:` + e.message) - } - } - } - } - } catch (e) { - console.log("处理headers发生错误:" + e.message) - } - } - rule_fetch_params = { - headers: rule.headers || false, - timeout: rule.timeout, - encoding: rule.encoding - }; - oheaders = rule.headers || {}; - RKEY = typeof key !== "undefined" && key ? key : "drpy_" + (rule.title || rule.host); - pre(); - init_test() - } catch (e) { - console.log("init_test发生错误:" + e.message) - } -} -let homeHtmlCache = undefined; - -function home(filter) { - console.log("home"); - let homeObj = { - filter: rule.filter || false, - MY_URL: rule.homeUrl, - class_name: rule.class_name || "", - class_url: rule.class_url || "", - class_parse: rule.class_parse || "", - cate_exclude: rule.cate_exclude - }; - return homeParse(homeObj) -} -function homeVod(params) { - console.log("homeVod"); - let homeVodObj = { - "推荐": rule.推荐, - double: rule.double, - homeUrl: rule.homeUrl, - detailUrl: rule.detailUrl - }; - return homeVodParse(homeVodObj) -} -function category(tid, pg, filter, extend) { - let cateObj = { - url: rule.url, - "一级": rule.一级, - tid: tid, - pg: parseInt(pg), - filter: filter, - extend: extend - }; - return categoryParse(cateObj) -} -function detail(vod_url) { - let orId = vod_url; - let fyclass = ""; - log("orId:" + orId); - if (vod_url.indexOf("$") > -1) { - let tmp = vod_url.split("$"); - fyclass = tmp[0]; - vod_url = tmp[1] - } - let detailUrl = vod_url.split("@@")[0]; - let url; - if (!detailUrl.startsWith("http") && !detailUrl.includes("/")) { - url = rule.detailUrl.replaceAll("fyid", detailUrl) - .replaceAll("fyclass", fyclass) - } else if (detailUrl.includes("/")) { - url = urljoin(rule.homeUrl, detailUrl) - } else { - url = detailUrl - } - let detailObj = { - orId: orId, - url: url, - "二级": rule.二级, - "二级访问前": rule.二级访问前, - detailUrl: detailUrl, - fyclass: fyclass, - tab_exclude: rule.tab_exclude - }; - return detailParse(detailObj) -} -function play(flag, id, flags) { - let playObj = { - url: id, - flag: flag, - flags: flags - }; - return playParse(playObj) -} -function search(wd, quick, pg) { - if (rule.search_encoding) { - if (rule.search_encoding.toLowerCase() !== "utf-8") { - wd = encodeStr(wd, rule.search_encoding) - } - } else if (rule.encoding && rule.encoding.toLowerCase() !== "utf-8") { - wd = encodeStr(wd, rule.encoding) - } - let searchObj = { - searchUrl: rule.searchUrl, - "搜索": rule.搜索, - wd: wd, - pg: pg || 1, - quick: quick - }; - return searchParse(searchObj) -} -function proxy(params) { - if (rule.proxy_rule && rule.proxy_rule.trim()) { - rule.proxy_rule = rule.proxy_rule.trim() - } - if (rule.proxy_rule.startsWith("js:")) { - rule.proxy_rule = rule.proxy_rule.replace("js:", "") - } - let proxyObj = { - params: params, - proxy_rule: rule.proxy_rule - }; - return proxyParse(proxyObj) -} -function sniffer() { - let enable_sniffer = rule.sniffer || false; - if (enable_sniffer) { - log("开始执行辅助嗅探代理规则...") - } - return enable_sniffer -} -function isVideo(url) { - let t = 0; - let is_video; - if (rule.isVideo && rule.isVideo.trim()) { - is_video = rule.isVideo.trim() - } - if (is_video.startsWith("js:")) { - is_video = is_video.replace("js:", ""); - t = 1 - } - let isVideoObj = { - url: url, - isVideo: is_video, - t: t - }; - let result = isVideoParse(isVideoObj); - if (result) { - log("成功执行辅助嗅探规则并检测到视频地址:\n" + rule.isVideo) - } - return result -} -function DRPY() { - return { - init: init, - home: home, - homeVod: homeVod, - category: category, - detail: detail, - play: play, - search: search, - proxy: proxy, - sniffer: sniffer, - isVideo: isVideo - } -} -export -default { - init: init, - home: home, - homeVod: homeVod, - category: category, - detail: detail, - play: play, - search: search, - proxy: proxy, - sniffer: sniffer, - isVideo: isVideo, - DRPY: DRPY -}; \ No newline at end of file +import cheerio from"assets://js/lib/cheerio.min.js";import"assets://js/lib/crypto-js.js";import"./jsencrypt.js";import"./node-rsa.js";import"./pako.min.js";import 模板 from"./模板.js";import{gbkTool}from"./gbk.js";import"./json5.js";import"./jinja.js";const _jinja2=cheerio.jinja2;cheerio.jinja2=function(template,obj){try{return jinja.render(template,obj)}catch(e){console.log("新的jinja2库渲染失败,换回原始cheerio:"+e.message);return _jinja2(template,obj)}};function init_test(){console.log("init_test_start");console.log("当前版本号:"+VERSION);console.log("本地代理地址:"+getProxyUrl());console.log(RKEY);console.log(JSON.stringify(rule));console.log("init_test_end")}function ocr_demo_test(){let img_base64=`iVBORw0KGgoAAAANSUhEUgAAAIAAAAAoBAMAAADEX+97AAAAG1BMVEXz+/4thQTa7N6QwIFFkyNeokKozqDB3b93sWHFR+MEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABN0lEQVRIie2TQU+DQBCFt9vScvQpxR4xrcSjJCZ67JDGXsX+AdR4B3vpsSYm/m2HXaRLmuySepR3Gdidb/btDAjRq5dT96eCMlfBuzi1QLZUoZy2yz5sOvI+9iomaPEZ6nWnEtxqIyiM1RcAy44GNDhBXUjot/VVNweV1ah68FqWRyjKIOqAcyYF6rGcmpYnHzGt3fycNoMw0d3/THFu7hFSJ/8OXO6iTM8/KSg09obAzIHLO250LgQ0txOZSfgrV4Exdw98uGycJ0ErAeExZGhOmFHV9zHO6qVSj0MpLq7xZON56o++MjlsEgfVhbQWWME+xQX7J4V6zfi9A1Ly9rP1BvEXp+BbVJ/M77n+wfOIDVp51pZ4iBxvmj9AGrtvry6emwfKnVkW+ZRKd5ZNMvob36vXP9YPDmQki8QiCFAAAAAASUVORK5CYII=`;OcrApi.api=OCR_API;let code=OcrApi.classification(img_base64);log("测试验证码图片的ocr识别结果为:"+code)}function rsa_demo_test(){let t1=(new Date).getTime();let pkcs1_public=` +-----BEGIN RSA PUBLIC KEY----- +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +-----END RSA PUBLIC KEY----- +`.trim();let pkcs1_public_pem=` +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +`.trim();let pkcs8_public=` +-----BEGIN PUBLIC KEY----- +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +-----END PUBLIC KEY-----`.trim();let pkcs8_public_pem=` +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +`.trim();let pkcs1_private=` +-----BEGIN RSA PRIVATE KEY----- +MIIBOAIBAAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/nas61fIPGUUrkPenokm7 +ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQI/b6OV1z65UokQaMvSeRXt +0Yv6wiYtduQI9qpq5nzy/ytaqsbBfClNTi/HifKPKxlRouWFkc518EQI8LBxoarJ +AiEA4DaONMplV8PQNa3TKn2F+SDEvLOCjdL0kHKdN90Ti28CIQDDZnTBaHgZwZbA +hS7Bbf5yvwjWMhO6Y7l04/Qm7R+35QIgPuQuqXIoUSD080mp1N5WyRW++atksIF+ +5lGv9e6GP/MCICnj8y/rl6Pd7tXDN6zcSeqLrfdNsREKhB3dKOCXgW9JAiAFYtFS +EJNBXVRTK42SNsZ2hJ/9xLwOwnH2epT8Q43s3Q== +-----END RSA PRIVATE KEY----- +`.trim();let pkcs8_private=` +-----BEGIN PRIVATE KEY----- +MIIBUgIBADANBgkqhkiG9w0BAQEFAASCATwwggE4AgEAAkEAqyNKUPxEUaSdzrtf +dFyXnRavOOpw2D+dqzrV8g8ZRSuQ96eiSbtkcLCsMpbEPcWNMWD6UWVGSjBHke3v +YJkTSwIDAQABAj9vo5XXPrlSiRBoy9J5Fe3Ri/rCJi125Aj2qmrmfPL/K1qqxsF8 +KU1OL8eJ8o8rGVGi5YWRznXwRAjwsHGhqskCIQDgNo40ymVXw9A1rdMqfYX5IMS8 +s4KN0vSQcp033ROLbwIhAMNmdMFoeBnBlsCFLsFt/nK/CNYyE7pjuXTj9CbtH7fl +AiA+5C6pcihRIPTzSanU3lbJFb75q2SwgX7mUa/17oY/8wIgKePzL+uXo93u1cM3 +rNxJ6out902xEQqEHd0o4JeBb0kCIAVi0VIQk0FdVFMrjZI2xnaEn/3EvA7CcfZ6 +lPxDjezd +-----END PRIVATE KEY----- +`.trim();let data=` +NodeRsa +这是node-rsa 现在修改集成在drpy里使用`.trim();let encryptedWithPublic=NODERSA.encryptRSAWithPublicKey(data,pkcs1_public,{outputEncoding:"base64",options:{environment:"browser",encryptionScheme:"pkcs1_oaep"}});console.log("公钥加密");console.log(encryptedWithPublic);let decryptedWithPrivate=NODERSA.decryptRSAWithPrivateKey(encryptedWithPublic,pkcs1_private,{options:{environment:"browser",encryptionScheme:"pkcs1_oaep"}});console.log("私钥解密");console.log(decryptedWithPrivate);let pkcs1_sha256_sign=NODERSA.sign("1",pkcs1_private,{outputEncoding:"base64",options:{environment:"browser",encryptionScheme:"pkcs1",signingScheme:"pkcs1-sha256"}});console.log("pkcs1_sha256_sign");console.log(pkcs1_sha256_sign);let pkcs1_sha256_sign_verify=NODERSA.verify("1","Oulx2QrgeipKYBtqEDqFb2s/+ndk2cGQxO4CkhU7iBM1vyNmmvqubpsmeoUuN3waGrYZLknSEdwBkfv0tUMpFQ==",pkcs1_private,{options:{environment:"browser",encryptionScheme:"pkcs1",signingScheme:"pkcs1-sha256"}});console.log("pkcs1_sha256_sign_verify");console.log(pkcs1_sha256_sign_verify);let pkcs1_oaep_sha256=NODERSA.encryptRSAWithPublicKey(data,`-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7IsT1du +SYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7Sxhdm +kte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy3zD8 +PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+HP+m +PfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEAApRb +Dd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQAB +-----END RSA PUBLIC KEY----- +`,{outputEncoding:"base64",options:{environment:"browser",encryptionScheme:{scheme:"pkcs1_oaep",hash:"sha256"}}});console.log("pkcs1_oaep_sha256");console.log(pkcs1_oaep_sha256);decryptedWithPrivate=NODERSA.decryptRSAWithPrivateKey("kSZesAAyYh2hdsQnYMdGqb6gKAzTauBKouvBzWcc4+F8RvGd0nwO6mVkUMVilPgUuNxjEauHayHiY8gI3Py45UI3+km0rSGyHrS6dHiHgCkMejXHieglYzAB0IxX3Jkm4z/66bdB/D+GFy0oct5fGCMI1UHPjEAYOsazJDa8lBFNbjiWFeb/qiZtIx3vGM7KYPAZzyRf/zPbbQ8zy9xOmRuOl5nnIxgo0Okp3KO/RIPO4GZOSBA8f2lx1UtNwwrXAMpcNavtoqHVcjJ/9lcotXYQFrn5b299pSIRf2gVm8ZJ31SK6Z8cc14nKtvgnmsgClDzIXJ1o1RcDK+knVAySg==",`-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7Is +T1duSYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7S +xhdmkte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy +3zD8PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+ +HP+mPfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEA +ApRbDd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQABAoIBADZ/QGgUzInvsLp/ +zO2WbfYm39o/uhNAvk9RbLt1TIZbMFhyOpeKynHi3Swwd9xsfWX/U9zS/lGi/m31 +iKrhmaW4OA1G3vqpMcK7TBbFufYwUEaA+ZJX344euH8pIfdzyneMQ4z3Far2dS7l +QsmjuilVV2kEFadveXewiYoVOWCu00w6bN8wy2SIHlQn+kIL6HQhWz12iKKflIKu +eGRdzLHsKmBt6WbY1Wuhx7HU0fAKdlBDPxCHNlI+kybUYE9o5C2vJiaVM5wqJBgZ +8Dz8kt1QbLJ910JoLXkLVQ8uC8NJKQwFtqQjTGPnEq0+wbgz6Ij599rKZkwW/xq9 +l6KoUiECgYEA6Ah42tVdkNW047f03xVYXFH96RgorHRS36mR8Y+ONUq1fwKidovC +WjwVujt4OPf3l1W6iyn/F6cu/bsmvPrSc3HTN0B1V31QK4OjgetxQ2PSbTldH02J +NPzkt+v+cPxXpx/P5mgt7Weefw5txU547KubGrHUV5rBKFtIx9pj16MCgYEA/EF0 +o19+D24DZAPwlDS5VbEd7FStnwY4oQ5PqbuNOSbSJLMWU0AqzXcRokp8UTyCZ0X3 +ATkS1REq97kShCuR+npTR6a6DlY7sdpPI1SMLNajgB2tkx0EOzX+PfNIbHUd4jpJ +I0ZMAHv/OOtkzQHDaeTWBTrzsWm6/nTiykfduNECgYEA46AMD4HpPECqKAs66e5i +tI6q7JSKskObWVdcmQEfnSAhVOwcvPb2Ptda6UuV8S0xcwDi88rLOUUFUFzc79+P +vTkY38cYVi/VChsluDpk7ptqv0PbGu5Rf+3n4pZdEjI7OvR2W64wAAn67uIUxc7p +yiO/ET0K9rYWb6S9jXGtKMkCgYEA2kPAqoO7zZoBMQ7/oR0lp/HC1HRIbiqx4RlC +8Lgpb+QZPEwA6zPAVVvLVENi4d+bbcRp/xLlKpraNNJcJSSWAMbLPFoU7sbKjA87 +HnTPfRSTEA2d3Ibk3F7Rh8TzS3Ti0JZiJjVzGZAwu41iAMifzwaD8K6boUy80eNN +QH2CaaECgYBUsLYvC/MiYg3w+LGOONuQongoVUXjGqnw2bjVa9RK7lwRdXPUqJ51 +MpVO98IkoLvGSI/0sGNP3GKNhC+eMGjJAVwFyEuOn+JsmMv9Y9uStIVi5tIHIhKw +m7mp8il0kaftHdSxTbspG3tZ2fjIiFIZkLEOmRpd7ogWumgOajzUdA== +-----END RSA PRIVATE KEY-----`,{options:{environment:"browser",encryptionScheme:"pkcs1_oaep"}});console.log("decryptedWithPrivate");console.log(decryptedWithPrivate);(()=>{let key=new NODERSA.NodeRSA({b:1024});key.setOptions({encryptionScheme:"pkcs1"});let text=`你好drpy node-ras`;let encrypted=key.encrypt(text,"base64");console.log("encrypted: ",encrypted);const decrypted=key.decrypt(encrypted,"utf8");console.log("decrypted: ",decrypted)})();let t2=(new Date).getTime();console.log("rsa_demo_test 测试耗时:"+(t2-t1)+"毫秒")}function pre(){if(typeof rule.预处理==="string"&&rule.预处理&&rule.预处理.trim()){let code=rule.预处理.trim();console.log("执行预处理代码:"+code);if(code.startsWith("js:")){code=code.replace("js:","")}try{eval(code)}catch(e){console.log(`预处理执行失败:${e.message}`)}}}let rule={};let vercode=typeof pdfl==="function"?"drpy2.1":"drpy2";const VERSION=vercode+" 3.9.51beta2 20240711";const MOBILE_UA="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36";const PC_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36";const UA="Mozilla/5.0";const UC_UA="Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36";const IOS_UA="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1";const RULE_CK="cookie";const CATE_EXCLUDE="首页|留言|APP|下载|资讯|新闻|动态";const TAB_EXCLUDE="猜你|喜欢|下载|剧情|榜|评论";const OCR_RETRY=3;const OCR_API="https://api.nn.ci/ocr/b64/text";if(typeof MY_URL==="undefined"){var MY_URL}var HOST;var RKEY;var fetch;var print;var log;var rule_fetch_params;var fetch_params;var oheaders;var _pdfh;var _pdfa;var _pd;const DOM_CHECK_ATTR=/(url|src|href|-original|-src|-play|-url|style)$/;const SPECIAL_URL=/^(ftp|magnet|thunder|ws):/;const NOADD_INDEX=/:eq|:lt|:gt|:first|:last|^body$|^#/;const URLJOIN_ATTR=/(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)/;const SELECT_REGEX=/:eq|:lt|:gt|#/g;const SELECT_REGEX_A=/:eq|:lt|:gt/g;const $js={toString(func){let strfun=func.toString();return strfun.replace(/^\(\)(\s+)?=>(\s+)?\{/,"js:").replace(/\}$/,"")}};function window_b64(){let b64map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";let base64DecodeChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out="";while(i>2);out+=b64map.charAt((c1&3)<<4);out+="==";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+="=";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out="";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(ithis.length){return false}else{return this.indexOf(search,start)!==-1}}}if(!Array.prototype.includes){Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this==null){throw new TypeError('"this" is null or not defined')}var o=Object(this);var len=o.length>>>0;if(len===0){return false}var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);while(k>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:out+=String.fromCharCode(c);break;case 12:case 13:char2=array[i++];out+=String.fromCharCode((c&31)<<6|char2&63);break;case 14:char2=array[i++];char3=array[i++];out+=String.fromCharCode((c&15)<<12|(char2&63)<<6|(char3&63)<<0);break}}return out}function gzip(str){let arr=pako.gzip(str,{});return uint8ArrayToBase64(arr)}function ungzip(b64Data){let strData=atob(b64Data);const charData=strData.split("").map(function(x){return x.charCodeAt(0)});const binData=new Uint8Array(charData);const data=pako.inflate(binData);return Utf8ArrayToStr(data)}function encodeStr(input,encoding){encoding=encoding||"gbk";if(encoding.startsWith("gb")){const strTool=gbkTool();input=strTool.encode(input)}return input}function decodeStr(input,encoding){encoding=encoding||"gbk";if(encoding.startsWith("gb")){const strTool=gbkTool();input=strTool.decode(input)}return input}function getCryptoJS(){return'console.log("CryptoJS已装载");'}const RSA={decode:function(data,key,option){option=option||{};if(typeof JSEncrypt==="function"){let chunkSize=option.chunkSize||117;let privateKey=this.getPrivateKey(key);const decryptor=new JSEncrypt;decryptor.setPrivateKey(privateKey);let uncrypted="";uncrypted=decryptor.decryptUnicodeLong(data);return uncrypted}else{return false}},encode:function(data,key,option){option=option||{};if(typeof JSEncrypt==="function"){let chunkSize=option.chunkSize||117;let publicKey=this.getPublicKey(key);const encryptor=new JSEncrypt;encryptor.setPublicKey(publicKey);let encrypted="";encrypted=encryptor.encryptUnicodeLong(data);return encrypted}else{return false}},fixKey(key,prefix,endfix){if(!key.includes(prefix)){key=prefix+key}if(!key.includes(endfix)){key+=endfix}return key},getPrivateKey(key){let prefix="-----BEGIN RSA PRIVATE KEY-----";let endfix="-----END RSA PRIVATE KEY-----";return this.fixKey(key,prefix,endfix)},getPublicKey(key){let prefix="-----BEGIN PUBLIC KEY-----";let endfix="-----END PUBLIC KEY-----";return this.fixKey(key,prefix,endfix)}};function getProxyUrl(){if(typeof getProxy==="function"){return getProxy(true)}else{return"http://127.0.0.1:9978/proxy?do=js"}}function fixAdM3u8(m3u8_text,m3u8_url,ad_remove){if(!m3u8_text&&!m3u8_url||!m3u8_text&&m3u8_url&&!m3u8_url.startsWith("http")){return""}if(!m3u8_text){log("m3u8_url:"+m3u8_url);m3u8_text=request(m3u8_url)}log("len(m3u8_text):"+m3u8_text.length);if(!ad_remove){return m3u8_text}if(ad_remove.startsWith("reg:")){ad_remove=ad_remove.slice(4)}else if(ad_remove.startsWith("js:")){ad_remove=ad_remove.slice(3)}let m3u8_start=m3u8_text.slice(0,m3u8_text.indexOf("#EXTINF")).trim();let m3u8_body=m3u8_text.slice(m3u8_text.indexOf("#EXTINF"),m3u8_text.indexOf("#EXT-X-ENDLIST")).trim();let m3u8_end=m3u8_text.slice(m3u8_text.indexOf("#EXT-X-ENDLIST")).trim();let murls=[];let m3_body_list=m3u8_body.split("\n");let m3_len=m3_body_list.length;let i=0;while(i{new_m3u8_body.push(it)})}}new_m3u8_body=new_m3u8_body.join("\n").trim();m3u8_text=[m3u8_start,new_m3u8_body,m3u8_end].join("\n").trim();return m3u8_text}function fixAdM3u8Ai(m3u8_url,headers){let ts=(new Date).getTime();let option=headers?{headers:headers}:{};function b(s1,s2){let i=0;while(iit.startsWith("#")?it:urljoin(m3u8_url,it)).join("\n");m3u8=m3u8.replace(/\n\n/gi,"\n");let last_url=m3u8.split("\n").slice(-1)[0];if(last_url.length<5){last_url=m3u8.split("\n").slice(-2)[0]}if(last_url.includes(".m3u8")&&last_url!==m3u8_url){m3u8_url=urljoin2(m3u8_url,last_url);log("嵌套的m3u8_url:"+m3u8_url);m3u8=request(m3u8_url,option)}let s=m3u8.trim().split("\n").filter(it=>it.trim()).join("\n");let ss=s.split("\n");let firststr="";let maxl=0;let kk=0;let kkk=2;let secondstr="";for(let i=0;i1){if(maxl>b(firststr,s)){if(secondstr.length<5)secondstr=s;kkk=kkk+2}else{maxl=b(firststr,s);kkk++}}kk++;if(kk>=20)break}}if(kkk>30)firststr=secondstr;let firststrlen=firststr.length;let ml=Math.round(ss.length/2).toString().length;let maxc=0;let laststr=ss.toReversed().find(x=>{if(!x.startsWith("#")){let k=b(reverseString(firststr),reverseString(x));maxl=b(firststr,x);maxc++;if(firststrlen-maxl<=ml+k||maxc>10){return true}}return false});log("最后一条切片:"+laststr);let ad_urls=[];for(let i=0;i=end){return lists}let first=lists[start];let second=lists[end];if(key){try{first=first[key];second=second[key]}catch(e){}}if(option&&typeof option==="function"){try{first=option(first);second=option(second)}catch(e){}}first+="";second+="";if(first.match(/(\d+)/)&&second.match(/(\d+)/)){let num1=Number(first.match(/(\d+)/)[1]);let num2=Number(second.match(/(\d+)/)[1]);if(num1>num2){lists.reverse()}}return lists}let VODS=[];let VOD={};let TABS=[];let LISTS=[];function getQuery(url){try{if(url.indexOf("?")>-1){url=url.slice(url.indexOf("?")+1)}let arr=url.split("#")[0].split("&");const resObj={};arr.forEach(item=>{let arr1=item.split("=");let key=arr1[0];let value=arr1.slice(1).join("=");resObj[key]=value});return resObj}catch(err){log(`getQuery发生错误:${e.message}`);return{}}}function urljoin(fromPath,nowPath){fromPath=fromPath||"";nowPath=nowPath||"";return joinUrl(fromPath,nowPath)}var urljoin2=urljoin;const defaultParser={pdfh:pdfh,pdfa:pdfa,pd:pd};function pdfh2(html,parse){let html2=html;try{if(typeof html!=="string"){html2=html.rr(html.ele).toString()}}catch(e){print(`html对象转文本发生了错误:${e.message}`)}let result=defaultParser.pdfh(html2,parse);let option=parse.includes("&&")?parse.split("&&").slice(-1)[0]:parse.split(" ").slice(-1)[0];if(/style/.test(option.toLowerCase())&&/url\(/.test(result)){try{result=result.match(/url\((.*?)\)/)[1];result=result.replace(/^['|"](.*)['|"]$/,"$1")}catch(e){}}return result}function pdfa2(html,parse){let html2=html;try{if(typeof html!=="string"){html2=html.rr(html.ele).toString()}}catch(e){print(`html对象转文本发生了错误:${e.message}`)}return defaultParser.pdfa(html2,parse)}function pd2(html,parse,uri){let ret=pdfh2(html,parse);if(typeof uri==="undefined"||!uri){uri=""}if(DOM_CHECK_ATTR.test(parse)&&!SPECIAL_URL.test(ret)){if(/http/.test(ret)){ret=ret.slice(ret.indexOf("http"))}else{ret=urljoin(MY_URL,ret)}}return ret}const parseTags={jsp:{pdfh:pdfh2,pdfa:pdfa2,pd:pd2},json:{pdfh(html,parse){if(!parse||!parse.trim()){return""}if(typeof html==="string"){html=JSON.parse(html)}parse=parse.trim();if(!parse.startsWith("$.")){parse="$."+parse}parse=parse.split("||");for(let ps of parse){let ret=cheerio.jp(ps,html);if(Array.isArray(ret)){ret=ret[0]||""}else{ret=ret||""}if(ret&&typeof ret!=="string"){ret=ret.toString()}if(ret){return ret}}return""},pdfa(html,parse){if(!parse||!parse.trim()){return""}if(typeof html==="string"){html=JSON.parse(html)}parse=parse.trim();if(!parse.startsWith("$.")){parse="$."+parse}let ret=cheerio.jp(parse,html);if(Array.isArray(ret)&&Array.isArray(ret[0])&&ret.length===1){return ret[0]||[]}return ret||[]},pd(html,parse){let ret=parseTags.json.pdfh(html,parse);if(ret){return urljoin(MY_URL,ret)}return ret}},jq:{pdfh(html,parse){if(!html||!parse||!parse.trim()){return""}parse=parse.trim();let result=defaultParser.pdfh(html,parse);return result},pdfa(html,parse){if(!html||!parse||!parse.trim()){return[]}parse=parse.trim();let result=defaultParser.pdfa(html,parse);print(`pdfa解析${parse}=>${result.length}`);return result},pd(html,parse,base_url){if(!html||!parse||!parse.trim()){return""}parse=parse.trim();base_url=base_url||MY_URL;return defaultParser.pd(html,parse,base_url)}},getParse(p0){if(p0.startsWith("jsp:")){return this.jsp}else if(p0.startsWith("json:")){return this.json}else if(p0.startsWith("jq:")){return this.jq}else{return this.jq}}};const stringify=JSON.stringify;const jsp=parseTags.jsp;const jq=parseTags.jq;function readFile(filePath){filePath=filePath||"./uri.min.js";var fd=os.open(filePath);var buffer=new ArrayBuffer(1024);var len=os.read(fd,buffer,0,1024);console.log(len);let text=String.fromCharCode.apply(null,new Uint8Array(buffer));console.log(text);return text}function dealJson(html){try{html=html.trim();if(!(html.startsWith("{")&&html.endsWith("}")||html.startsWith("[")&&html.endsWith("]"))){html="{"+html.match(/.*?\{(.*)\}/m)[1]+"}"}}catch(e){}try{html=JSON.parse(html)}catch(e){}return html}var OcrApi={api:OCR_API,classification:function(img){let code="";try{log("通过drpy_ocr验证码接口过验证...");let html="";if(this.api.endsWith("drpy/text")){html=request(this.api,{data:{img:img},headers:{"User-Agent":PC_UA},method:"POST"},true)}else{html=post(this.api,{body:img})}code=html||""}catch(e){log(`OCR识别验证码发生错误:${e.message}`)}return code}};function verifyCode(url){let cnt=0;let host=getHome(url);let cookie="";while(cntit.toLowerCase()==="set-cookie");cookie=setCk?json[setCk].split(";")[0]:""}console.log("cookie:"+cookie);let img=json.body;let code=OcrApi.classification(img);console.log(`第${cnt+1}次验证码识别结果:${code}`);let submit_url=`${host}/index.php/ajax/verify_check?type=search&verify=${code}`;console.log(submit_url);let html=request(submit_url,{headers:{Cookie:cookie},method:"POST"});html=JSON.parse(html);if(html.msg==="ok"){console.log(`第${cnt+1}次验证码提交成功`);return cookie}else if(html.msg!=="ok"&&cnt+1>=OCR_RETRY){cookie=""}}catch(e){console.log(`第${cnt+1}次验证码提交失败:${e.message}`);if(cnt+1>=OCR_RETRY){cookie=""}}cnt+=1}return cookie}function setItem(k,v){local.set(RKEY,k,v);console.log(`规则${RKEY}设置${k} => ${v}`)}function getItem(k,v){return local.get(RKEY,k)||v}function clearItem(k){local.delete(RKEY,k)}function getHome(url){if(!url){return""}let tmp=url.split("//");url=tmp[0]+"//"+tmp[1].split("/")[0];try{url=decodeURIComponent(url)}catch(e){}return url}function buildUrl(url,obj){obj=obj||{};if(url.indexOf("?")<0){url+="?"}let param_list=[];let keys=Object.keys(obj);keys.forEach(it=>{param_list.push(it+"="+obj[it])});let prs=param_list.join("&");if(keys.length>0&&!url.endsWith("?")){url+="&"}url+=prs;return url}function $require(url){eval(request(url))}function keysToLowerCase(obj){return Object.keys(obj).reduce((result,key)=>{const newKey=key.toLowerCase();result[newKey]=obj[key];return result},{})}function request(url,obj,ocr_flag){ocr_flag=ocr_flag||false;if(typeof obj==="undefined"||!obj||obj==={}){if(!fetch_params||!fetch_params.headers){let headers={"User-Agent":MOBILE_UA};if(rule.headers){Object.assign(headers,rule.headers)}if(!fetch_params){fetch_params={}}fetch_params.headers=headers}if(!fetch_params.headers.Referer){fetch_params.headers.Referer=getHome(url)}obj=fetch_params}else{let headers=obj.headers||{};let keys=Object.keys(headers).map(it=>it.toLowerCase());if(!keys.includes("user-agent")){headers["User-Agent"]=MOBILE_UA;if(typeof fetch_params==="object"&&fetch_params&&fetch_params.headers){let fetch_headers=keysToLowerCase(fetch_params.headers);if(fetch_headers["user-agent"]){headers["User-Agent"]=fetch_headers["user-agent"]}}}if(!keys.includes("referer")){headers["Referer"]=getHome(url)}obj.headers=headers}if(rule.encoding&&rule.encoding!=="utf-8"&&!ocr_flag){if(!obj.headers.hasOwnProperty("Content-Type")&&!obj.headers.hasOwnProperty("content-type")){obj.headers["Content-Type"]="text/html; charset="+rule.encoding}}if(typeof obj.body!="undefined"&&obj.body&&typeof obj.body==="string"){if(!obj.headers.hasOwnProperty("Content-Type")&&!obj.headers.hasOwnProperty("content-type")){obj.headers["Content-Type"]="application/x-www-form-urlencoded; charset="+rule.encoding}}else if(typeof obj.body!="undefined"&&obj.body&&typeof obj.body==="object"){obj.data=obj.body;delete obj.body}if(!url){return obj.withHeaders?"{}":""}if(obj.toBase64){obj.buffer=2;delete obj.toBase64}if(obj.redirect===false){obj.redirect=0}console.log(JSON.stringify(obj.headers));console.log("request:"+url+`|method:${obj.method||"GET"}|body:${obj.body||""}`);let res=req(url,obj);let html=res.content||"";if(obj.withHeaders){let htmlWithHeaders=res.headers;htmlWithHeaders.body=html;return JSON.stringify(htmlWithHeaders)}else{return html}}function post(url,obj){obj=obj||{};obj.method="POST";return request(url,obj)}function reqCookie(url,obj,all_cookie){obj=obj||{};obj.withHeaders=true;all_cookie=all_cookie||false;let html=request(url,obj);let json=JSON.parse(html);let setCk=Object.keys(json).find(it=>it.toLowerCase()==="set-cookie");let cookie=setCk?json[setCk]:"";if(Array.isArray(cookie)){cookie=cookie.join(";")}if(!all_cookie){cookie=cookie.split(";")[0]}html=json.body;return{cookie:cookie,html:html}}fetch=request;print=function(data){data=data||"";if(typeof data=="object"&&Object.keys(data).length>0){try{data=JSON.stringify(data);console.log(data)}catch(e){console.log(typeof data+":"+data.length);return}}else if(typeof data=="object"&&Object.keys(data).length<1){console.log("null object")}else{console.log(data)}};log=print;function checkHtml(html,url,obj){if(/\?btwaf=/.test(html)){let btwaf=html.match(/btwaf(.*?)"/)[1];url=url.split("#")[0]+"?btwaf"+btwaf;print("宝塔验证访问链接:"+url);html=request(url,obj)}return html}function getCode(url,obj){let html=request(url,obj);html=checkHtml(html,url,obj);return html}function getHtml(url){let obj={};if(rule.headers){obj.headers=rule.headers}let cookie=getItem(RULE_CK,"");if(cookie){if(obj.headers&&!Object.keys(obj.headers).map(it=>it.toLowerCase()).includes("cookie")){log("历史无cookie,新增过验证后的cookie");obj.headers["Cookie"]=cookie}else if(obj.headers&&obj.headers.cookie&&obj.headers.cookie!==cookie){obj.headers["Cookie"]=cookie;log("历史有小写过期的cookie,更新过验证后的cookie")}else if(obj.headers&&obj.headers.Cookie&&obj.headers.Cookie!==cookie){obj.headers["Cookie"]=cookie;log("历史有大写过期的cookie,更新过验证后的cookie")}else if(!obj.headers){obj.headers={Cookie:cookie};log("历史无headers,更新过验证后的含cookie的headers")}}let html=getCode(url,obj);return html}function homeParse(homeObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let classes=[];if(homeObj.class_name&&homeObj.class_url){let names=homeObj.class_name.split("&");let urls=homeObj.class_url.split("&");let cnt=Math.min(names.length,urls.length);for(let i=0;i0){classes=list}}}catch(e){console.log(e.message)}}else if(p.length>=3&&!is_json){try{let html=homeObj.home_html||getHtml(homeObj.MY_URL);if(html){homeHtmlCache=html;let list=_pdfa(html,p0);if(list&&list.length>0){list.forEach((it,idex)=>{try{let name=_pdfh(it,p[1]);if(homeObj.cate_exclude&&new RegExp(homeObj.cate_exclude).test(name)){return}let url=_pd(it,p[2]);if(p.length>3&&p[3]&&!homeObj.home_html){let exp=new RegExp(p[3]);url=url.match(exp)[1]}classes.push({type_id:url.trim(),type_name:name.trim()})}catch(e){console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`)}})}}}catch(e){console.log(e.message)}}}}classes=classes.filter(it=>!homeObj.cate_exclude||!new RegExp(homeObj.cate_exclude).test(it.type_name));let resp={class:classes};if(homeObj.filter){resp.filters=homeObj.filter}console.log(JSON.stringify(resp));return JSON.stringify(resp)}function getPP(p,pn,pp,ppn){try{let ps=p[pn]==="*"&&pp.length>ppn?pp[ppn]:p[pn];return ps}catch(e){return""}}function homeVodParse(homeVodObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];MY_URL=homeVodObj.homeUrl;console.log(MY_URL);let t1=(new Date).getTime();let p=homeVodObj.推荐;print("p:"+p);if(p==="*"&&rule.一级){p=rule.一级;homeVodObj.double=false}if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级?rule.一级.split(";"):[];if(p.startsWith("js:")){const TYPE="home";var input=MY_URL;HOST=rule.host;eval(p.replace("js:",""));d=VODS}else{p=p.split(";");if(!homeVodObj.double&&p.length<5){return"{}"}else if(homeVodObj.double&&p.length<6){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");let html=homeHtmlCache||getHtml(MY_URL);homeHtmlCache=undefined;if(is_json){html=dealJson(html)}try{console.log("double:"+homeVodObj.double);if(homeVodObj.double){let items=_pdfa(html,p0);let p1=getPP(p,1,pp,0);let p2=getPP(p,2,pp,1);let p3=getPP(p,3,pp,2);let p4=getPP(p,4,pp,3);let p5=getPP(p,5,pp,4);let p6=getPP(p,6,pp,5);for(let item of items){let items2=_pdfa(item,p1);for(let item2 of items2){try{let title=_pdfh(item2,p2);let img="";try{img=_pd(item2,p3)}catch(e){}let desc="";try{desc=_pdfh(item2,p4)}catch(e){}let links=[];for(let _p5 of p5.split("+")){let link=!homeVodObj.detailUrl?_pd(item2,_p5,MY_URL):_pdfh(item2,_p5);links.push(link)}let content;if(p.length>6&&p[6]){content=_pdfh(item2,p6)}else{content=""}let vid=links.join("$");if(rule.二级==="*"){vid=vid+"@@"+title+"@@"+img}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:vid};d.push(vod)}catch(e){console.log(`首页列表双层定位处理发生错误:${e.message}`)}}}}else{let items=_pdfa(html,p0);let p1=getPP(p,1,pp,1);let p2=getPP(p,2,pp,2);let p3=getPP(p,3,pp,3);let p4=getPP(p,4,pp,4);let p5=getPP(p,5,pp,5);for(let item of items){try{let title=_pdfh(item,p1);let img="";try{img=_pd(item,p2,MY_URL)}catch(e){}let desc="";try{desc=_pdfh(item,p3)}catch(e){}let links=[];for(let _p5 of p4.split("+")){let link=!homeVodObj.detailUrl?_pd(item,_p5,MY_URL):_pdfh(item,_p5);links.push(link)}let content;if(p.length>5&&p[5]){content=_pdfh(item,p5)}else{content=""}let vid=links.join("$");if(rule.二级==="*"){vid=vid+"@@"+title+"@@"+img}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:vid};d.push(vod)}catch(e){console.log(`首页列表单层定位处理发生错误:${e.message}`)}}}}catch(e){}}let t2=(new Date).getTime();console.log("加载首页推荐耗时:"+(t2-t1)+"毫秒");if(rule.图片替换){if(rule.图片替换.startsWith("js:")){d.forEach(it=>{try{var input=it.vod_pic;eval(rule.图片替换.trim().replace("js:",""));it.vod_pic=input}catch(e){log(`图片:${it.vod_pic}替换错误:${e.message}`)}})}else if(rule.图片替换.includes("=>")){let replace_from=rule.图片替换.split("=>")[0];let replace_to=rule.图片替换.split("=>")[1];d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic.replace(replace_from,replace_to)}})}}if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}if(d.length>0){print(d.slice(0,2))}return JSON.stringify({list:d})}function categoryParse(cateObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let p=cateObj.一级;if(!p||typeof p!=="string"){return"{}"}let d=[];let url=cateObj.url.replaceAll("fyclass",cateObj.tid);if(cateObj.pg===1&&url.includes("[")&&url.includes("]")){url=url.split("[")[1].split("]")[0]}else if(cateObj.pg>1&&url.includes("[")&&url.includes("]")){url=url.split("[")[0]}if(rule.filter_url){if(!/fyfilter/.test(url)){if(!url.endsWith("&")&&!rule.filter_url.startsWith("&")){url+="&"}url+=rule.filter_url}else{url=url.replace("fyfilter",rule.filter_url)}url=url.replaceAll("fyclass",cateObj.tid);let fl=cateObj.filter?cateObj.extend:{};if(rule.filter_def&&typeof rule.filter_def==="object"){try{if(Object.keys(rule.filter_def).length>0&&rule.filter_def.hasOwnProperty(cateObj.tid)){let self_fl_def=rule.filter_def[cateObj.tid];if(self_fl_def&&typeof self_fl_def==="object"){let fl_def=JSON.parse(JSON.stringify(self_fl_def));fl=Object.assign(fl_def,fl)}}}catch(e){print(`合并不同分类对应的默认筛选出错:${e.message}`)}}let new_url;new_url=cheerio.jinja2(url,{fl:fl,fyclass:cateObj.tid});url=new_url}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",cateObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",cateObj.pg)}}MY_URL=url;console.log(MY_URL);p=p.trim();const MY_CATE=cateObj.tid;if(p.startsWith("js:")){var MY_FL=cateObj.extend;const TYPE="cate";var input=MY_URL;const MY_PAGE=cateObj.pg;var desc="";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(is_json){html=dealJson(html)}let list=_pdfa(html,p[0]);list.forEach(it=>{let links=p[4].split("+").map(p4=>{return!rule.detailUrl?_pd(it,p4,MY_URL):_pdfh(it,p4)});let link=links.join("$");let vod_id=rule.detailUrl?MY_CATE+"$"+link:link;let vod_name=_pdfh(it,p[1]).replace(/\n|\t/g,"").trim();let vod_pic=_pd(it,p[2],MY_URL);if(rule.二级==="*"){vod_id=vod_id+"@@"+vod_name+"@@"+vod_pic}d.push({vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,vod_remarks:_pdfh(it,p[3]).replace(/\n|\t/g,"").trim()})})}}catch(e){console.log(e.message)}}if(rule.图片替换){if(rule.图片替换.startsWith("js:")){d.forEach(it=>{try{var input=it.vod_pic;eval(rule.图片替换.trim().replace("js:",""));it.vod_pic=input}catch(e){log(`图片:${it.vod_pic}替换错误:${e.message}`)}})}else if(rule.图片替换.includes("=>")){let replace_from=rule.图片替换.split("=>")[0];let replace_to=rule.图片替换.split("=>")[1];d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic.replace(replace_from,replace_to)}})}}if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}if(d.length>0){print(d.slice(0,2))}let pagecount=0;if(rule.pagecount&&typeof rule.pagecount==="object"&&rule.pagecount.hasOwnProperty(MY_CATE)){print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`);pagecount=parseInt(rule.pagecount[MY_CATE])}let nodata={list:[{vod_name:"无数据,防无限请求",vod_id:"no_data",vod_remarks:"不要点,会崩的",vod_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"}],total:1,pagecount:1,page:1,limit:1};let vod=d.length<1?JSON.stringify(nodata):JSON.stringify({page:parseInt(cateObj.pg),pagecount:pagecount||999,limit:20,total:999,list:d});return vod}function searchParse(searchObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];if(!searchObj.searchUrl){return"{}"}let p=searchObj.搜索==="*"&&rule.一级?rule.一级:searchObj.搜索;if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级?rule.一级.split(";"):[];let url=searchObj.searchUrl.replaceAll("**",searchObj.wd);if(searchObj.pg===1&&url.includes("[")&&url.includes("]")&&!url.includes("#")){url=url.split("[")[1].split("]")[0]}else if(searchObj.pg>1&&url.includes("[")&&url.includes("]")&&!url.includes("#")){url=url.split("[")[0]}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",searchObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",searchObj.pg)}}MY_URL=url;console.log(MY_URL);if(p.startsWith("js:")){const TYPE="search";const MY_PAGE=searchObj.pg;const KEY=searchObj.wd;var input=MY_URL;var detailUrl=rule.detailUrl||"";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");try{let req_method=MY_URL.split(";").length>1?MY_URL.split(";")[1].toLowerCase():"get";let html;if(req_method==="post"){let rurls=MY_URL.split(";")[0].split("#");let rurl=rurls[0];let params=rurls.length>1?rurls[1]:"";print(`post=》rurl:${rurl},params:${params}`);let _fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let postData={body:params};Object.assign(_fetch_params,postData);html=post(rurl,_fetch_params)}else if(req_method==="postjson"){let rurls=MY_URL.split(";")[0].split("#");let rurl=rurls[0];let params=rurls.length>1?rurls[1]:"";print(`postjson-》rurl:${rurl},params:${params}`);try{params=JSON.parse(params)}catch(e){params="{}"}let _fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let postData={body:params};Object.assign(_fetch_params,postData);html=post(rurl,_fetch_params)}else{html=getHtml(MY_URL)}if(html){if(/系统安全验证|输入验证码/.test(html)){let cookie=verifyCode(MY_URL);if(cookie){console.log(`本次成功过验证,cookie:${cookie}`);setItem(RULE_CK,cookie)}else{console.log(`本次自动过搜索验证失败,cookie:${cookie}`)}html=getHtml(MY_URL)}if(!html.includes(searchObj.wd)){console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码");console.log(html)}if(is_json){html=dealJson(html)}let list=_pdfa(html,p0);let p1=getPP(p,1,pp,1);let p2=getPP(p,2,pp,2);let p3=getPP(p,3,pp,3);let p4=getPP(p,4,pp,4);let p5=getPP(p,5,pp,5);list.forEach(it=>{let links=p4.split("+").map(_p4=>{return!rule.detailUrl?_pd(it,_p4,MY_URL):_pdfh(it,_p4)});let link=links.join("$");let content;if(p.length>5&&p[5]){content=_pdfh(it,p5)}else{content=""}let vod_id=link;let vod_name=_pdfh(it,p1).replace(/\n|\t/g,"").trim();let vod_pic=_pd(it,p2,MY_URL);if(rule.二级==="*"){vod_id=vod_id+"@@"+vod_name+"@@"+vod_pic}let ob={vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,vod_remarks:_pdfh(it,p3).replace(/\n|\t/g,"").trim(),vod_content:content.replace(/\n|\t/g,"").trim()};d.push(ob)})}}catch(e){print(`搜索发生错误:${e.message}`);return"{}"}}if(rule.图片替换){if(rule.图片替换.startsWith("js:")){d.forEach(it=>{try{var input=it.vod_pic;eval(rule.图片替换.trim().replace("js:",""));it.vod_pic=input}catch(e){log(`图片:${it.vod_pic}替换错误:${e.message}`)}})}else if(rule.图片替换.includes("=>")){let replace_from=rule.图片替换.split("=>")[0];let replace_to=rule.图片替换.split("=>")[1];d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic.replace(replace_from,replace_to)}})}}if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}return JSON.stringify({page:parseInt(searchObj.pg),pagecount:10,limit:20,total:100,list:d})}function detailParse(detailObj){let t1=(new Date).getTime();fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let orId=detailObj.orId;let vod_name="片名";let vod_pic="";let vod_id=orId;if(rule.二级==="*"){let extra=orId.split("@@");vod_name=extra.length>1?extra[1]:vod_name;vod_pic=extra.length>2?extra[2]:vod_pic}let vod={vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,type_name:"类型",vod_year:"年份",vod_area:"地区",vod_remarks:"更新信息",vod_actor:"主演",vod_director:"导演",vod_content:"简介"};let p=detailObj.二级;let url=detailObj.url;let detailUrl=detailObj.detailUrl;let fyclass=detailObj.fyclass;let tab_exclude=detailObj.tab_exclude;let html=detailObj.html||"";MY_URL=url;if(detailObj.二级访问前){try{print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`);eval(detailObj.二级访问前.trim().replace("js:",""))}catch(e){print(`二级访问前执行代码出现错误:${e.message}`)}}if(p==="*"){vod.vod_play_from="道长在线";vod.vod_remarks=detailUrl;vod.vod_actor="没有二级,只有一级链接直接嗅探播放";vod.vod_content=MY_URL;vod.vod_play_url="嗅探播放$"+MY_URL.split("@@")[0]}else if(typeof p==="string"&&p.trim().startsWith("js:")){const TYPE="detail";var input=MY_URL;var play_url="";eval(p.trim().replace("js:",""));vod=VOD;console.log(JSON.stringify(vod))}else if(p&&typeof p==="object"){let tt1=(new Date).getTime();if(!html){html=getHtml(MY_URL)}print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`);let _ps;if(p.is_json){print("二级是json");_ps=parseTags.json;html=dealJson(html)}else if(p.is_jsp){print("二级是jsp");_ps=parseTags.jsp}else if(p.is_jq){print("二级是jq");_ps=parseTags.jq}else{print("二级默认jq");_ps=parseTags.jq}let tt2=(new Date).getTime();print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;if(p.title){let p1=p.title.split(";");vod.vod_name=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();let type_name=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").replace(/ /g,"").trim():"";vod.type_name=type_name||vod.type_name}if(p.desc){try{let p1=p.desc.split(";");vod.vod_remarks=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();vod.vod_year=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").trim():"";vod.vod_area=p1.length>2?_pdfh(html,p1[2]).replace(/\n|\t/g,"").trim():"";vod.vod_actor=p1.length>3?_pdfh(html,p1[3]).replace(/\n|\t/g,"").trim():"";vod.vod_director=p1.length>4?_pdfh(html,p1[4]).replace(/\n|\t/g,"").trim():""}catch(e){}}if(p.content){try{let p1=p.content.split(";");vod.vod_content=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim()}catch(e){}}if(p.img){try{let p1=p.img.split(";");vod.vod_pic=_pd(html,p1[0],MY_URL)}catch(e){}}let vod_play_from="$$$";let playFrom=[];if(p.重定向&&p.重定向.startsWith("js:")){print("开始执行重定向代码:"+p.重定向);html=eval(p.重定向.replace("js:",""))}if(p.tabs){if(p.tabs.startsWith("js:")){print("开始执行tabs代码:"+p.tabs);var input=MY_URL;eval(p.tabs.replace("js:",""));playFrom=TABS}else{let p_tab=p.tabs.split(";")[0];let vHeader=_pdfa(html,p_tab);console.log(vHeader.length);let tab_text=p.tab_text||"body&&Text";let new_map={};for(let v of vHeader){let v_title=_pdfh(v,tab_text).trim();if(!v_title){v_title="线路空"}console.log(v_title);if(tab_exclude&&new RegExp(tab_exclude).test(v_title)){continue}if(!new_map.hasOwnProperty(v_title)){new_map[v_title]=1}else{new_map[v_title]+=1}if(new_map[v_title]>1){v_title+=Number(new_map[v_title]-1)}playFrom.push(v_title)}}console.log(JSON.stringify(playFrom))}else{playFrom=["道长在线"]}vod.vod_play_from=playFrom.join(vod_play_from);let vod_play_url="$$$";let vod_tab_list=[];if(p.lists){if(p.lists.startsWith("js:")){print("开始执行lists代码:"+p.lists);try{var input=MY_URL;var play_url="";eval(p.lists.replace("js:",""));for(let i in LISTS){if(LISTS.hasOwnProperty(i)){try{LISTS[i]=LISTS[i].map(it=>it.split("$").slice(0,2).join("$"))}catch(e){print(`格式化LISTS发生错误:${e.message}`)}}}vod_play_url=LISTS.map(it=>it.join("#")).join(vod_play_url)}catch(e){print(`js执行lists: 发生错误:${e.message}`)}}else{let list_text=p.list_text||"body&&Text";let list_url=p.list_url||"a&&href";let list_url_prefix=p.list_url_prefix||"";let is_tab_js=p.tabs.trim().startsWith("js:");for(let i=0;i1&&!is_tab_js?p.tabs.split(";")[1]:"";let p1=p.lists.replaceAll("#idv",tab_name).replaceAll("#id",i);tab_ext=tab_ext.replaceAll("#idv",tab_name).replaceAll("#id",i);let tabName=tab_ext?_pdfh(html,tab_ext):tab_name;console.log(tabName);let new_vod_list=[];let tt1=(new Date).getTime();if(typeof pdfl==="function"){new_vod_list=pdfl(html,p1,list_text,list_url,MY_URL);if(list_url_prefix){new_vod_list=new_vod_list.map(it=>it.split("$")[0]+"$"+list_url_prefix+it.split("$").slice(1).join("$"))}}else{let vodList=[];try{vodList=_pdfa(html,p1);console.log("len(vodList):"+vodList.length)}catch(e){}for(let i=0;i0){new_vod_list=forceOrder(new_vod_list,"",x=>x.split("$")[0]);console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`)}let vlist=new_vod_list.join("#");vod_tab_list.push(vlist)}vod_play_url=vod_tab_list.join(vod_play_url)}}vod.vod_play_url=vod_play_url}if(rule.图片替换&&rule.图片替换.includes("=>")){let replace_from=rule.图片替换.split("=>")[0];let replace_to=rule.图片替换.split("=>")[1];vod.vod_pic=vod.vod_pic.replace(replace_from,replace_to)}if(rule.图片来源&&vod.vod_pic&&vod.vod_pic.startsWith("http")){vod.vod_pic=vod.vod_pic+rule.图片来源}if(!vod.vod_id||vod_id.includes("$")&&vod.vod_id!==vod_id){vod.vod_id=vod_id}let t2=(new Date).getTime();console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`);try{vod=vodDeal(vod)}catch(e){console.log(`vodDeal发生错误:${e.message}`)}return JSON.stringify({list:[vod]})}function get_tab_index(vod){let obj={};vod.vod_play_from.split("$$$").forEach((it,index)=>{obj[it]=index});return obj}function vodDeal(vod){let vod_play_from=vod.vod_play_from.split("$$$");let vod_play_url=vod.vod_play_url.split("$$$");let tab_removed_list=vod_play_from;let tab_ordered_list=vod_play_from;let tab_renamed_list=vod_play_from;let tab_list=vod_play_from;let play_ordered_list=vod_play_url;if(rule.tab_remove&&rule.tab_remove.length>0||rule.tab_order&&rule.tab_order.length>0){let tab_index_dict=get_tab_index(vod);if(rule.tab_remove&&rule.tab_remove.length>0){tab_removed_list=vod_play_from.filter(it=>!rule.tab_remove.includes(it));tab_list=tab_removed_list}if(rule.tab_order&&rule.tab_order.length>0){let tab_order=rule.tab_order;tab_ordered_list=tab_removed_list.sort((a,b)=>{return(tab_order.indexOf(a)===-1?9999:tab_order.indexOf(a))-(tab_order.indexOf(b)===-1?9999:tab_order.indexOf(b))});tab_list=tab_ordered_list}play_ordered_list=tab_list.map(it=>vod_play_url[tab_index_dict[it]])}if(rule.tab_rename&&typeof rule.tab_rename==="object"&Object.keys(rule.tab_rename).length>0){tab_renamed_list=tab_list.map(it=>rule.tab_rename[it]||it);tab_list=tab_renamed_list}vod.vod_play_from=tab_list.join("$$$");vod.vod_play_url=play_ordered_list.join("$$$");return vod}function tellIsJx(url){try{let is_vip=!/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0])&&是否正版(url);return is_vip?1:0}catch(e){return 1}}function playParse(playObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));MY_URL=playObj.url;var MY_FLAG=playObj.flag;if(!/http/.test(MY_URL)){try{MY_URL=base64Decode(MY_URL)}catch(e){}}MY_URL=decodeURIComponent(MY_URL);var input=MY_URL;var flag=MY_FLAG;let common_play={parse:SPECIAL_URL.test(input)||/^(push:)/.test(input)?0:1,url:input,flag:flag,jx:tellIsJx(input)};let lazy_play;if(!rule.play_parse||!rule.lazy){lazy_play=common_play}else if(rule.play_parse&&rule.lazy&&typeof rule.lazy==="string"){try{let lazy_code=rule.lazy.trim();if(lazy_code.startsWith("js:")){lazy_code=lazy_code.replace("js:","").trim()}print("开始执行js免嗅=>"+lazy_code);eval(lazy_code);lazy_play=typeof input==="object"?input:{parse:SPECIAL_URL.test(input)||/^(push:)/.test(input)?0:1,jx:tellIsJx(input),url:input}}catch(e){print(`js免嗅错误:${e.message}`);lazy_play=common_play}}else{lazy_play=common_play}if(Array.isArray(rule.play_json)&&rule.play_json.length>0){let web_url=lazy_play.url;for(let pjson of rule.play_json){if(pjson.re&&(pjson.re==="*"||web_url.match(new RegExp(pjson.re)))){if(pjson.json&&typeof pjson.json==="object"){let base_json=pjson.json;lazy_play=Object.assign(lazy_play,base_json);break}}}}else if(rule.play_json&&!Array.isArray(rule.play_json)){let base_json={jx:1,parse:1};lazy_play=Object.assign(lazy_play,base_json)}else if(!rule.play_json){let base_json={jx:0,parse:1};lazy_play=Object.assign(lazy_play,base_json)}console.log(JSON.stringify(lazy_play));return JSON.stringify(lazy_play)}function proxyParse(proxyObj){var input=proxyObj.params;if(proxyObj.proxy_rule){log("准备执行本地代理规则:\n"+proxyObj.proxy_rule);try{eval(proxyObj.proxy_rule);if(input&&input!==proxyObj.params&&Array.isArray(input)&&input.length>=3){return input}else{return[404,"text/plain","Not Found"]}}catch(e){return[500,"text/plain","代理规则错误:"+e.message]}}else{return[404,"text/plain","Not Found"]}}function isVideoParse(isVideoObj){var input=isVideoObj.url;if(!isVideoObj.t){let re_matcher=new RegExp(isVideoObj.isVideo,"i");return re_matcher.test(input)}else{try{eval(isVideoObj.isVideo);if(typeof input==="boolean"){return input}else{return false}}catch(e){log(`执行嗅探规则发生错误:${e.message}`);return false}}}function getOriginalJs(js_code){let current_match=/var rule|[\u4E00-\u9FA5]+|function|let |var |const |\(|\)|"|'/;if(current_match.test(js_code)){return js_code}let rsa_private_key="MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCqin/jUpqM6+fgYP/oMqj9zcdHMM0mEZXLeTyixIJWP53lzJV2N2E3OP6BBpUmq2O1a9aLnTIbADBaTulTNiOnVGoNG58umBnupnbmmF8iARbDp2mTzdMMeEgLdrfXS6Y3VvazKYALP8EhEQykQVarexR78vRq7ltY3quXx7cgI0ROfZz5Sw3UOLQJ+VoWmwIxu9AMEZLVzFDQN93hzuzs3tNyHK6xspBGB7zGbwCg+TKi0JeqPDrXxYUpAz1cQ/MO+Da0WgvkXnvrry8NQROHejdLVOAslgr6vYthH9bKbsGyNY3H+P12kcxo9RAcVveONnZbcMyxjtF5dWblaernAgMBAAECggEAGdEHlSEPFmAr5PKqKrtoi6tYDHXdyHKHC5tZy4YV+Pp+a6gxxAiUJejx1hRqBcWSPYeKne35BM9dgn5JofgjI5SKzVsuGL6bxl3ayAOu+xXRHWM9f0t8NHoM5fdd0zC3g88dX3fb01geY2QSVtcxSJpEOpNH3twgZe6naT2pgiq1S4okpkpldJPo5GYWGKMCHSLnKGyhwS76gF8bTPLoay9Jxk70uv6BDUMlA4ICENjmsYtd3oirWwLwYMEJbSFMlyJvB7hjOjR/4RpT4FPnlSsIpuRtkCYXD4jdhxGlvpXREw97UF2wwnEUnfgiZJ2FT/MWmvGGoaV/CfboLsLZuQKBgQDTNZdJrs8dbijynHZuuRwvXvwC03GDpEJO6c1tbZ1s9wjRyOZjBbQFRjDgFeWs9/T1aNBLUrgsQL9c9nzgUziXjr1Nmu52I0Mwxi13Km/q3mT+aQfdgNdu6ojsI5apQQHnN/9yMhF6sNHg63YOpH+b+1bGRCtr1XubuLlumKKscwKBgQDOtQ2lQjMtwsqJmyiyRLiUOChtvQ5XI7B2mhKCGi8kZ+WEAbNQcmThPesVzW+puER6D4Ar4hgsh9gCeuTaOzbRfZ+RLn3Aksu2WJEzfs6UrGvm6DU1INn0z/tPYRAwPX7sxoZZGxqML/z+/yQdf2DREoPdClcDa2Lmf1KpHdB+vQKBgBXFCVHz7a8n4pqXG/HvrIMJdEpKRwH9lUQS/zSPPtGzaLpOzchZFyQQBwuh1imM6Te+VPHeldMh3VeUpGxux39/m+160adlnRBS7O7CdgSsZZZ/dusS06HAFNraFDZf1/VgJTk9BeYygX+AZYu+0tReBKSs9BjKSVJUqPBIVUQXAoGBAJcZ7J6oVMcXxHxwqoAeEhtvLcaCU9BJK36XQ/5M67ceJ72mjJC6/plUbNukMAMNyyi62gO6I9exearecRpB/OGIhjNXm99Ar59dAM9228X8gGfryLFMkWcO/fNZzb6lxXmJ6b2LPY3KqpMwqRLTAU/zy+ax30eFoWdDHYa4X6e1AoGAfa8asVGOJ8GL9dlWufEeFkDEDKO9ww5GdnpN+wqLwePWqeJhWCHad7bge6SnlylJp5aZXl1+YaBTtOskC4Whq9TP2J+dNIgxsaF5EFZQJr8Xv+lY9lu0CruYOh9nTNF9x3nubxJgaSid/7yRPfAGnsJRiknB5bsrCvgsFQFjJVs=";let decode_content="";function aes_decrypt(data){let key=CryptoJS.enc.Hex.parse("686A64686E780A0A0A0A0A0A0A0A0A0A");let iv=CryptoJS.enc.Hex.parse("647A797964730A0A0A0A0A0A0A0A0A0A");let encrypted=CryptoJS.AES.decrypt({ciphertext:CryptoJS.enc.Base64.parse(data)},key,{iv:iv,mode:CryptoJS.mode.CBC,padding:CryptoJS.pad.Pkcs7}).toString(CryptoJS.enc.Utf8);return encrypted}let error_log=false;function logger(text){if(error_log){log(text)}}let decode_funcs=[text=>{try{return ungzip(text)}catch(e){logger("非gzip加密");return""}},text=>{try{return base64Decode(text)}catch(e){logger("非b64加密");return""}},text=>{try{return aes_decrypt(text)}catch(e){logger("非aes加密");return""}},text=>{try{return RSA.decode(text,rsa_private_key,null)}catch(e){logger("非rsa加密");return""}}];let func_index=0;while(!current_match.test(decode_content)){decode_content=decode_funcs[func_index](js_code);func_index++;if(func_index>=decode_funcs.length){break}}return decode_content}function runMain(main_func_code,arg){let mainFunc=function(){return""};try{eval(main_func_code+"\nmainFunc=main;");return mainFunc(arg)}catch(e){log(`执行main_funct发生了错误:${e.message}`);return""}}function init(ext){console.log("init");rule={};rule_fetch_params={};fetch_params=null;try{let muban=模板.getMubans();if(typeof ext=="object"){rule=ext}else if(typeof ext=="string"){if(ext.startsWith("http")||ext.startsWith("file://")){let query=getQuery(ext);let js=request(ext,{method:"GET"});if(js){js=getOriginalJs(js);eval("(function(){"+js.replace("var rule","rule")+"})()")}if(query.type==="url"&&query.params){rule.params=urljoin(ext,query.params)}else if(query.params){rule.params=query.params}}else{ext=getOriginalJs(ext);eval("(function(){"+ext.replace("var rule","rule")+"})()")}}else{console.log(`规则加载失败,不支持的规则类型:${typeof ext}`);return}rule.host=(rule.host||"").rstrip("/");HOST=rule.host;if(rule.hostJs){console.log(`检测到hostJs,准备执行...`);try{eval(rule.hostJs);rule.host=HOST.rstrip("/")}catch(e){console.log(`执行${rule.hostJs}获取host发生错误:${e.message}`)}}if(rule["模板"]==="自动"){try{let host_headers=rule["headers"]||{};let host_html=getCode(HOST,{headers:host_headers});let match_muban="";let muban_keys=Object.keys(muban).filter(it=>!/默认|短视2|采集1/.test(it));for(let muban_key of muban_keys){try{let host_data=JSON.parse(home({},host_html,muban[muban_key].class_parse));if(host_data.class&&host_data.class.length>0){match_muban=muban_key;console.log(`自动匹配模板:【${muban_key}】`);break}}catch(e){console.log(`自动匹配模板:【${muban_key}】错误:${e.message}`)}}if(match_muban){muban["自动"]=muban[match_muban];if(rule["模板修改"]&&rule["模板修改"].startsWith("js:")){eval(rule["模板修改"].replace("js:","").trim())}}else{delete rule["模板"]}}catch(e){delete rule["模板"]}}if(rule.模板&&muban.hasOwnProperty(rule.模板)){print("继承模板:"+rule.模板);rule=Object.assign(muban[rule.模板],rule)}let rule_cate_excludes=(rule.cate_exclude||"").split("|").filter(it=>it.trim());let rule_tab_excludes=(rule.tab_exclude||"").split("|").filter(it=>it.trim());rule_cate_excludes=rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it=>it.trim()));rule_tab_excludes=rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it=>it.trim()));rule.cate_exclude=rule_cate_excludes.join("|");rule.tab_exclude=rule_tab_excludes.join("|");rule.类型=rule.类型||"影视";rule.url=rule.url||"";rule.double=rule.double||false;rule.homeUrl=rule.homeUrl||"";rule.detailUrl=rule.detailUrl||"";rule.searchUrl=rule.searchUrl||"";rule.homeUrl=rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):rule.homeUrl||rule.host;rule.homeUrl=cheerio.jinja2(rule.homeUrl,{rule:rule});rule.detailUrl=rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;rule.二级访问前=rule.二级访问前||"";if(rule.url.includes("[")&&rule.url.includes("]")){let u1=rule.url.split("[")[0];let u2=rule.url.split("[")[1].split("]")[0];rule.url=rule.host&&rule.url?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.url}else{rule.url=rule.host&&rule.url?urljoin(rule.host,rule.url):rule.url}if(rule.searchUrl.includes("[")&&rule.searchUrl.includes("]")&&!rule.searchUrl.includes("#")){let u1=rule.searchUrl.split("[")[0];let u2=rule.searchUrl.split("[")[1].split("]")[0];rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.searchUrl}else{rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,rule.searchUrl):rule.searchUrl}rule.timeout=rule.timeout||5e3;rule.encoding=rule.编码||rule.encoding||"utf-8";rule.search_encoding=rule.搜索编码||rule.search_encoding||"";rule.图片来源=rule.图片来源||"";rule.图片替换=rule.图片替换||"";rule.play_json=rule.hasOwnProperty("play_json")?rule.play_json:[];rule.pagecount=rule.hasOwnProperty("pagecount")?rule.pagecount:{};rule.proxy_rule=rule.hasOwnProperty("proxy_rule")?rule.proxy_rule:"";if(!rule.hasOwnProperty("sniffer")){rule.sniffer=false}rule.sniffer=rule.hasOwnProperty("sniffer")?rule.sniffer:"";rule.sniffer=!!(rule.sniffer&&rule.sniffer!=="0"&&rule.sniffer!=="false");rule.isVideo=rule.hasOwnProperty("isVideo")?rule.isVideo:"";if(rule.sniffer&&!rule.isVideo){rule.isVideo="http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video/tos*|http((?!http).)*?obj/tos*"}rule.tab_remove=rule.hasOwnProperty("tab_remove")?rule.tab_remove:[];rule.tab_order=rule.hasOwnProperty("tab_order")?rule.tab_order:[];rule.tab_rename=rule.hasOwnProperty("tab_rename")?rule.tab_rename:{};if(rule.headers&&typeof rule.headers==="object"){try{let header_keys=Object.keys(rule.headers);for(let k of header_keys){if(k.toLowerCase()==="user-agent"){let v=rule.headers[k];console.log(v);if(["MOBILE_UA","PC_UA","UC_UA","IOS_UA","UA"].includes(v)){rule.headers[k]=eval(v)}}else if(k.toLowerCase()==="cookie"){let v=rule.headers[k];if(v&&v.startsWith("http")){console.log(v);try{v=fetch(v);console.log(v);rule.headers[k]=v}catch(e){console.log(`从${v}获取cookie发生错误:${e.message}`)}}}}}catch(e){console.log(`处理headers发生错误:${e.message}`)}}rule_fetch_params={headers:rule.headers||false,timeout:rule.timeout,encoding:rule.encoding};oheaders=rule.headers||{};RKEY=typeof key!=="undefined"&&key?key:"drpy_"+(rule.title||rule.host);pre();init_test()}catch(e){console.log(`init_test发生错误:${e.message}`)}}let homeHtmlCache=undefined;function home(filter,home_html,class_parse){console.log("home");home_html=home_html||"";class_parse=class_parse||"";if(typeof rule.filter==="string"&&rule.filter.trim().length>0){try{let filter_json=ungzip(rule.filter.trim());rule.filter=JSON.parse(filter_json)}catch(e){rule.filter={}}}let homeObj={filter:rule.filter||false,MY_URL:rule.homeUrl,class_name:rule.class_name||"",class_url:rule.class_url||"",class_parse:class_parse||rule.class_parse||"",cate_exclude:rule.cate_exclude,home_html:home_html};return homeParse(homeObj)}function homeVod(params){console.log("homeVod");let homeVodObj={"推荐":rule.推荐,double:rule.double,homeUrl:rule.homeUrl,detailUrl:rule.detailUrl};return homeVodParse(homeVodObj)}function category(tid,pg,filter,extend){let cateObj={url:rule.url,"一级":rule.一级,tid:tid,pg:parseInt(pg),filter:filter,extend:extend};return categoryParse(cateObj)}function detail(vod_url){let orId=vod_url;let fyclass="";log("orId:"+orId);if(vod_url.indexOf("$")>-1){let tmp=vod_url.split("$");fyclass=tmp[0];vod_url=tmp[1]}let detailUrl=vod_url.split("@@")[0];let url;if(!detailUrl.startsWith("http")&&!detailUrl.includes("/")){url=rule.detailUrl.replaceAll("fyid",detailUrl).replaceAll("fyclass",fyclass)}else if(detailUrl.includes("/")){url=urljoin(rule.homeUrl,detailUrl)}else{url=detailUrl}let detailObj={orId:orId,url:url,"二级":rule.二级,"二级访问前":rule.二级访问前,detailUrl:detailUrl,fyclass:fyclass,tab_exclude:rule.tab_exclude};return detailParse(detailObj)}function play(flag,id,flags){let playObj={url:id,flag:flag,flags:flags};return playParse(playObj)}function search(wd,quick,pg){if(rule.search_encoding){if(rule.search_encoding.toLowerCase()!=="utf-8"){wd=encodeStr(wd,rule.search_encoding)}}else if(rule.encoding&&rule.encoding.toLowerCase()!=="utf-8"){wd=encodeStr(wd,rule.encoding)}let searchObj={searchUrl:rule.searchUrl,"搜索":rule.搜索,wd:wd,pg:pg||1,quick:quick};return searchParse(searchObj)}function proxy(params){if(rule.proxy_rule&&rule.proxy_rule.trim()){rule.proxy_rule=rule.proxy_rule.trim()}if(rule.proxy_rule.startsWith("js:")){rule.proxy_rule=rule.proxy_rule.replace("js:","")}let proxyObj={params:params,proxy_rule:rule.proxy_rule};return proxyParse(proxyObj)}function sniffer(){let enable_sniffer=rule.sniffer||false;if(enable_sniffer){log("开始执行辅助嗅探代理规则...")}return enable_sniffer}function isVideo(url){let t=0;let is_video;if(rule.isVideo&&rule.isVideo.trim()){is_video=rule.isVideo.trim()}if(is_video.startsWith("js:")){is_video=is_video.replace("js:","");t=1}let isVideoObj={url:url,isVideo:is_video,t:t};let result=isVideoParse(isVideoObj);if(result){log("成功执行辅助嗅探规则并检测到视频地址:\n"+rule.isVideo)}return result}function getRule(key){return key?rule[key]||"":rule}function DRPY(){return{runMain:runMain,getRule:getRule,init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,proxy:proxy,sniffer:sniffer,isVideo:isVideo,fixAdM3u8Ai:fixAdM3u8Ai}}export default{runMain:runMain,getRule:getRule,init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,proxy:proxy,sniffer:sniffer,isVideo:isVideo,fixAdM3u8Ai:fixAdM3u8Ai,DRPY:DRPY}; \ No newline at end of file diff --git a/摸鱼儿/api/jsencrypt.js b/摸鱼儿/api/jsencrypt.js index 8deca5f..ed0e24a 100644 --- a/摸鱼儿/api/jsencrypt.js +++ b/摸鱼儿/api/jsencrypt.js @@ -18,229 +18,251 @@ globalThis.JSEncrypt = factory(); } })(this, () => { - return /******/ (() => { // webpackBootstrap - /******/ - var __webpack_modules__ = ({ +return /******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ - /***/ - "./lib/JSEncrypt.js": - /*!**************************!*\ - !*** ./lib/JSEncrypt.js ***! - \**************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/JSEncrypt.js": +/*!**************************!*\ + !*** ./lib/JSEncrypt.js ***! + \**************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's verify.\n * @param {string} str the string to verify\n * @param {string} signature the signature encoded in base64 to compare the string to\n * @param {function} digestMethod hash method\n * @return {boolean} whether the data and signature match\n * @public\n */\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\n // Return the decrypted 'digest' of the signature.\n try {\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object\n * will be created and returned\n * @param {callback} [cb] the callback to be called if we want the key to be generated\n * in an async fashion\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\n * @public\n */\n JSEncrypt.prototype.getKey = function (cb) {\n // Only create new if it does not exist.\n if (!this.key) {\n // Get a new private key.\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\n if (cb && {}.toString.call(cb) === \"[object Function]\") {\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\n return;\n }\n // Generate the key.\n this.key.generate(this.default_key_size, this.default_public_exponent);\n }\n return this.key;\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateKey();\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateBaseKeyB64();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicKey();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicBaseKeyB64();\n };\nvar b64map=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var b64pad=\"=\";var base64DecodeChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out=\"\";while(i>2);out+=b64map.charAt((c1&3)<<4);out+=\"==\";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+=\"=\";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out=\"\";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join(\"\")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\r\\n]+$/,\"\")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString=\"\";var rexStr=\".{1,\"+maxLength+\"}\";var rex=new RegExp(rexStr,\"g\");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log(\"加密错误:\"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr=\"\",encryptedString=\"\";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log(\"解密错误:\"+ex.message);return false}}; JSEncrypt.version = version;\n return JSEncrypt;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* binding */ JSEncrypt)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ \"./lib/JSEncryptRSAKey.js\");\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ \"./node_modules/process/browser.js\");\nvar _a;\n\n\nvar version = typeof process !== 'undefined'\n ? (_a = process.env) === null || _a === void 0 ? void 0 : \"3.3.2\"\n : undefined;\n/**\n *\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\n * possible parameters are:\n * - default_key_size {number} default: 1024 the key size in bit\n * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent\n * - log {boolean} default: false whether log warn/error or not\n * @constructor\n */\nvar JSEncrypt = /** @class */ (function () {\n function JSEncrypt(options) {\n if (options === void 0) { options = {}; }\n options = options || {};\n this.default_key_size = options.default_key_size\n ? parseInt(options.default_key_size, 10)\n : 1024;\n this.default_public_exponent = options.default_public_exponent || \"010001\"; // 65537 default openssl public exponent for rsa key type\n this.log = options.log || false;\n // The private and public key.\n this.key = null;\n }\n /**\n * Method to set the rsa key parameter (one method is enough to set both the public\n * and the private key, since the private key contains the public key paramenters)\n * Log a warning if logs are enabled\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\n * @public\n */\n JSEncrypt.prototype.setKey = function (key) {\n if (this.log && this.key) {\n console.warn(\"A key was already set, overriding existing.\");\n }\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\n // Create the key.\n this.setKey(privkey);\n };\n /**\n * Proxy method for setKey, for api compatibility\n * @see setKey\n * @public\n */\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\n // Sets the public key.\n this.setKey(pubkey);\n };\n /**\n * Proxy method for RSAKey object's decrypt, decrypt the string using the private\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str base64 encoded crypted string to decrypt\n * @return {string} the decrypted string\n * @public\n */\n JSEncrypt.prototype.decrypt = function (str) {\n // Return the decrypted string.\n try {\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's encrypt, encrypt the string using the public\n * components of the rsa key object. Note that if the object was not set will be created\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\n * @param {string} str the string to encrypt\n * @return {string} the encrypted string encoded in base64\n * @public\n */\n JSEncrypt.prototype.encrypt = function (str) {\n // Return the encrypted string.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's sign.\n * @param {string} str the string to sign\n * @param {function} digestMethod hash method\n * @param {string} digestName the name of the hash algorithm\n * @return {string} the signature encoded in base64\n * @public\n */\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\n // return the RSA signature of 'str' in 'hex' format.\n try {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Proxy method for RSAKey object's verify.\n * @param {string} str the string to verify\n * @param {string} signature the signature encoded in base64 to compare the string to\n * @param {function} digestMethod hash method\n * @return {boolean} whether the data and signature match\n * @public\n */\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\n // Return the decrypted 'digest' of the signature.\n try {\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object\n * will be created and returned\n * @param {callback} [cb] the callback to be called if we want the key to be generated\n * in an async fashion\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\n * @public\n */\n JSEncrypt.prototype.getKey = function (cb) {\n // Only create new if it does not exist.\n if (!this.key) {\n // Get a new private key.\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\n if (cb && {}.toString.call(cb) === \"[object Function]\") {\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\n return;\n }\n // Generate the key.\n this.key.generate(this.default_key_size, this.default_public_exponent);\n }\n return this.key;\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateKey();\n };\n /**\n * Returns the pem encoded representation of the private key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPrivateBaseKeyB64();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITH header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKey = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicKey();\n };\n /**\n * Returns the pem encoded representation of the public key\n * If the key doesn't exists a new key will be created\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\n * @public\n */\n JSEncrypt.prototype.getPublicKeyB64 = function () {\n // Return the private representation of this key.\n return this.getKey().getPublicBaseKeyB64();\n };\nvar b64map=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var b64pad=\"=\";var base64DecodeChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out=\"\";while(i>2);out+=b64map.charAt((c1&3)<<4);out+=\"==\";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+=\"=\";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out=\"\";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join(\"\")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\r\\n]+$/,\"\")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString=\"\";var rexStr=\".{1,\"+maxLength+\"}\";var rex=new RegExp(rexStr,\"g\");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log(\"加密错误:\"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr=\"\",encryptedString=\"\";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log(\"解密错误:\"+ex.message);return false}}; JSEncrypt.version = version;\n return JSEncrypt;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/JSEncryptRSAKey.js": - /*!********************************!*\ - !*** ./lib/JSEncryptRSAKey.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/JSEncryptRSAKey.js": +/*!********************************!*\ + !*** ./lib/JSEncryptRSAKey.js ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL 1.0+ private keys\n if (asn1.sub.length === 3) {\n asn1 = asn1.sub[2].sub[0];\n }\n if (asn1.sub.length === 9) {\n // Parse the private key.\n modulus = asn1.sub[1].getHexStringValue(); // bigint\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[2].getHexStringValue(); // int\n this.e = parseInt(public_exponent, 16);\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\n }\n else if (asn1.sub.length === 2) {\n if (asn1.sub[0].sub) {\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\n var bit_string = asn1.sub[1];\n var sequence = bit_string.sub[0];\n modulus = sequence.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = sequence.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n else {\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\n modulus = asn1.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n }\n else {\n return false;\n }\n return true;\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa key.\n *\n * The translation follow the ASN.1 notation :\n * RSAPrivateKey ::= SEQUENCE {\n * version Version,\n * modulus INTEGER, -- n\n * publicExponent INTEGER, -- e\n * privateExponent INTEGER, -- d\n * prime1 INTEGER, -- p\n * prime2 INTEGER, -- q\n * exponent1 INTEGER, -- d mod (p1)\n * exponent2 INTEGER, -- d mod (q-1)\n * coefficient INTEGER, -- (inverse of q) mod p\n * }\n * @returns {string} DER Encoded String representing the rsa private key\n * @private\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\n var options = {\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\n ],\n };\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\n * The representation follow the ASN.1 notation :\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * @returns {string} DER Encoded String representing the rsa public key\n * @private\n */\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: \"1.2.840.113549.1.1.1\" }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\n ],\n });\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n ],\n });\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\n hex: \"00\" + second_sequence.getEncodedHex(),\n });\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [first_sequence, bit_string],\n });\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\n };\n /**\n * wrap the string in block of width chars. The default value for rsa keys is 64\n * characters.\n * @param {string} str the pem encoded string without header and footer\n * @param {Number} [width=64] - the length the string has to be wrapped at\n * @returns {string}\n * @private\n */\n JSEncryptRSAKey.wordwrap = function (str, width) {\n width = width || 64;\n if (!str) {\n return str;\n }\n var regex = \"(.{1,\" + width + \"})( +|$\\n?)|(.{1,\" + width + \"})\";\n return str.match(RegExp(regex, \"g\")).join(\"\\n\");\n };\n /**\n * Retrieve the pem encoded private key\n * @returns {string} the pem encoded private key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\n var key = \"-----BEGIN RSA PRIVATE KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + \"\\n\";\n key += \"-----END RSA PRIVATE KEY-----\";\n return key;\n };\n /**\n * Retrieve the pem encoded public key\n * @returns {string} the pem encoded public key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicKey = function () {\n var key = \"-----BEGIN PUBLIC KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + \"\\n\";\n key += \"-----END PUBLIC KEY-----\";\n return key;\n };\n /**\n * Check if the object contains the necessary parameters to populate the rsa modulus\n * and public exponent parameters.\n * @param {Object} [obj={}] - An object that may contain the two public key\n * parameters\n * @returns {boolean} true if the object contains both the modulus and the public exponent\n * properties (n and e)\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\n * be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\n obj = obj || {};\n return obj.hasOwnProperty(\"n\") && obj.hasOwnProperty(\"e\");\n };\n /**\n * Check if the object contains ALL the parameters of an RSA key.\n * @param {Object} [obj={}] - An object that may contain nine rsa key\n * parameters\n * @returns {boolean} true if the object contains all the parameters needed\n * @todo check for types of the parameters all the parameters but the public exponent\n * should be parseable bigint objects, the public exponent should be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\n obj = obj || {};\n return (obj.hasOwnProperty(\"n\") &&\n obj.hasOwnProperty(\"e\") &&\n obj.hasOwnProperty(\"d\") &&\n obj.hasOwnProperty(\"p\") &&\n obj.hasOwnProperty(\"q\") &&\n obj.hasOwnProperty(\"dmp1\") &&\n obj.hasOwnProperty(\"dmq1\") &&\n obj.hasOwnProperty(\"coeff\"));\n };\n /**\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\n * include the modulus and public exponent (n, e) parameters.\n * @param {Object} obj - the object containing rsa parameters\n * @private\n */\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\n this.n = obj.n;\n this.e = obj.e;\n if (obj.hasOwnProperty(\"d\")) {\n this.d = obj.d;\n this.p = obj.p;\n this.q = obj.q;\n this.dmp1 = obj.dmp1;\n this.dmq1 = obj.dmq1;\n this.coeff = obj.coeff;\n }\n };\n return JSEncryptRSAKey;\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncryptRSAKey\": () => (/* binding */ JSEncryptRSAKey)\n/* harmony export */ });\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ \"./lib/lib/jsbn/base64.js\");\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ \"./lib/lib/asn1js/hex.js\");\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ \"./lib/lib/asn1js/base64.js\");\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ \"./lib/lib/asn1js/asn1.js\");\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ \"./lib/lib/jsbn/rsa.js\");\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ \"./lib/lib/jsrsasign/asn1-1.0.js\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n\n\n\n\n\n/**\n * Create a new JSEncryptRSAKey that extends Tom Wu's RSA key object.\n * This object is just a decorator for parsing the key parameter\n * @param {string|Object} key - The key in string format, or an object containing\n * the parameters needed to build a RSAKey object.\n * @constructor\n */\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\n __extends(JSEncryptRSAKey, _super);\n function JSEncryptRSAKey(key) {\n var _this = _super.call(this) || this;\n // Call the super constructor.\n // RSAKey.call(this);\n // If a key key was provided.\n if (key) {\n // If this is a string...\n if (typeof key === \"string\") {\n _this.parseKey(key);\n }\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\n // Set the values for the key.\n _this.parsePropertiesFrom(key);\n }\n }\n return _this;\n }\n /**\n * Method to parse a pem encoded string containing both a public or private key.\n * The method will translate the pem encoded string in a der encoded string and\n * will parse private key and public key parameters. This method accepts public key\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\n *\n * @todo Check how many rsa formats use the same format of pkcs #1.\n *\n * The format is defined as:\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * it's possible to examine the structure of the keys obtained from openssl using\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\n * @private\n */\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\n try {\n var modulus = 0;\n var public_exponent = 0;\n var reHex = /^\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\s*)+$/;\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\n // Fixes a bug with OpenSSL 1.0+ private keys\n if (asn1.sub.length === 3) {\n asn1 = asn1.sub[2].sub[0];\n }\n if (asn1.sub.length === 9) {\n // Parse the private key.\n modulus = asn1.sub[1].getHexStringValue(); // bigint\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[2].getHexStringValue(); // int\n this.e = parseInt(public_exponent, 16);\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\n }\n else if (asn1.sub.length === 2) {\n if (asn1.sub[0].sub) {\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\n var bit_string = asn1.sub[1];\n var sequence = bit_string.sub[0];\n modulus = sequence.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = sequence.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n else {\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\n modulus = asn1.sub[0].getHexStringValue();\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\n public_exponent = asn1.sub[1].getHexStringValue();\n this.e = parseInt(public_exponent, 16);\n }\n }\n else {\n return false;\n }\n return true;\n }\n catch (ex) {\n return false;\n }\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa key.\n *\n * The translation follow the ASN.1 notation :\n * RSAPrivateKey ::= SEQUENCE {\n * version Version,\n * modulus INTEGER, -- n\n * publicExponent INTEGER, -- e\n * privateExponent INTEGER, -- d\n * prime1 INTEGER, -- p\n * prime2 INTEGER, -- q\n * exponent1 INTEGER, -- d mod (p1)\n * exponent2 INTEGER, -- d mod (q-1)\n * coefficient INTEGER, -- (inverse of q) mod p\n * }\n * @returns {string} DER Encoded String representing the rsa private key\n * @private\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\n var options = {\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\n ],\n };\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\n };\n /**\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\n * The representation follow the ASN.1 notation :\n * PublicKeyInfo ::= SEQUENCE {\n * algorithm AlgorithmIdentifier,\n * PublicKey BIT STRING\n * }\n * Where AlgorithmIdentifier is:\n * AlgorithmIdentifier ::= SEQUENCE {\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\n * }\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\n * RSAPublicKey ::= SEQUENCE {\n * modulus INTEGER, -- n\n * publicExponent INTEGER -- e\n * }\n * @returns {string} DER Encoded String representing the rsa public key\n * @private\n */\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: \"1.2.840.113549.1.1.1\" }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\n ],\n });\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\n ],\n });\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\n hex: \"00\" + second_sequence.getEncodedHex(),\n });\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\n array: [first_sequence, bit_string],\n });\n return seq.getEncodedHex();\n };\n /**\n * base64 (pem) encoded version of the DER encoded representation\n * @returns {string} pem encoded representation without header and footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\n };\n /**\n * wrap the string in block of width chars. The default value for rsa keys is 64\n * characters.\n * @param {string} str the pem encoded string without header and footer\n * @param {Number} [width=64] - the length the string has to be wrapped at\n * @returns {string}\n * @private\n */\n JSEncryptRSAKey.wordwrap = function (str, width) {\n width = width || 64;\n if (!str) {\n return str;\n }\n var regex = \"(.{1,\" + width + \"})( +|$\\n?)|(.{1,\" + width + \"})\";\n return str.match(RegExp(regex, \"g\")).join(\"\\n\");\n };\n /**\n * Retrieve the pem encoded private key\n * @returns {string} the pem encoded private key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\n var key = \"-----BEGIN RSA PRIVATE KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + \"\\n\";\n key += \"-----END RSA PRIVATE KEY-----\";\n return key;\n };\n /**\n * Retrieve the pem encoded public key\n * @returns {string} the pem encoded public key with header/footer\n * @public\n */\n JSEncryptRSAKey.prototype.getPublicKey = function () {\n var key = \"-----BEGIN PUBLIC KEY-----\\n\";\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + \"\\n\";\n key += \"-----END PUBLIC KEY-----\";\n return key;\n };\n /**\n * Check if the object contains the necessary parameters to populate the rsa modulus\n * and public exponent parameters.\n * @param {Object} [obj={}] - An object that may contain the two public key\n * parameters\n * @returns {boolean} true if the object contains both the modulus and the public exponent\n * properties (n and e)\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\n * be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\n obj = obj || {};\n return obj.hasOwnProperty(\"n\") && obj.hasOwnProperty(\"e\");\n };\n /**\n * Check if the object contains ALL the parameters of an RSA key.\n * @param {Object} [obj={}] - An object that may contain nine rsa key\n * parameters\n * @returns {boolean} true if the object contains all the parameters needed\n * @todo check for types of the parameters all the parameters but the public exponent\n * should be parseable bigint objects, the public exponent should be a parseable integer number\n * @private\n */\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\n obj = obj || {};\n return (obj.hasOwnProperty(\"n\") &&\n obj.hasOwnProperty(\"e\") &&\n obj.hasOwnProperty(\"d\") &&\n obj.hasOwnProperty(\"p\") &&\n obj.hasOwnProperty(\"q\") &&\n obj.hasOwnProperty(\"dmp1\") &&\n obj.hasOwnProperty(\"dmq1\") &&\n obj.hasOwnProperty(\"coeff\"));\n };\n /**\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\n * include the modulus and public exponent (n, e) parameters.\n * @param {Object} obj - the object containing rsa parameters\n * @private\n */\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\n this.n = obj.n;\n this.e = obj.e;\n if (obj.hasOwnProperty(\"d\")) {\n this.d = obj.d;\n this.p = obj.p;\n this.q = obj.q;\n this.dmp1 = obj.dmp1;\n this.dmq1 = obj.dmq1;\n this.coeff = obj.coeff;\n }\n };\n return JSEncryptRSAKey;\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/index.js": - /*!**********************!*\ - !*** ./lib/index.js ***! - \**********************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/index.js": +/*!**********************!*\ + !*** ./lib/index.js ***! + \**********************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"JSEncrypt\": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ \"./lib/JSEncrypt.js\");\n\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/asn1js/asn1.js": - /*!********************************!*\ - !*** ./lib/lib/asn1js/asn1.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/asn1js/asn1.js": +/*!********************************!*\ + !*** ./lib/lib/asn1js/asn1.js ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\n if (!m) {\n return \"Unrecognized time: \" + s;\n }\n if (shortYear) {\n // to avoid querying the timer, use the fixed range [1970, 2069]\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\n m[1] = +m[1];\n m[1] += (+m[1] < 70) ? 2000 : 1900;\n }\n s = m[1] + \"-\" + m[2] + \"-\" + m[3] + \" \" + m[4];\n if (m[5]) {\n s += \":\" + m[5];\n if (m[6]) {\n s += \":\" + m[6];\n if (m[7]) {\n s += \".\" + m[7];\n }\n }\n }\n if (m[8]) {\n s += \" UTC\";\n if (m[8] != \"Z\") {\n s += m[8];\n if (m[9]) {\n s += \":\" + m[9];\n }\n }\n }\n return s;\n };\n Stream.prototype.parseInteger = function (start, end) {\n var v = this.get(start);\n var neg = (v > 127);\n var pad = neg ? 255 : 0;\n var len;\n var s = \"\";\n // skip unuseful bits (not allowed in DER)\n while (v == pad && ++start < end) {\n v = this.get(start);\n }\n len = end - start;\n if (len === 0) {\n return neg ? -1 : 0;\n }\n // show bit length of huge integers\n if (len > 4) {\n s = v;\n len <<= 3;\n while (((+s ^ pad) & 0x80) == 0) {\n s = +s << 1;\n --len;\n }\n s = \"(\" + len + \" bit)\\n\";\n }\n // decode the integer\n if (neg) {\n v = v - 256;\n }\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\n for (var i = start + 1; i < end; ++i) {\n n.mulAdd(256, this.get(i));\n }\n return s + n.toString();\n };\n Stream.prototype.parseBitString = function (start, end, maxLength) {\n var unusedBit = this.get(start);\n var lenBit = ((end - start - 1) << 3) - unusedBit;\n var intro = \"(\" + lenBit + \" bit)\\n\";\n var s = \"\";\n for (var i = start + 1; i < end; ++i) {\n var b = this.get(i);\n var skip = (i == end - 1) ? unusedBit : 0;\n for (var j = 7; j >= skip; --j) {\n s += (b >> j) & 1 ? \"1\" : \"0\";\n }\n if (s.length > maxLength) {\n return intro + stringCut(s, maxLength);\n }\n }\n return intro + s;\n };\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\n if (this.isASCII(start, end)) {\n return stringCut(this.parseStringISO(start, end), maxLength);\n }\n var len = end - start;\n var s = \"(\" + len + \" byte)\\n\";\n maxLength /= 2; // we work in bytes\n if (len > maxLength) {\n end = start + maxLength;\n }\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n }\n if (len > maxLength) {\n s += ellipsis;\n }\n return s;\n };\n Stream.prototype.parseOID = function (start, end, maxLength) {\n var s = \"\";\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n var bits = 0;\n for (var i = start; i < end; ++i) {\n var v = this.get(i);\n n.mulAdd(128, v & 0x7F);\n bits += 7;\n if (!(v & 0x80)) { // finished\n if (s === \"\") {\n n = n.simplify();\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\n n.sub(80);\n s = \"2.\" + n.toString();\n }\n else {\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\n s = m + \".\" + (n - m * 40);\n }\n }\n else {\n s += \".\" + n.toString();\n }\n if (s.length > maxLength) {\n return stringCut(s, maxLength);\n }\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n bits = 0;\n }\n }\n if (bits > 0) {\n s += \".incomplete\";\n }\n return s;\n };\n return Stream;\n}());\n\nvar ASN1 = /** @class */ (function () {\n function ASN1(stream, header, length, tag, sub) {\n if (!(tag instanceof ASN1Tag)) {\n throw new Error(\"Invalid tag value.\");\n }\n this.stream = stream;\n this.header = header;\n this.length = length;\n this.tag = tag;\n this.sub = sub;\n }\n ASN1.prototype.typeName = function () {\n switch (this.tag.tagClass) {\n case 0: // universal\n switch (this.tag.tagNumber) {\n case 0x00:\n return \"EOC\";\n case 0x01:\n return \"BOOLEAN\";\n case 0x02:\n return \"INTEGER\";\n case 0x03:\n return \"BIT_STRING\";\n case 0x04:\n return \"OCTET_STRING\";\n case 0x05:\n return \"NULL\";\n case 0x06:\n return \"OBJECT_IDENTIFIER\";\n case 0x07:\n return \"ObjectDescriptor\";\n case 0x08:\n return \"EXTERNAL\";\n case 0x09:\n return \"REAL\";\n case 0x0A:\n return \"ENUMERATED\";\n case 0x0B:\n return \"EMBEDDED_PDV\";\n case 0x0C:\n return \"UTF8String\";\n case 0x10:\n return \"SEQUENCE\";\n case 0x11:\n return \"SET\";\n case 0x12:\n return \"NumericString\";\n case 0x13:\n return \"PrintableString\"; // ASCII subset\n case 0x14:\n return \"TeletexString\"; // aka T61String\n case 0x15:\n return \"VideotexString\";\n case 0x16:\n return \"IA5String\"; // ASCII\n case 0x17:\n return \"UTCTime\";\n case 0x18:\n return \"GeneralizedTime\";\n case 0x19:\n return \"GraphicString\";\n case 0x1A:\n return \"VisibleString\"; // ASCII subset\n case 0x1B:\n return \"GeneralString\";\n case 0x1C:\n return \"UniversalString\";\n case 0x1E:\n return \"BMPString\";\n }\n return \"Universal_\" + this.tag.tagNumber.toString();\n case 1:\n return \"Application_\" + this.tag.tagNumber.toString();\n case 2:\n return \"[\" + this.tag.tagNumber.toString() + \"]\"; // Context\n case 3:\n return \"Private_\" + this.tag.tagNumber.toString();\n }\n };\n ASN1.prototype.content = function (maxLength) {\n if (this.tag === undefined) {\n return null;\n }\n if (maxLength === undefined) {\n maxLength = Infinity;\n }\n var content = this.posContent();\n var len = Math.abs(this.length);\n if (!this.tag.isUniversal()) {\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n return this.stream.parseOctetString(content, content + len, maxLength);\n }\n switch (this.tag.tagNumber) {\n case 0x01: // BOOLEAN\n return (this.stream.get(content) === 0) ? \"false\" : \"true\";\n case 0x02: // INTEGER\n return this.stream.parseInteger(content, content + len);\n case 0x03: // BIT_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseBitString(content, content + len, maxLength);\n case 0x04: // OCTET_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseOctetString(content, content + len, maxLength);\n // case 0x05: // NULL\n case 0x06: // OBJECT_IDENTIFIER\n return this.stream.parseOID(content, content + len, maxLength);\n // case 0x07: // ObjectDescriptor\n // case 0x08: // EXTERNAL\n // case 0x09: // REAL\n // case 0x0A: // ENUMERATED\n // case 0x0B: // EMBEDDED_PDV\n case 0x10: // SEQUENCE\n case 0x11: // SET\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n else {\n return \"(no elem)\";\n }\n case 0x0C: // UTF8String\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\n case 0x12: // NumericString\n case 0x13: // PrintableString\n case 0x14: // TeletexString\n case 0x15: // VideotexString\n case 0x16: // IA5String\n // case 0x19: // GraphicString\n case 0x1A: // VisibleString\n // case 0x1B: // GeneralString\n // case 0x1C: // UniversalString\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\n case 0x1E: // BMPString\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\n case 0x17: // UTCTime\n case 0x18: // GeneralizedTime\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\n }\n return null;\n };\n ASN1.prototype.toString = function () {\n return this.typeName() + \"@\" + this.stream.pos + \"[header:\" + this.header + \",length:\" + this.length + \",sub:\" + ((this.sub === null) ? \"null\" : this.sub.length) + \"]\";\n };\n ASN1.prototype.toPrettyString = function (indent) {\n if (indent === undefined) {\n indent = \"\";\n }\n var s = indent + this.typeName() + \" @\" + this.stream.pos;\n if (this.length >= 0) {\n s += \"+\";\n }\n s += this.length;\n if (this.tag.tagConstructed) {\n s += \" (constructed)\";\n }\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\n s += \" (encapsulates)\";\n }\n s += \"\\n\";\n if (this.sub !== null) {\n indent += \" \";\n for (var i = 0, max = this.sub.length; i < max; ++i) {\n s += this.sub[i].toPrettyString(indent);\n }\n }\n return s;\n };\n ASN1.prototype.posStart = function () {\n return this.stream.pos;\n };\n ASN1.prototype.posContent = function () {\n return this.stream.pos + this.header;\n };\n ASN1.prototype.posEnd = function () {\n return this.stream.pos + this.header + Math.abs(this.length);\n };\n ASN1.prototype.toHexString = function () {\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\n };\n ASN1.decodeLength = function (stream) {\n var buf = stream.get();\n var len = buf & 0x7F;\n if (len == buf) {\n return len;\n }\n // no reason to use Int10, as it would be a huge buffer anyways\n if (len > 6) {\n throw new Error(\"Length over 48 bits not supported at position \" + (stream.pos - 1));\n }\n if (len === 0) {\n return null;\n } // undefined\n buf = 0;\n for (var i = 0; i < len; ++i) {\n buf = (buf * 256) + stream.get();\n }\n return buf;\n };\n /**\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\n * @returns {string}\n * @public\n */\n ASN1.prototype.getHexStringValue = function () {\n var hexString = this.toHexString();\n var offset = this.header * 2;\n var length = this.length * 2;\n return hexString.substr(offset, length);\n };\n ASN1.decode = function (str) {\n var stream;\n if (!(str instanceof Stream)) {\n stream = new Stream(str, 0);\n }\n else {\n stream = str;\n }\n var streamStart = new Stream(stream);\n var tag = new ASN1Tag(stream);\n var len = ASN1.decodeLength(stream);\n var start = stream.pos;\n var header = start - streamStart.pos;\n var sub = null;\n var getSub = function () {\n var ret = [];\n if (len !== null) {\n // definite length\n var end = start + len;\n while (stream.pos < end) {\n ret[ret.length] = ASN1.decode(stream);\n }\n if (stream.pos != end) {\n throw new Error(\"Content size is not correct for container starting at offset \" + start);\n }\n }\n else {\n // undefined length\n try {\n for (;;) {\n var s = ASN1.decode(stream);\n if (s.tag.isEOC()) {\n break;\n }\n ret[ret.length] = s;\n }\n len = start - stream.pos; // undefined lengths are represented as negative values\n }\n catch (e) {\n throw new Error(\"Exception while decoding undefined length content: \" + e);\n }\n }\n return ret;\n };\n if (tag.tagConstructed) {\n // must have valid content\n sub = getSub();\n }\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\n // sometimes BitString and OctetString are used to encapsulate ASN.1\n try {\n if (tag.tagNumber == 0x03) {\n if (stream.get() != 0) {\n throw new Error(\"BIT STRINGs with unused bits cannot encapsulate.\");\n }\n }\n sub = getSub();\n for (var i = 0; i < sub.length; ++i) {\n if (sub[i].tag.isEOC()) {\n throw new Error(\"EOC is not supposed to be actual content.\");\n }\n }\n }\n catch (e) {\n // but silently ignore when they don't\n sub = null;\n }\n }\n if (sub === null) {\n if (len === null) {\n throw new Error(\"We can't skip over an invalid tag with undefined length at offset \" + start);\n }\n stream.pos = start + Math.abs(len);\n }\n return new ASN1(streamStart, header, len, tag, sub);\n };\n return ASN1;\n}());\n\nvar ASN1Tag = /** @class */ (function () {\n function ASN1Tag(stream) {\n var buf = stream.get();\n this.tagClass = buf >> 6;\n this.tagConstructed = ((buf & 0x20) !== 0);\n this.tagNumber = buf & 0x1F;\n if (this.tagNumber == 0x1F) { // long tag\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n do {\n buf = stream.get();\n n.mulAdd(128, buf & 0x7F);\n } while (buf & 0x80);\n this.tagNumber = n.simplify();\n }\n }\n ASN1Tag.prototype.isUniversal = function () {\n return this.tagClass === 0x00;\n };\n ASN1Tag.prototype.isEOC = function () {\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\n };\n return ASN1Tag;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"ASN1\": () => (/* binding */ ASN1),\n/* harmony export */ \"ASN1Tag\": () => (/* binding */ ASN1Tag),\n/* harmony export */ \"Stream\": () => (/* binding */ Stream)\n/* harmony export */ });\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ \"./lib/lib/asn1js/int10.js\");\n// ASN.1 JavaScript decoder\n// Copyright (c) 2008-2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\n/*global oids */\n\nvar ellipsis = \"\\u2026\";\nvar reTimeS = /^(\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nvar reTimeL = /^(\\d\\d\\d\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])([01]\\d|2[0-3])(?:([0-5]\\d)(?:([0-5]\\d)(?:[.,](\\d{1,3}))?)?)?(Z|[-+](?:[0]\\d|1[0-2])([0-5]\\d)?)?$/;\nfunction stringCut(str, len) {\n if (str.length > len) {\n str = str.substring(0, len) + ellipsis;\n }\n return str;\n}\nvar Stream = /** @class */ (function () {\n function Stream(enc, pos) {\n this.hexDigits = \"0123456789ABCDEF\";\n if (enc instanceof Stream) {\n this.enc = enc.enc;\n this.pos = enc.pos;\n }\n else {\n // enc should be an array or a binary string\n this.enc = enc;\n this.pos = pos;\n }\n }\n Stream.prototype.get = function (pos) {\n if (pos === undefined) {\n pos = this.pos++;\n }\n if (pos >= this.enc.length) {\n throw new Error(\"Requesting byte offset \".concat(pos, \" on a stream of length \").concat(this.enc.length));\n }\n return (\"string\" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\n };\n Stream.prototype.hexByte = function (b) {\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\n };\n Stream.prototype.hexDump = function (start, end, raw) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n if (raw !== true) {\n switch (i & 0xF) {\n case 0x7:\n s += \" \";\n break;\n case 0xF:\n s += \"\\n\";\n break;\n default:\n s += \" \";\n }\n }\n }\n return s;\n };\n Stream.prototype.isASCII = function (start, end) {\n for (var i = start; i < end; ++i) {\n var c = this.get(i);\n if (c < 32 || c > 176) {\n return false;\n }\n }\n return true;\n };\n Stream.prototype.parseStringISO = function (start, end) {\n var s = \"\";\n for (var i = start; i < end; ++i) {\n s += String.fromCharCode(this.get(i));\n }\n return s;\n };\n Stream.prototype.parseStringUTF = function (start, end) {\n var s = \"\";\n for (var i = start; i < end;) {\n var c = this.get(i++);\n if (c < 128) {\n s += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\n }\n else {\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\n }\n }\n return s;\n };\n Stream.prototype.parseStringBMP = function (start, end) {\n var str = \"\";\n var hi;\n var lo;\n for (var i = start; i < end;) {\n hi = this.get(i++);\n lo = this.get(i++);\n str += String.fromCharCode((hi << 8) | lo);\n }\n return str;\n };\n Stream.prototype.parseTime = function (start, end, shortYear) {\n var s = this.parseStringISO(start, end);\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\n if (!m) {\n return \"Unrecognized time: \" + s;\n }\n if (shortYear) {\n // to avoid querying the timer, use the fixed range [1970, 2069]\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\n m[1] = +m[1];\n m[1] += (+m[1] < 70) ? 2000 : 1900;\n }\n s = m[1] + \"-\" + m[2] + \"-\" + m[3] + \" \" + m[4];\n if (m[5]) {\n s += \":\" + m[5];\n if (m[6]) {\n s += \":\" + m[6];\n if (m[7]) {\n s += \".\" + m[7];\n }\n }\n }\n if (m[8]) {\n s += \" UTC\";\n if (m[8] != \"Z\") {\n s += m[8];\n if (m[9]) {\n s += \":\" + m[9];\n }\n }\n }\n return s;\n };\n Stream.prototype.parseInteger = function (start, end) {\n var v = this.get(start);\n var neg = (v > 127);\n var pad = neg ? 255 : 0;\n var len;\n var s = \"\";\n // skip unuseful bits (not allowed in DER)\n while (v == pad && ++start < end) {\n v = this.get(start);\n }\n len = end - start;\n if (len === 0) {\n return neg ? -1 : 0;\n }\n // show bit length of huge integers\n if (len > 4) {\n s = v;\n len <<= 3;\n while (((+s ^ pad) & 0x80) == 0) {\n s = +s << 1;\n --len;\n }\n s = \"(\" + len + \" bit)\\n\";\n }\n // decode the integer\n if (neg) {\n v = v - 256;\n }\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\n for (var i = start + 1; i < end; ++i) {\n n.mulAdd(256, this.get(i));\n }\n return s + n.toString();\n };\n Stream.prototype.parseBitString = function (start, end, maxLength) {\n var unusedBit = this.get(start);\n var lenBit = ((end - start - 1) << 3) - unusedBit;\n var intro = \"(\" + lenBit + \" bit)\\n\";\n var s = \"\";\n for (var i = start + 1; i < end; ++i) {\n var b = this.get(i);\n var skip = (i == end - 1) ? unusedBit : 0;\n for (var j = 7; j >= skip; --j) {\n s += (b >> j) & 1 ? \"1\" : \"0\";\n }\n if (s.length > maxLength) {\n return intro + stringCut(s, maxLength);\n }\n }\n return intro + s;\n };\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\n if (this.isASCII(start, end)) {\n return stringCut(this.parseStringISO(start, end), maxLength);\n }\n var len = end - start;\n var s = \"(\" + len + \" byte)\\n\";\n maxLength /= 2; // we work in bytes\n if (len > maxLength) {\n end = start + maxLength;\n }\n for (var i = start; i < end; ++i) {\n s += this.hexByte(this.get(i));\n }\n if (len > maxLength) {\n s += ellipsis;\n }\n return s;\n };\n Stream.prototype.parseOID = function (start, end, maxLength) {\n var s = \"\";\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n var bits = 0;\n for (var i = start; i < end; ++i) {\n var v = this.get(i);\n n.mulAdd(128, v & 0x7F);\n bits += 7;\n if (!(v & 0x80)) { // finished\n if (s === \"\") {\n n = n.simplify();\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\n n.sub(80);\n s = \"2.\" + n.toString();\n }\n else {\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\n s = m + \".\" + (n - m * 40);\n }\n }\n else {\n s += \".\" + n.toString();\n }\n if (s.length > maxLength) {\n return stringCut(s, maxLength);\n }\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n bits = 0;\n }\n }\n if (bits > 0) {\n s += \".incomplete\";\n }\n return s;\n };\n return Stream;\n}());\n\nvar ASN1 = /** @class */ (function () {\n function ASN1(stream, header, length, tag, sub) {\n if (!(tag instanceof ASN1Tag)) {\n throw new Error(\"Invalid tag value.\");\n }\n this.stream = stream;\n this.header = header;\n this.length = length;\n this.tag = tag;\n this.sub = sub;\n }\n ASN1.prototype.typeName = function () {\n switch (this.tag.tagClass) {\n case 0: // universal\n switch (this.tag.tagNumber) {\n case 0x00:\n return \"EOC\";\n case 0x01:\n return \"BOOLEAN\";\n case 0x02:\n return \"INTEGER\";\n case 0x03:\n return \"BIT_STRING\";\n case 0x04:\n return \"OCTET_STRING\";\n case 0x05:\n return \"NULL\";\n case 0x06:\n return \"OBJECT_IDENTIFIER\";\n case 0x07:\n return \"ObjectDescriptor\";\n case 0x08:\n return \"EXTERNAL\";\n case 0x09:\n return \"REAL\";\n case 0x0A:\n return \"ENUMERATED\";\n case 0x0B:\n return \"EMBEDDED_PDV\";\n case 0x0C:\n return \"UTF8String\";\n case 0x10:\n return \"SEQUENCE\";\n case 0x11:\n return \"SET\";\n case 0x12:\n return \"NumericString\";\n case 0x13:\n return \"PrintableString\"; // ASCII subset\n case 0x14:\n return \"TeletexString\"; // aka T61String\n case 0x15:\n return \"VideotexString\";\n case 0x16:\n return \"IA5String\"; // ASCII\n case 0x17:\n return \"UTCTime\";\n case 0x18:\n return \"GeneralizedTime\";\n case 0x19:\n return \"GraphicString\";\n case 0x1A:\n return \"VisibleString\"; // ASCII subset\n case 0x1B:\n return \"GeneralString\";\n case 0x1C:\n return \"UniversalString\";\n case 0x1E:\n return \"BMPString\";\n }\n return \"Universal_\" + this.tag.tagNumber.toString();\n case 1:\n return \"Application_\" + this.tag.tagNumber.toString();\n case 2:\n return \"[\" + this.tag.tagNumber.toString() + \"]\"; // Context\n case 3:\n return \"Private_\" + this.tag.tagNumber.toString();\n }\n };\n ASN1.prototype.content = function (maxLength) {\n if (this.tag === undefined) {\n return null;\n }\n if (maxLength === undefined) {\n maxLength = Infinity;\n }\n var content = this.posContent();\n var len = Math.abs(this.length);\n if (!this.tag.isUniversal()) {\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n return this.stream.parseOctetString(content, content + len, maxLength);\n }\n switch (this.tag.tagNumber) {\n case 0x01: // BOOLEAN\n return (this.stream.get(content) === 0) ? \"false\" : \"true\";\n case 0x02: // INTEGER\n return this.stream.parseInteger(content, content + len);\n case 0x03: // BIT_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseBitString(content, content + len, maxLength);\n case 0x04: // OCTET_STRING\n return this.sub ? \"(\" + this.sub.length + \" elem)\" :\n this.stream.parseOctetString(content, content + len, maxLength);\n // case 0x05: // NULL\n case 0x06: // OBJECT_IDENTIFIER\n return this.stream.parseOID(content, content + len, maxLength);\n // case 0x07: // ObjectDescriptor\n // case 0x08: // EXTERNAL\n // case 0x09: // REAL\n // case 0x0A: // ENUMERATED\n // case 0x0B: // EMBEDDED_PDV\n case 0x10: // SEQUENCE\n case 0x11: // SET\n if (this.sub !== null) {\n return \"(\" + this.sub.length + \" elem)\";\n }\n else {\n return \"(no elem)\";\n }\n case 0x0C: // UTF8String\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\n case 0x12: // NumericString\n case 0x13: // PrintableString\n case 0x14: // TeletexString\n case 0x15: // VideotexString\n case 0x16: // IA5String\n // case 0x19: // GraphicString\n case 0x1A: // VisibleString\n // case 0x1B: // GeneralString\n // case 0x1C: // UniversalString\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\n case 0x1E: // BMPString\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\n case 0x17: // UTCTime\n case 0x18: // GeneralizedTime\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\n }\n return null;\n };\n ASN1.prototype.toString = function () {\n return this.typeName() + \"@\" + this.stream.pos + \"[header:\" + this.header + \",length:\" + this.length + \",sub:\" + ((this.sub === null) ? \"null\" : this.sub.length) + \"]\";\n };\n ASN1.prototype.toPrettyString = function (indent) {\n if (indent === undefined) {\n indent = \"\";\n }\n var s = indent + this.typeName() + \" @\" + this.stream.pos;\n if (this.length >= 0) {\n s += \"+\";\n }\n s += this.length;\n if (this.tag.tagConstructed) {\n s += \" (constructed)\";\n }\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\n s += \" (encapsulates)\";\n }\n s += \"\\n\";\n if (this.sub !== null) {\n indent += \" \";\n for (var i = 0, max = this.sub.length; i < max; ++i) {\n s += this.sub[i].toPrettyString(indent);\n }\n }\n return s;\n };\n ASN1.prototype.posStart = function () {\n return this.stream.pos;\n };\n ASN1.prototype.posContent = function () {\n return this.stream.pos + this.header;\n };\n ASN1.prototype.posEnd = function () {\n return this.stream.pos + this.header + Math.abs(this.length);\n };\n ASN1.prototype.toHexString = function () {\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\n };\n ASN1.decodeLength = function (stream) {\n var buf = stream.get();\n var len = buf & 0x7F;\n if (len == buf) {\n return len;\n }\n // no reason to use Int10, as it would be a huge buffer anyways\n if (len > 6) {\n throw new Error(\"Length over 48 bits not supported at position \" + (stream.pos - 1));\n }\n if (len === 0) {\n return null;\n } // undefined\n buf = 0;\n for (var i = 0; i < len; ++i) {\n buf = (buf * 256) + stream.get();\n }\n return buf;\n };\n /**\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\n * @returns {string}\n * @public\n */\n ASN1.prototype.getHexStringValue = function () {\n var hexString = this.toHexString();\n var offset = this.header * 2;\n var length = this.length * 2;\n return hexString.substr(offset, length);\n };\n ASN1.decode = function (str) {\n var stream;\n if (!(str instanceof Stream)) {\n stream = new Stream(str, 0);\n }\n else {\n stream = str;\n }\n var streamStart = new Stream(stream);\n var tag = new ASN1Tag(stream);\n var len = ASN1.decodeLength(stream);\n var start = stream.pos;\n var header = start - streamStart.pos;\n var sub = null;\n var getSub = function () {\n var ret = [];\n if (len !== null) {\n // definite length\n var end = start + len;\n while (stream.pos < end) {\n ret[ret.length] = ASN1.decode(stream);\n }\n if (stream.pos != end) {\n throw new Error(\"Content size is not correct for container starting at offset \" + start);\n }\n }\n else {\n // undefined length\n try {\n for (;;) {\n var s = ASN1.decode(stream);\n if (s.tag.isEOC()) {\n break;\n }\n ret[ret.length] = s;\n }\n len = start - stream.pos; // undefined lengths are represented as negative values\n }\n catch (e) {\n throw new Error(\"Exception while decoding undefined length content: \" + e);\n }\n }\n return ret;\n };\n if (tag.tagConstructed) {\n // must have valid content\n sub = getSub();\n }\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\n // sometimes BitString and OctetString are used to encapsulate ASN.1\n try {\n if (tag.tagNumber == 0x03) {\n if (stream.get() != 0) {\n throw new Error(\"BIT STRINGs with unused bits cannot encapsulate.\");\n }\n }\n sub = getSub();\n for (var i = 0; i < sub.length; ++i) {\n if (sub[i].tag.isEOC()) {\n throw new Error(\"EOC is not supposed to be actual content.\");\n }\n }\n }\n catch (e) {\n // but silently ignore when they don't\n sub = null;\n }\n }\n if (sub === null) {\n if (len === null) {\n throw new Error(\"We can't skip over an invalid tag with undefined length at offset \" + start);\n }\n stream.pos = start + Math.abs(len);\n }\n return new ASN1(streamStart, header, len, tag, sub);\n };\n return ASN1;\n}());\n\nvar ASN1Tag = /** @class */ (function () {\n function ASN1Tag(stream) {\n var buf = stream.get();\n this.tagClass = buf >> 6;\n this.tagConstructed = ((buf & 0x20) !== 0);\n this.tagNumber = buf & 0x1F;\n if (this.tagNumber == 0x1F) { // long tag\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\n do {\n buf = stream.get();\n n.mulAdd(128, buf & 0x7F);\n } while (buf & 0x80);\n this.tagNumber = n.simplify();\n }\n }\n ASN1Tag.prototype.isUniversal = function () {\n return this.tagClass === 0x00;\n };\n ASN1Tag.prototype.isEOC = function () {\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\n };\n return ASN1Tag;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/asn1js/base64.js": - /*!**********************************!*\ - !*** ./lib/lib/asn1js/base64.js ***! - \**********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/asn1js/base64.js": +/*!**********************************!*\ + !*** ./lib/lib/asn1js/base64.js ***! + \**********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Base64\": () => (/* binding */ Base64)\n/* harmony export */ });\n// Base64 JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Base64 = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\n var ignore = \"= \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = Object.create(null);\n for (i = 0; i < 64; ++i) {\n decoder[b64.charAt(i)] = i;\n }\n decoder['-'] = 62; //+\n decoder['_'] = 63; //-\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 4) {\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n out[out.length] = bits & 0xFF;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 6;\n }\n }\n switch (char_count) {\n case 1:\n throw new Error(\"Base64 encoding incomplete: at least 2 bits missing\");\n case 2:\n out[out.length] = (bits >> 10);\n break;\n case 3:\n out[out.length] = (bits >> 16);\n out[out.length] = (bits >> 8) & 0xFF;\n break;\n }\n return out;\n },\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\/=\\s]+)-----END [^-]+-----|begin-base64[^\\n]+\\n([A-Za-z0-9+\\/=\\s]+)====/,\n unarmor: function (a) {\n var m = Base64.re.exec(a);\n if (m) {\n if (m[1]) {\n a = m[1];\n }\n else if (m[2]) {\n a = m[2];\n }\n else {\n throw new Error(\"RegExp out of sync\");\n }\n }\n return Base64.decode(a);\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/asn1js/hex.js": - /*!*******************************!*\ - !*** ./lib/lib/asn1js/hex.js ***! - \*******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/asn1js/hex.js": +/*!*******************************!*\ + !*** ./lib/lib/asn1js/hex.js ***! + \*******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Hex\": () => (/* binding */ Hex)\n/* harmony export */ });\n// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder;\nvar Hex = {\n decode: function (a) {\n var i;\n if (decoder === undefined) {\n var hex = \"0123456789ABCDEF\";\n var ignore = \" \\f\\n\\r\\t\\u00A0\\u2028\\u2029\";\n decoder = {};\n for (i = 0; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n hex = hex.toLowerCase();\n for (i = 10; i < 16; ++i) {\n decoder[hex.charAt(i)] = i;\n }\n for (i = 0; i < ignore.length; ++i) {\n decoder[ignore.charAt(i)] = -1;\n }\n }\n var out = [];\n var bits = 0;\n var char_count = 0;\n for (i = 0; i < a.length; ++i) {\n var c = a.charAt(i);\n if (c == \"=\") {\n break;\n }\n c = decoder[c];\n if (c == -1) {\n continue;\n }\n if (c === undefined) {\n throw new Error(\"Illegal character at offset \" + i);\n }\n bits |= c;\n if (++char_count >= 2) {\n out[out.length] = bits;\n bits = 0;\n char_count = 0;\n }\n else {\n bits <<= 4;\n }\n }\n if (char_count) {\n throw new Error(\"Hex encoding incomplete: 4 bits missing\");\n }\n return out;\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/asn1js/int10.js": - /*!*********************************!*\ - !*** ./lib/lib/asn1js/int10.js ***! - \*********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/asn1js/int10.js": +/*!*********************************!*\ + !*** ./lib/lib/asn1js/int10.js ***! + \*********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Int10\": () => (/* binding */ Int10)\n/* harmony export */ });\n// Big integer base-10 printing library\n// Copyright (c) 2014 Lapo Luchini \n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\nvar Int10 = /** @class */ (function () {\n function Int10(value) {\n this.buf = [+value || 0];\n }\n Int10.prototype.mulAdd = function (m, c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] * m + c;\n if (t < max) {\n c = 0;\n }\n else {\n c = 0 | (t / max);\n t -= c * max;\n }\n b[i] = t;\n }\n if (c > 0) {\n b[i] = c;\n }\n };\n Int10.prototype.sub = function (c) {\n // assert(m <= 256)\n var b = this.buf;\n var l = b.length;\n var i;\n var t;\n for (i = 0; i < l; ++i) {\n t = b[i] - c;\n if (t < 0) {\n t += max;\n c = 1;\n }\n else {\n c = 0;\n }\n b[i] = t;\n }\n while (b[b.length - 1] === 0) {\n b.pop();\n }\n };\n Int10.prototype.toString = function (base) {\n if ((base || 10) != 10) {\n throw new Error(\"only base 10 is supported\");\n }\n var b = this.buf;\n var s = b[b.length - 1].toString();\n for (var i = b.length - 2; i >= 0; --i) {\n s += (max + b[i]).toString().substring(1);\n }\n return s;\n };\n Int10.prototype.valueOf = function () {\n var b = this.buf;\n var v = 0;\n for (var i = b.length - 1; i >= 0; --i) {\n v = v * max + b[i];\n }\n return v;\n };\n Int10.prototype.simplify = function () {\n var b = this.buf;\n return (b.length == 1) ? b[0] : this;\n };\n return Int10;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/base64.js": - /*!********************************!*\ - !*** ./lib/lib/jsbn/base64.js ***! - \********************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/base64.js": +/*!********************************!*\ + !*** ./lib/lib/jsbn/base64.js ***! + \********************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"b64toBA\": () => (/* binding */ b64toBA),\n/* harmony export */ \"b64tohex\": () => (/* binding */ b64tohex),\n/* harmony export */ \"hex2b64\": () => (/* binding */ hex2b64)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n\nvar b64map = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nvar b64pad = \"=\";\nfunction hex2b64(h) {\n var i;\n var c;\n var ret = \"\";\n for (i = 0; i + 3 <= h.length; i += 3) {\n c = parseInt(h.substring(i, i + 3), 16);\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\n }\n if (i + 1 == h.length) {\n c = parseInt(h.substring(i, i + 1), 16);\n ret += b64map.charAt(c << 2);\n }\n else if (i + 2 == h.length) {\n c = parseInt(h.substring(i, i + 2), 16);\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\n }\n while ((ret.length & 3) > 0) {\n ret += b64pad;\n }\n return ret;\n}\n// convert a base64 string to hex\nfunction b64tohex(s) {\n var ret = \"\";\n var i;\n var k = 0; // b64 state, 0-3\n var slop = 0;\n for (i = 0; i < s.length; ++i) {\n if (s.charAt(i) == b64pad) {\n break;\n }\n var v = b64map.indexOf(s.charAt(i));\n if (v < 0) {\n continue;\n }\n if (k == 0) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 1;\n }\n else if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n slop = v & 0xf;\n k = 2;\n }\n else if (k == 2) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\n slop = v & 3;\n k = 3;\n }\n else {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\n k = 0;\n }\n }\n if (k == 1) {\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\n }\n return ret;\n}\n// convert a base64 string to a byte/number array\nfunction b64toBA(s) {\n // piggyback on b64tohex for now, optimize later\n var h = b64tohex(s);\n var i;\n var a = [];\n for (i = 0; 2 * i < h.length; ++i) {\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\n }\n return a;\n}\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/jsbn.js": - /*!******************************!*\ - !*** ./lib/lib/jsbn/jsbn.js ***! - \******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/jsbn.js": +/*!******************************!*\ + !*** ./lib/lib/jsbn/jsbn.js ***! + \******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.prototype.bitLength = bnBitLength;\n // (public) return the number of bits in \"this\"\n BigInteger.prototype.bitLength = function () {\n if (this.t <= 0) {\n return 0;\n }\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n };\n // BigInteger.prototype.mod = bnMod;\n // (public) this mod a\n BigInteger.prototype.mod = function (a) {\n var r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n a.subTo(r, r);\n }\n return r;\n };\n // BigInteger.prototype.modPowInt = bnModPowInt;\n // (public) this^e % m, 0 <= e < 2^32\n BigInteger.prototype.modPowInt = function (e, m) {\n var z;\n if (e < 256 || m.isEven()) {\n z = new Classic(m);\n }\n else {\n z = new Montgomery(m);\n }\n return this.exp(e, z);\n };\n // BigInteger.prototype.clone = bnClone;\n // (public)\n BigInteger.prototype.clone = function () {\n var r = nbi();\n this.copyTo(r);\n return r;\n };\n // BigInteger.prototype.intValue = bnIntValue;\n // (public) return value as integer\n BigInteger.prototype.intValue = function () {\n if (this.s < 0) {\n if (this.t == 1) {\n return this[0] - this.DV;\n }\n else if (this.t == 0) {\n return -1;\n }\n }\n else if (this.t == 1) {\n return this[0];\n }\n else if (this.t == 0) {\n return 0;\n }\n // assumes 16 < DB < 32\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\n };\n // BigInteger.prototype.byteValue = bnByteValue;\n // (public) return value as byte\n BigInteger.prototype.byteValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\n };\n // BigInteger.prototype.shortValue = bnShortValue;\n // (public) return value as short (assumes DB>=16)\n BigInteger.prototype.shortValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\n };\n // BigInteger.prototype.signum = bnSigNum;\n // (public) 0 if this == 0, 1 if this > 0\n BigInteger.prototype.signum = function () {\n if (this.s < 0) {\n return -1;\n }\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\n return 0;\n }\n else {\n return 1;\n }\n };\n // BigInteger.prototype.toByteArray = bnToByteArray;\n // (public) convert to bigendian byte array\n BigInteger.prototype.toByteArray = function () {\n var i = this.t;\n var r = [];\n r[0] = this.s;\n var p = this.DB - (i * this.DB) % 8;\n var d;\n var k = 0;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\n r[k++] = d | (this.s << (this.DB - p));\n }\n while (i >= 0) {\n if (p < 8) {\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\n d |= this[--i] >> (p += this.DB - 8);\n }\n else {\n d = (this[i] >> (p -= 8)) & 0xff;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if ((d & 0x80) != 0) {\n d |= -256;\n }\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\n ++k;\n }\n if (k > 0 || d != this.s) {\n r[k++] = d;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.equals = bnEquals;\n BigInteger.prototype.equals = function (a) {\n return (this.compareTo(a) == 0);\n };\n // BigInteger.prototype.min = bnMin;\n BigInteger.prototype.min = function (a) {\n return (this.compareTo(a) < 0) ? this : a;\n };\n // BigInteger.prototype.max = bnMax;\n BigInteger.prototype.max = function (a) {\n return (this.compareTo(a) > 0) ? this : a;\n };\n // BigInteger.prototype.and = bnAnd;\n BigInteger.prototype.and = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\n return r;\n };\n // BigInteger.prototype.or = bnOr;\n BigInteger.prototype.or = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\n return r;\n };\n // BigInteger.prototype.xor = bnXor;\n BigInteger.prototype.xor = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\n return r;\n };\n // BigInteger.prototype.andNot = bnAndNot;\n BigInteger.prototype.andNot = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\n return r;\n };\n // BigInteger.prototype.not = bnNot;\n // (public) ~this\n BigInteger.prototype.not = function () {\n var r = nbi();\n for (var i = 0; i < this.t; ++i) {\n r[i] = this.DM & ~this[i];\n }\n r.t = this.t;\n r.s = ~this.s;\n return r;\n };\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\n // (public) this << n\n BigInteger.prototype.shiftLeft = function (n) {\n var r = nbi();\n if (n < 0) {\n this.rShiftTo(-n, r);\n }\n else {\n this.lShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.shiftRight = bnShiftRight;\n // (public) this >> n\n BigInteger.prototype.shiftRight = function (n) {\n var r = nbi();\n if (n < 0) {\n this.lShiftTo(-n, r);\n }\n else {\n this.rShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\n // (public) returns index of lowest 1-bit (or -1 if none)\n BigInteger.prototype.getLowestSetBit = function () {\n for (var i = 0; i < this.t; ++i) {\n if (this[i] != 0) {\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\n }\n }\n if (this.s < 0) {\n return this.t * this.DB;\n }\n return -1;\n };\n // BigInteger.prototype.bitCount = bnBitCount;\n // (public) return number of set bits\n BigInteger.prototype.bitCount = function () {\n var r = 0;\n var x = this.s & this.DM;\n for (var i = 0; i < this.t; ++i) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\n }\n return r;\n };\n // BigInteger.prototype.testBit = bnTestBit;\n // (public) true iff nth bit is set\n BigInteger.prototype.testBit = function (n) {\n var j = Math.floor(n / this.DB);\n if (j >= this.t) {\n return (this.s != 0);\n }\n return ((this[j] & (1 << (n % this.DB))) != 0);\n };\n // BigInteger.prototype.setBit = bnSetBit;\n // (public) this | (1< 1) {\n var g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n var j = e.t - 1;\n var w;\n var is1 = true;\n var r2 = nbi();\n var t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1) {\n w = (e[j] >> (i - k1)) & km;\n }\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0) {\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n }\n n = k;\n while ((w & 1) == 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) { // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0) {\n z.sqrTo(r, r2);\n }\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.modInverse = bnModInverse;\n // (public) 1/this % m (HAC 14.61)\n BigInteger.prototype.modInverse = function (m) {\n var ac = m.isEven();\n if ((this.isEven() && ac) || m.signum() == 0) {\n return BigInteger.ZERO;\n }\n var u = m.clone();\n var v = this.clone();\n var a = nbv(1);\n var b = nbv(0);\n var c = nbv(0);\n var d = nbv(1);\n while (u.signum() != 0) {\n while (u.isEven()) {\n u.rShiftTo(1, u);\n if (ac) {\n if (!a.isEven() || !b.isEven()) {\n a.addTo(this, a);\n b.subTo(m, b);\n }\n a.rShiftTo(1, a);\n }\n else if (!b.isEven()) {\n b.subTo(m, b);\n }\n b.rShiftTo(1, b);\n }\n while (v.isEven()) {\n v.rShiftTo(1, v);\n if (ac) {\n if (!c.isEven() || !d.isEven()) {\n c.addTo(this, c);\n d.subTo(m, d);\n }\n c.rShiftTo(1, c);\n }\n else if (!d.isEven()) {\n d.subTo(m, d);\n }\n d.rShiftTo(1, d);\n }\n if (u.compareTo(v) >= 0) {\n u.subTo(v, u);\n if (ac) {\n a.subTo(c, a);\n }\n b.subTo(d, b);\n }\n else {\n v.subTo(u, v);\n if (ac) {\n c.subTo(a, c);\n }\n d.subTo(b, d);\n }\n }\n if (v.compareTo(BigInteger.ONE) != 0) {\n return BigInteger.ZERO;\n }\n if (d.compareTo(m) >= 0) {\n return d.subtract(m);\n }\n if (d.signum() < 0) {\n d.addTo(m, d);\n }\n else {\n return d;\n }\n if (d.signum() < 0) {\n return d.add(m);\n }\n else {\n return d;\n }\n };\n // BigInteger.prototype.pow = bnPow;\n // (public) this^e\n BigInteger.prototype.pow = function (e) {\n return this.exp(e, new NullExp());\n };\n // BigInteger.prototype.gcd = bnGCD;\n // (public) gcd(this,a) (HAC 14.54)\n BigInteger.prototype.gcd = function (a) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n return x;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n while (x.signum() > 0) {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n }\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n return y;\n };\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n // (public) test primality with certainty >= 1-.5^t\n BigInteger.prototype.isProbablePrime = function (t) {\n var i;\n var x = this.abs();\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\n for (i = 0; i < lowprimes.length; ++i) {\n if (x[0] == lowprimes[i]) {\n return true;\n }\n }\n return false;\n }\n if (x.isEven()) {\n return false;\n }\n i = 1;\n while (i < lowprimes.length) {\n var m = lowprimes[i];\n var j = i + 1;\n while (j < lowprimes.length && m < lplim) {\n m *= lowprimes[j++];\n }\n m = x.modInt(m);\n while (i < j) {\n if (m % lowprimes[i++] == 0) {\n return false;\n }\n }\n }\n return x.millerRabin(t);\n };\n //#endregion PUBLIC\n //#region PROTECTED\n // BigInteger.prototype.copyTo = bnpCopyTo;\n // (protected) copy this to r\n BigInteger.prototype.copyTo = function (r) {\n for (var i = this.t - 1; i >= 0; --i) {\n r[i] = this[i];\n }\n r.t = this.t;\n r.s = this.s;\n };\n // BigInteger.prototype.fromInt = bnpFromInt;\n // (protected) set from integer value x, -DV <= x < DV\n BigInteger.prototype.fromInt = function (x) {\n this.t = 1;\n this.s = (x < 0) ? -1 : 0;\n if (x > 0) {\n this[0] = x;\n }\n else if (x < -1) {\n this[0] = x + this.DV;\n }\n else {\n this.t = 0;\n }\n };\n // BigInteger.prototype.fromString = bnpFromString;\n // (protected) set from string and radix\n BigInteger.prototype.fromString = function (s, b) {\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 256) {\n k = 8;\n /* byte array */\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n this.fromRadix(s, b);\n return;\n }\n this.t = 0;\n this.s = 0;\n var i = s.length;\n var mi = false;\n var sh = 0;\n while (--i >= 0) {\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\") {\n mi = true;\n }\n continue;\n }\n mi = false;\n if (sh == 0) {\n this[this.t++] = x;\n }\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = (x >> (this.DB - sh));\n }\n else {\n this[this.t - 1] |= x << sh;\n }\n sh += k;\n if (sh >= this.DB) {\n sh -= this.DB;\n }\n }\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\n this.s = -1;\n if (sh > 0) {\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\n }\n }\n this.clamp();\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.clamp = bnpClamp;\n // (protected) clamp off excess high words\n BigInteger.prototype.clamp = function () {\n var c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c) {\n --this.t;\n }\n };\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\n // (protected) r = this << n*DB\n BigInteger.prototype.dlShiftTo = function (n, r) {\n var i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + n] = this[i];\n }\n for (i = n - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r.t = this.t + n;\n r.s = this.s;\n };\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\n // (protected) r = this >> n*DB\n BigInteger.prototype.drShiftTo = function (n, r) {\n for (var i = n; i < this.t; ++i) {\n r[i - n] = this[i];\n }\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n };\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\n // (protected) r = this << n\n BigInteger.prototype.lShiftTo = function (n, r) {\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << cbs) - 1;\n var ds = Math.floor(n / this.DB);\n var c = (this.s << bs) & this.DM;\n for (var i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (var i = ds - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n };\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\n // (protected) r = this >> n\n BigInteger.prototype.rShiftTo = function (n, r) {\n r.s = this.s;\n var ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (var i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0) {\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n }\n r.t = this.t - ds;\n r.clamp();\n };\n // BigInteger.prototype.subTo = bnpSubTo;\n // (protected) r = this - a\n BigInteger.prototype.subTo = function (a, r) {\n var i = 0;\n var c = 0;\n var m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c < -1) {\n r[i++] = this.DV + c;\n }\n else if (c > 0) {\n r[i++] = c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\n // (protected) r = this * a, r != this,a (HAC 14.12)\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyTo = function (a, r) {\n var x = this.abs();\n var y = a.abs();\n var i = x.t;\n r.t = i + y.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < y.t; ++i) {\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n }\n r.s = 0;\n r.clamp();\n if (this.s != a.s) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.squareTo = bnpSquareTo;\n // (protected) r = this^2, r != this (HAC 14.16)\n BigInteger.prototype.squareTo = function (r) {\n var x = this.abs();\n var i = r.t = 2 * x.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < x.t - 1; ++i) {\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0) {\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n }\n r.s = 0;\n r.clamp();\n };\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n // r != q, this != m. q or r may be null.\n BigInteger.prototype.divRemTo = function (m, q, r) {\n var pm = m.abs();\n if (pm.t <= 0) {\n return;\n }\n var pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null) {\n q.fromInt(0);\n }\n if (r != null) {\n this.copyTo(r);\n }\n return;\n }\n if (r == null) {\n r = nbi();\n }\n var y = nbi();\n var ts = this.s;\n var ms = m.s;\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n var ys = y.t;\n var y0 = y[ys - 1];\n if (y0 == 0) {\n return;\n }\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\n var d1 = this.FV / yt;\n var d2 = (1 << this.F1) / yt;\n var e = 1 << this.F2;\n var i = r.t;\n var j = i - ys;\n var t = (q == null) ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\n while (y.t < ys) {\n y[y.t++] = 0;\n }\n while (--j >= 0) {\n // Estimate quotient digit\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd) {\n r.subTo(t, r);\n }\n }\n }\n if (q != null) {\n r.drShiftTo(ys, q);\n if (ts != ms) {\n BigInteger.ZERO.subTo(q, q);\n }\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0) {\n r.rShiftTo(nsh, r);\n } // Denormalize remainder\n if (ts < 0) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.invDigit = bnpInvDigit;\n // (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n // justification:\n // xy == 1 (mod m)\n // xy = 1+km\n // xy(2-xy) = (1+km)(1-km)\n // x[y(2-xy)] = 1-k^2m^2\n // x[y(2-xy)] == 1 (mod m^2)\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n // JS multiply \"overflows\" differently from C/C++, so care is needed here.\n BigInteger.prototype.invDigit = function () {\n if (this.t < 1) {\n return 0;\n }\n var x = this[0];\n if ((x & 1) == 0) {\n return 0;\n }\n var y = x & 3; // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return (y > 0) ? this.DV - y : -y;\n };\n // BigInteger.prototype.isEven = bnpIsEven;\n // (protected) true iff this is even\n BigInteger.prototype.isEven = function () {\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\n };\n // BigInteger.prototype.exp = bnpExp;\n // (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\n BigInteger.prototype.exp = function (e, z) {\n if (e > 0xffffffff || e < 1) {\n return BigInteger.ONE;\n }\n var r = nbi();\n var r2 = nbi();\n var g = z.convert(this);\n var i = nbits(e) - 1;\n g.copyTo(r);\n while (--i >= 0) {\n z.sqrTo(r, r2);\n if ((e & (1 << i)) > 0) {\n z.mulTo(r2, g, r);\n }\n else {\n var t = r;\n r = r2;\n r2 = t;\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.chunkSize = bnpChunkSize;\n // (protected) return x s.t. r^x < DV\n BigInteger.prototype.chunkSize = function (r) {\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\n };\n // BigInteger.prototype.toRadix = bnpToRadix;\n // (protected) convert to radix string\n BigInteger.prototype.toRadix = function (b) {\n if (b == null) {\n b = 10;\n }\n if (this.signum() == 0 || b < 2 || b > 36) {\n return \"0\";\n }\n var cs = this.chunkSize(b);\n var a = Math.pow(b, cs);\n var d = nbv(a);\n var y = nbi();\n var z = nbi();\n var r = \"\";\n this.divRemTo(d, y, z);\n while (y.signum() > 0) {\n r = (a + z.intValue()).toString(b).substr(1) + r;\n y.divRemTo(d, y, z);\n }\n return z.intValue().toString(b) + r;\n };\n // BigInteger.prototype.fromRadix = bnpFromRadix;\n // (protected) convert from radix string\n BigInteger.prototype.fromRadix = function (s, b) {\n this.fromInt(0);\n if (b == null) {\n b = 10;\n }\n var cs = this.chunkSize(b);\n var d = Math.pow(b, cs);\n var mi = false;\n var j = 0;\n var w = 0;\n for (var i = 0; i < s.length; ++i) {\n var x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\" && this.signum() == 0) {\n mi = true;\n }\n continue;\n }\n w = b * w + x;\n if (++j >= cs) {\n this.dMultiply(d);\n this.dAddOffset(w, 0);\n j = 0;\n w = 0;\n }\n }\n if (j > 0) {\n this.dMultiply(Math.pow(b, j));\n this.dAddOffset(w, 0);\n }\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.fromNumber = bnpFromNumber;\n // (protected) alternate constructor\n BigInteger.prototype.fromNumber = function (a, b, c) {\n if (\"number\" == typeof b) {\n // new BigInteger(int,int,RNG)\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n // force MSB set\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n } // force odd\n while (!this.isProbablePrime(b)) {\n this.dAddOffset(2, 0);\n if (this.bitLength() > a) {\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\n }\n }\n }\n }\n else {\n // new BigInteger(int,RNG)\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\n // (protected) r = this op a (bitwise)\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\n var i;\n var f;\n var m = Math.min(a.t, this.t);\n for (i = 0; i < m; ++i) {\n r[i] = op(this[i], a[i]);\n }\n if (a.t < this.t) {\n f = a.s & this.DM;\n for (i = m; i < this.t; ++i) {\n r[i] = op(this[i], f);\n }\n r.t = this.t;\n }\n else {\n f = this.s & this.DM;\n for (i = m; i < a.t; ++i) {\n r[i] = op(f, a[i]);\n }\n r.t = a.t;\n }\n r.s = op(this.s, a.s);\n r.clamp();\n };\n // BigInteger.prototype.changeBit = bnpChangeBit;\n // (protected) this op (1<>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c > 0) {\n r[i++] = c;\n }\n else if (c < -1) {\n r[i++] = this.DV + c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.dMultiply = bnpDMultiply;\n // (protected) this *= n, this >= 0, 1 < n < DV\n BigInteger.prototype.dMultiply = function (n) {\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\n ++this.t;\n this.clamp();\n };\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\n // (protected) this += n << w words, this >= 0\n BigInteger.prototype.dAddOffset = function (n, w) {\n if (n == 0) {\n return;\n }\n while (this.t <= w) {\n this[this.t++] = 0;\n }\n this[w] += n;\n while (this[w] >= this.DV) {\n this[w] -= this.DV;\n if (++w >= this.t) {\n this[this.t++] = 0;\n }\n ++this[w];\n }\n };\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\n // (protected) r = lower n words of \"this * a\", a.t <= n\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\n var i = Math.min(this.t + a.t, n);\n r.s = 0; // assumes a,this >= 0\n r.t = i;\n while (i > 0) {\n r[--i] = 0;\n }\n for (var j = r.t - this.t; i < j; ++i) {\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\n }\n for (var j = Math.min(a.t, n); i < j; ++i) {\n this.am(0, a[i], r, i, 0, n - i);\n }\n r.clamp();\n };\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\n // (protected) r = \"this * a\" without lower n words, n > 0\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\n --n;\n var i = r.t = this.t + a.t - n;\n r.s = 0; // assumes a,this >= 0\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\n }\n r.clamp();\n r.drShiftTo(1, r);\n };\n // BigInteger.prototype.modInt = bnpModInt;\n // (protected) this % n, n < 2^26\n BigInteger.prototype.modInt = function (n) {\n if (n <= 0) {\n return 0;\n }\n var d = this.DV % n;\n var r = (this.s < 0) ? n - 1 : 0;\n if (this.t > 0) {\n if (d == 0) {\n r = this[0] % n;\n }\n else {\n for (var i = this.t - 1; i >= 0; --i) {\n r = (d * r + this[i]) % n;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\n BigInteger.prototype.millerRabin = function (t) {\n var n1 = this.subtract(BigInteger.ONE);\n var k = n1.getLowestSetBit();\n if (k <= 0) {\n return false;\n }\n var r = n1.shiftRight(k);\n t = (t + 1) >> 1;\n if (t > lowprimes.length) {\n t = lowprimes.length;\n }\n var a = nbi();\n for (var i = 0; i < t; ++i) {\n // Pick bases at random, instead of starting at 2\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\n var y = a.modPow(r, this);\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n var j = 1;\n while (j++ < k && y.compareTo(n1) != 0) {\n y = y.modPowInt(2, this);\n if (y.compareTo(BigInteger.ONE) == 0) {\n return false;\n }\n }\n if (y.compareTo(n1) != 0) {\n return false;\n }\n }\n }\n return true;\n };\n // BigInteger.prototype.square = bnSquare;\n // (public) this^2\n BigInteger.prototype.square = function () {\n var r = nbi();\n this.squareTo(r);\n return r;\n };\n //#region ASYNC\n // Public API method\n BigInteger.prototype.gcda = function (a, callback) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n callback(x);\n return;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\n var gcda1 = function () {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n if (!(x.signum() > 0)) {\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n setTimeout(function () { callback(y); }, 0); // escape\n }\n else {\n setTimeout(gcda1, 0);\n }\n };\n setTimeout(gcda1, 10);\n };\n // (protected) alternate constructor\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\n if (\"number\" == typeof b) {\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n }\n var bnp_1 = this;\n var bnpfn1_1 = function () {\n bnp_1.dAddOffset(2, 0);\n if (bnp_1.bitLength() > a) {\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\n }\n if (bnp_1.isProbablePrime(b)) {\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(bnpfn1_1, 0);\n }\n };\n setTimeout(bnpfn1_1, 0);\n }\n }\n else {\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n return BigInteger;\n}());\n\n//#region REDUCERS\n//#region NullExp\nvar NullExp = /** @class */ (function () {\n function NullExp() {\n }\n // NullExp.prototype.convert = nNop;\n NullExp.prototype.convert = function (x) {\n return x;\n };\n // NullExp.prototype.revert = nNop;\n NullExp.prototype.revert = function (x) {\n return x;\n };\n // NullExp.prototype.mulTo = nMulTo;\n NullExp.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n };\n // NullExp.prototype.sqrTo = nSqrTo;\n NullExp.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n };\n return NullExp;\n}());\n// Modular reduction using \"classic\" algorithm\nvar Classic = /** @class */ (function () {\n function Classic(m) {\n this.m = m;\n }\n // Classic.prototype.convert = cConvert;\n Classic.prototype.convert = function (x) {\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\n return x.mod(this.m);\n }\n else {\n return x;\n }\n };\n // Classic.prototype.revert = cRevert;\n Classic.prototype.revert = function (x) {\n return x;\n };\n // Classic.prototype.reduce = cReduce;\n Classic.prototype.reduce = function (x) {\n x.divRemTo(this.m, null, x);\n };\n // Classic.prototype.mulTo = cMulTo;\n Classic.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Classic.prototype.sqrTo = cSqrTo;\n Classic.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Classic;\n}());\n//#endregion\n//#region Montgomery\n// Montgomery reduction\nvar Montgomery = /** @class */ (function () {\n function Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n }\n // Montgomery.prototype.convert = montConvert;\n // xR mod m\n Montgomery.prototype.convert = function (x) {\n var r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n this.m.subTo(r, r);\n }\n return r;\n };\n // Montgomery.prototype.revert = montRevert;\n // x/R mod m\n Montgomery.prototype.revert = function (x) {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n };\n // Montgomery.prototype.reduce = montReduce;\n // x = x/R mod m (HAC 14.32)\n Montgomery.prototype.reduce = function (x) {\n while (x.t <= this.mt2) {\n // pad x so am has enough room later\n x[x.t++] = 0;\n }\n for (var i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n var j = x[i] & 0x7fff;\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Montgomery.prototype.mulTo = montMulTo;\n // r = \"xy/R mod m\"; x,y != r\n Montgomery.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Montgomery.prototype.sqrTo = montSqrTo;\n // r = \"x^2/R mod m\"; x != r\n Montgomery.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Montgomery;\n}());\n//#endregion Montgomery\n//#region Barrett\n// Barrett modular reduction\nvar Barrett = /** @class */ (function () {\n function Barrett(m) {\n this.m = m;\n // setup Barrett\n this.r2 = nbi();\n this.q3 = nbi();\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\n this.mu = this.r2.divide(m);\n }\n // Barrett.prototype.convert = barrettConvert;\n Barrett.prototype.convert = function (x) {\n if (x.s < 0 || x.t > 2 * this.m.t) {\n return x.mod(this.m);\n }\n else if (x.compareTo(this.m) < 0) {\n return x;\n }\n else {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n }\n };\n // Barrett.prototype.revert = barrettRevert;\n Barrett.prototype.revert = function (x) {\n return x;\n };\n // Barrett.prototype.reduce = barrettReduce;\n // x = x mod m (HAC 14.42)\n Barrett.prototype.reduce = function (x) {\n x.drShiftTo(this.m.t - 1, this.r2);\n if (x.t > this.m.t + 1) {\n x.t = this.m.t + 1;\n x.clamp();\n }\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\n while (x.compareTo(this.r2) < 0) {\n x.dAddOffset(1, this.m.t + 1);\n }\n x.subTo(this.r2, x);\n while (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Barrett.prototype.mulTo = barrettMulTo;\n // r = x*y mod m; x,y != r\n Barrett.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Barrett.prototype.sqrTo = barrettSqrTo;\n // r = x^2 mod m; x != r\n Barrett.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Barrett;\n}());\n//#endregion\n//#endregion REDUCERS\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\nfunction parseBigInt(str, r) {\n return new BigInteger(str, r);\n}\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\nvar inBrowser = typeof navigator !== \"undefined\";\nif (inBrowser && j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n // am2 avoids a big mult-and-extract completely.\n // Max digit bits should be <= 30 because we do bitwise ops\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\n var xl = x & 0x7fff;\n var xh = x >> 15;\n while (--n >= 0) {\n var l = this[i] & 0x7fff;\n var h = this[i++] >> 15;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n };\n dbits = 30;\n}\nelse if (inBrowser && j_lm && (navigator.appName != \"Netscape\")) {\n // am1: use a single mult and divide to get the high bits,\n // max digit bits should be 26 because\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n var v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n };\n dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n // Alternately, set max digit bits to 28 since some\n // browsers slow down when dealing with 32-bit numbers.\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\n var xl = x & 0x3fff;\n var xh = x >> 14;\n while (--n >= 0) {\n var l = this[i] & 0x3fff;\n var h = this[i++] >> 14;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n };\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1 << dbits) - 1);\nBigInteger.prototype.DV = (1 << dbits);\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nvar BI_RC = [];\nvar rr;\nvar vv;\nrr = \"0\".charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"a\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"A\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nfunction intAt(s, i) {\n var c = BI_RC[s.charCodeAt(i)];\n return (c == null) ? -1 : c;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n var r = nbi();\n r.fromInt(i);\n return r;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n var r = 1;\n var t;\n if ((t = x >>> 16) != 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) != 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) != 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) != 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) != 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"BigInteger\": () => (/* binding */ BigInteger),\n/* harmony export */ \"intAt\": () => (/* binding */ intAt),\n/* harmony export */ \"nbi\": () => (/* binding */ nbi),\n/* harmony export */ \"nbits\": () => (/* binding */ nbits),\n/* harmony export */ \"nbv\": () => (/* binding */ nbv),\n/* harmony export */ \"parseBigInt\": () => (/* binding */ parseBigInt)\n/* harmony export */ });\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./lib/lib/jsbn/util.js\");\n// Copyright (c) 2005 Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\n//#region\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\n//#endregion\n// (public) Constructor\nvar BigInteger = /** @class */ (function () {\n function BigInteger(a, b, c) {\n if (a != null) {\n if (\"number\" == typeof a) {\n this.fromNumber(a, b, c);\n }\n else if (b == null && \"string\" != typeof a) {\n this.fromString(a, 256);\n }\n else {\n this.fromString(a, b);\n }\n }\n }\n //#region PUBLIC\n // BigInteger.prototype.toString = bnToString;\n // (public) return string representation in given radix\n BigInteger.prototype.toString = function (b) {\n if (this.s < 0) {\n return \"-\" + this.negate().toString(b);\n }\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n return this.toRadix(b);\n }\n var km = (1 << k) - 1;\n var d;\n var m = false;\n var r = \"\";\n var i = this.t;\n var p = this.DB - (i * this.DB) % k;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) > 0) {\n m = true;\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n while (i >= 0) {\n if (p < k) {\n d = (this[i] & ((1 << p) - 1)) << (k - p);\n d |= this[--i] >> (p += this.DB - k);\n }\n else {\n d = (this[i] >> (p -= k)) & km;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if (d > 0) {\n m = true;\n }\n if (m) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\n }\n }\n }\n return m ? r : \"0\";\n };\n // BigInteger.prototype.negate = bnNegate;\n // (public) -this\n BigInteger.prototype.negate = function () {\n var r = nbi();\n BigInteger.ZERO.subTo(this, r);\n return r;\n };\n // BigInteger.prototype.abs = bnAbs;\n // (public) |this|\n BigInteger.prototype.abs = function () {\n return (this.s < 0) ? this.negate() : this;\n };\n // BigInteger.prototype.compareTo = bnCompareTo;\n // (public) return + if this > a, - if this < a, 0 if equal\n BigInteger.prototype.compareTo = function (a) {\n var r = this.s - a.s;\n if (r != 0) {\n return r;\n }\n var i = this.t;\n r = i - a.t;\n if (r != 0) {\n return (this.s < 0) ? -r : r;\n }\n while (--i >= 0) {\n if ((r = this[i] - a[i]) != 0) {\n return r;\n }\n }\n return 0;\n };\n // BigInteger.prototype.bitLength = bnBitLength;\n // (public) return the number of bits in \"this\"\n BigInteger.prototype.bitLength = function () {\n if (this.t <= 0) {\n return 0;\n }\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\n };\n // BigInteger.prototype.mod = bnMod;\n // (public) this mod a\n BigInteger.prototype.mod = function (a) {\n var r = nbi();\n this.abs().divRemTo(a, null, r);\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n a.subTo(r, r);\n }\n return r;\n };\n // BigInteger.prototype.modPowInt = bnModPowInt;\n // (public) this^e % m, 0 <= e < 2^32\n BigInteger.prototype.modPowInt = function (e, m) {\n var z;\n if (e < 256 || m.isEven()) {\n z = new Classic(m);\n }\n else {\n z = new Montgomery(m);\n }\n return this.exp(e, z);\n };\n // BigInteger.prototype.clone = bnClone;\n // (public)\n BigInteger.prototype.clone = function () {\n var r = nbi();\n this.copyTo(r);\n return r;\n };\n // BigInteger.prototype.intValue = bnIntValue;\n // (public) return value as integer\n BigInteger.prototype.intValue = function () {\n if (this.s < 0) {\n if (this.t == 1) {\n return this[0] - this.DV;\n }\n else if (this.t == 0) {\n return -1;\n }\n }\n else if (this.t == 1) {\n return this[0];\n }\n else if (this.t == 0) {\n return 0;\n }\n // assumes 16 < DB < 32\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\n };\n // BigInteger.prototype.byteValue = bnByteValue;\n // (public) return value as byte\n BigInteger.prototype.byteValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\n };\n // BigInteger.prototype.shortValue = bnShortValue;\n // (public) return value as short (assumes DB>=16)\n BigInteger.prototype.shortValue = function () {\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\n };\n // BigInteger.prototype.signum = bnSigNum;\n // (public) 0 if this == 0, 1 if this > 0\n BigInteger.prototype.signum = function () {\n if (this.s < 0) {\n return -1;\n }\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\n return 0;\n }\n else {\n return 1;\n }\n };\n // BigInteger.prototype.toByteArray = bnToByteArray;\n // (public) convert to bigendian byte array\n BigInteger.prototype.toByteArray = function () {\n var i = this.t;\n var r = [];\n r[0] = this.s;\n var p = this.DB - (i * this.DB) % 8;\n var d;\n var k = 0;\n if (i-- > 0) {\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\n r[k++] = d | (this.s << (this.DB - p));\n }\n while (i >= 0) {\n if (p < 8) {\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\n d |= this[--i] >> (p += this.DB - 8);\n }\n else {\n d = (this[i] >> (p -= 8)) & 0xff;\n if (p <= 0) {\n p += this.DB;\n --i;\n }\n }\n if ((d & 0x80) != 0) {\n d |= -256;\n }\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\n ++k;\n }\n if (k > 0 || d != this.s) {\n r[k++] = d;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.equals = bnEquals;\n BigInteger.prototype.equals = function (a) {\n return (this.compareTo(a) == 0);\n };\n // BigInteger.prototype.min = bnMin;\n BigInteger.prototype.min = function (a) {\n return (this.compareTo(a) < 0) ? this : a;\n };\n // BigInteger.prototype.max = bnMax;\n BigInteger.prototype.max = function (a) {\n return (this.compareTo(a) > 0) ? this : a;\n };\n // BigInteger.prototype.and = bnAnd;\n BigInteger.prototype.and = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\n return r;\n };\n // BigInteger.prototype.or = bnOr;\n BigInteger.prototype.or = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\n return r;\n };\n // BigInteger.prototype.xor = bnXor;\n BigInteger.prototype.xor = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\n return r;\n };\n // BigInteger.prototype.andNot = bnAndNot;\n BigInteger.prototype.andNot = function (a) {\n var r = nbi();\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\n return r;\n };\n // BigInteger.prototype.not = bnNot;\n // (public) ~this\n BigInteger.prototype.not = function () {\n var r = nbi();\n for (var i = 0; i < this.t; ++i) {\n r[i] = this.DM & ~this[i];\n }\n r.t = this.t;\n r.s = ~this.s;\n return r;\n };\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\n // (public) this << n\n BigInteger.prototype.shiftLeft = function (n) {\n var r = nbi();\n if (n < 0) {\n this.rShiftTo(-n, r);\n }\n else {\n this.lShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.shiftRight = bnShiftRight;\n // (public) this >> n\n BigInteger.prototype.shiftRight = function (n) {\n var r = nbi();\n if (n < 0) {\n this.lShiftTo(-n, r);\n }\n else {\n this.rShiftTo(n, r);\n }\n return r;\n };\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\n // (public) returns index of lowest 1-bit (or -1 if none)\n BigInteger.prototype.getLowestSetBit = function () {\n for (var i = 0; i < this.t; ++i) {\n if (this[i] != 0) {\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\n }\n }\n if (this.s < 0) {\n return this.t * this.DB;\n }\n return -1;\n };\n // BigInteger.prototype.bitCount = bnBitCount;\n // (public) return number of set bits\n BigInteger.prototype.bitCount = function () {\n var r = 0;\n var x = this.s & this.DM;\n for (var i = 0; i < this.t; ++i) {\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\n }\n return r;\n };\n // BigInteger.prototype.testBit = bnTestBit;\n // (public) true iff nth bit is set\n BigInteger.prototype.testBit = function (n) {\n var j = Math.floor(n / this.DB);\n if (j >= this.t) {\n return (this.s != 0);\n }\n return ((this[j] & (1 << (n % this.DB))) != 0);\n };\n // BigInteger.prototype.setBit = bnSetBit;\n // (public) this | (1< 1) {\n var g2 = nbi();\n z.sqrTo(g[1], g2);\n while (n <= km) {\n g[n] = nbi();\n z.mulTo(g2, g[n - 2], g[n]);\n n += 2;\n }\n }\n var j = e.t - 1;\n var w;\n var is1 = true;\n var r2 = nbi();\n var t;\n i = nbits(e[j]) - 1;\n while (j >= 0) {\n if (i >= k1) {\n w = (e[j] >> (i - k1)) & km;\n }\n else {\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\n if (j > 0) {\n w |= e[j - 1] >> (this.DB + i - k1);\n }\n }\n n = k;\n while ((w & 1) == 0) {\n w >>= 1;\n --n;\n }\n if ((i -= n) < 0) {\n i += this.DB;\n --j;\n }\n if (is1) { // ret == 1, don't bother squaring or multiplying it\n g[w].copyTo(r);\n is1 = false;\n }\n else {\n while (n > 1) {\n z.sqrTo(r, r2);\n z.sqrTo(r2, r);\n n -= 2;\n }\n if (n > 0) {\n z.sqrTo(r, r2);\n }\n else {\n t = r;\n r = r2;\n r2 = t;\n }\n z.mulTo(r2, g[w], r);\n }\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\n z.sqrTo(r, r2);\n t = r;\n r = r2;\n r2 = t;\n if (--i < 0) {\n i = this.DB - 1;\n --j;\n }\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.modInverse = bnModInverse;\n // (public) 1/this % m (HAC 14.61)\n BigInteger.prototype.modInverse = function (m) {\n var ac = m.isEven();\n if ((this.isEven() && ac) || m.signum() == 0) {\n return BigInteger.ZERO;\n }\n var u = m.clone();\n var v = this.clone();\n var a = nbv(1);\n var b = nbv(0);\n var c = nbv(0);\n var d = nbv(1);\n while (u.signum() != 0) {\n while (u.isEven()) {\n u.rShiftTo(1, u);\n if (ac) {\n if (!a.isEven() || !b.isEven()) {\n a.addTo(this, a);\n b.subTo(m, b);\n }\n a.rShiftTo(1, a);\n }\n else if (!b.isEven()) {\n b.subTo(m, b);\n }\n b.rShiftTo(1, b);\n }\n while (v.isEven()) {\n v.rShiftTo(1, v);\n if (ac) {\n if (!c.isEven() || !d.isEven()) {\n c.addTo(this, c);\n d.subTo(m, d);\n }\n c.rShiftTo(1, c);\n }\n else if (!d.isEven()) {\n d.subTo(m, d);\n }\n d.rShiftTo(1, d);\n }\n if (u.compareTo(v) >= 0) {\n u.subTo(v, u);\n if (ac) {\n a.subTo(c, a);\n }\n b.subTo(d, b);\n }\n else {\n v.subTo(u, v);\n if (ac) {\n c.subTo(a, c);\n }\n d.subTo(b, d);\n }\n }\n if (v.compareTo(BigInteger.ONE) != 0) {\n return BigInteger.ZERO;\n }\n if (d.compareTo(m) >= 0) {\n return d.subtract(m);\n }\n if (d.signum() < 0) {\n d.addTo(m, d);\n }\n else {\n return d;\n }\n if (d.signum() < 0) {\n return d.add(m);\n }\n else {\n return d;\n }\n };\n // BigInteger.prototype.pow = bnPow;\n // (public) this^e\n BigInteger.prototype.pow = function (e) {\n return this.exp(e, new NullExp());\n };\n // BigInteger.prototype.gcd = bnGCD;\n // (public) gcd(this,a) (HAC 14.54)\n BigInteger.prototype.gcd = function (a) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n return x;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n while (x.signum() > 0) {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n }\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n return y;\n };\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n // (public) test primality with certainty >= 1-.5^t\n BigInteger.prototype.isProbablePrime = function (t) {\n var i;\n var x = this.abs();\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\n for (i = 0; i < lowprimes.length; ++i) {\n if (x[0] == lowprimes[i]) {\n return true;\n }\n }\n return false;\n }\n if (x.isEven()) {\n return false;\n }\n i = 1;\n while (i < lowprimes.length) {\n var m = lowprimes[i];\n var j = i + 1;\n while (j < lowprimes.length && m < lplim) {\n m *= lowprimes[j++];\n }\n m = x.modInt(m);\n while (i < j) {\n if (m % lowprimes[i++] == 0) {\n return false;\n }\n }\n }\n return x.millerRabin(t);\n };\n //#endregion PUBLIC\n //#region PROTECTED\n // BigInteger.prototype.copyTo = bnpCopyTo;\n // (protected) copy this to r\n BigInteger.prototype.copyTo = function (r) {\n for (var i = this.t - 1; i >= 0; --i) {\n r[i] = this[i];\n }\n r.t = this.t;\n r.s = this.s;\n };\n // BigInteger.prototype.fromInt = bnpFromInt;\n // (protected) set from integer value x, -DV <= x < DV\n BigInteger.prototype.fromInt = function (x) {\n this.t = 1;\n this.s = (x < 0) ? -1 : 0;\n if (x > 0) {\n this[0] = x;\n }\n else if (x < -1) {\n this[0] = x + this.DV;\n }\n else {\n this.t = 0;\n }\n };\n // BigInteger.prototype.fromString = bnpFromString;\n // (protected) set from string and radix\n BigInteger.prototype.fromString = function (s, b) {\n var k;\n if (b == 16) {\n k = 4;\n }\n else if (b == 8) {\n k = 3;\n }\n else if (b == 256) {\n k = 8;\n /* byte array */\n }\n else if (b == 2) {\n k = 1;\n }\n else if (b == 32) {\n k = 5;\n }\n else if (b == 4) {\n k = 2;\n }\n else {\n this.fromRadix(s, b);\n return;\n }\n this.t = 0;\n this.s = 0;\n var i = s.length;\n var mi = false;\n var sh = 0;\n while (--i >= 0) {\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\") {\n mi = true;\n }\n continue;\n }\n mi = false;\n if (sh == 0) {\n this[this.t++] = x;\n }\n else if (sh + k > this.DB) {\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\n this[this.t++] = (x >> (this.DB - sh));\n }\n else {\n this[this.t - 1] |= x << sh;\n }\n sh += k;\n if (sh >= this.DB) {\n sh -= this.DB;\n }\n }\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\n this.s = -1;\n if (sh > 0) {\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\n }\n }\n this.clamp();\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.clamp = bnpClamp;\n // (protected) clamp off excess high words\n BigInteger.prototype.clamp = function () {\n var c = this.s & this.DM;\n while (this.t > 0 && this[this.t - 1] == c) {\n --this.t;\n }\n };\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\n // (protected) r = this << n*DB\n BigInteger.prototype.dlShiftTo = function (n, r) {\n var i;\n for (i = this.t - 1; i >= 0; --i) {\n r[i + n] = this[i];\n }\n for (i = n - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r.t = this.t + n;\n r.s = this.s;\n };\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\n // (protected) r = this >> n*DB\n BigInteger.prototype.drShiftTo = function (n, r) {\n for (var i = n; i < this.t; ++i) {\n r[i - n] = this[i];\n }\n r.t = Math.max(this.t - n, 0);\n r.s = this.s;\n };\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\n // (protected) r = this << n\n BigInteger.prototype.lShiftTo = function (n, r) {\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << cbs) - 1;\n var ds = Math.floor(n / this.DB);\n var c = (this.s << bs) & this.DM;\n for (var i = this.t - 1; i >= 0; --i) {\n r[i + ds + 1] = (this[i] >> cbs) | c;\n c = (this[i] & bm) << bs;\n }\n for (var i = ds - 1; i >= 0; --i) {\n r[i] = 0;\n }\n r[ds] = c;\n r.t = this.t + ds + 1;\n r.s = this.s;\n r.clamp();\n };\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\n // (protected) r = this >> n\n BigInteger.prototype.rShiftTo = function (n, r) {\n r.s = this.s;\n var ds = Math.floor(n / this.DB);\n if (ds >= this.t) {\n r.t = 0;\n return;\n }\n var bs = n % this.DB;\n var cbs = this.DB - bs;\n var bm = (1 << bs) - 1;\n r[0] = this[ds] >> bs;\n for (var i = ds + 1; i < this.t; ++i) {\n r[i - ds - 1] |= (this[i] & bm) << cbs;\n r[i - ds] = this[i] >> bs;\n }\n if (bs > 0) {\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\n }\n r.t = this.t - ds;\n r.clamp();\n };\n // BigInteger.prototype.subTo = bnpSubTo;\n // (protected) r = this - a\n BigInteger.prototype.subTo = function (a, r) {\n var i = 0;\n var c = 0;\n var m = Math.min(a.t, this.t);\n while (i < m) {\n c += this[i] - a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n if (a.t < this.t) {\n c -= a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c -= a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c -= a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c < -1) {\n r[i++] = this.DV + c;\n }\n else if (c > 0) {\n r[i++] = c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\n // (protected) r = this * a, r != this,a (HAC 14.12)\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyTo = function (a, r) {\n var x = this.abs();\n var y = a.abs();\n var i = x.t;\n r.t = i + y.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < y.t; ++i) {\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\n }\n r.s = 0;\n r.clamp();\n if (this.s != a.s) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.squareTo = bnpSquareTo;\n // (protected) r = this^2, r != this (HAC 14.16)\n BigInteger.prototype.squareTo = function (r) {\n var x = this.abs();\n var i = r.t = 2 * x.t;\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = 0; i < x.t - 1; ++i) {\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\n r[i + x.t] -= x.DV;\n r[i + x.t + 1] = 1;\n }\n }\n if (r.t > 0) {\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\n }\n r.s = 0;\n r.clamp();\n };\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n // r != q, this != m. q or r may be null.\n BigInteger.prototype.divRemTo = function (m, q, r) {\n var pm = m.abs();\n if (pm.t <= 0) {\n return;\n }\n var pt = this.abs();\n if (pt.t < pm.t) {\n if (q != null) {\n q.fromInt(0);\n }\n if (r != null) {\n this.copyTo(r);\n }\n return;\n }\n if (r == null) {\n r = nbi();\n }\n var y = nbi();\n var ts = this.s;\n var ms = m.s;\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\n if (nsh > 0) {\n pm.lShiftTo(nsh, y);\n pt.lShiftTo(nsh, r);\n }\n else {\n pm.copyTo(y);\n pt.copyTo(r);\n }\n var ys = y.t;\n var y0 = y[ys - 1];\n if (y0 == 0) {\n return;\n }\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\n var d1 = this.FV / yt;\n var d2 = (1 << this.F1) / yt;\n var e = 1 << this.F2;\n var i = r.t;\n var j = i - ys;\n var t = (q == null) ? nbi() : q;\n y.dlShiftTo(j, t);\n if (r.compareTo(t) >= 0) {\n r[r.t++] = 1;\n r.subTo(t, r);\n }\n BigInteger.ONE.dlShiftTo(ys, t);\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\n while (y.t < ys) {\n y[y.t++] = 0;\n }\n while (--j >= 0) {\n // Estimate quotient digit\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\n y.dlShiftTo(j, t);\n r.subTo(t, r);\n while (r[i] < --qd) {\n r.subTo(t, r);\n }\n }\n }\n if (q != null) {\n r.drShiftTo(ys, q);\n if (ts != ms) {\n BigInteger.ZERO.subTo(q, q);\n }\n }\n r.t = ys;\n r.clamp();\n if (nsh > 0) {\n r.rShiftTo(nsh, r);\n } // Denormalize remainder\n if (ts < 0) {\n BigInteger.ZERO.subTo(r, r);\n }\n };\n // BigInteger.prototype.invDigit = bnpInvDigit;\n // (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n // justification:\n // xy == 1 (mod m)\n // xy = 1+km\n // xy(2-xy) = (1+km)(1-km)\n // x[y(2-xy)] = 1-k^2m^2\n // x[y(2-xy)] == 1 (mod m^2)\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n // JS multiply \"overflows\" differently from C/C++, so care is needed here.\n BigInteger.prototype.invDigit = function () {\n if (this.t < 1) {\n return 0;\n }\n var x = this[0];\n if ((x & 1) == 0) {\n return 0;\n }\n var y = x & 3; // y == 1/x mod 2^2\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\n // last step - calculate inverse mod DV directly;\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\n // we really want the negative inverse, and -DV < y < DV\n return (y > 0) ? this.DV - y : -y;\n };\n // BigInteger.prototype.isEven = bnpIsEven;\n // (protected) true iff this is even\n BigInteger.prototype.isEven = function () {\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\n };\n // BigInteger.prototype.exp = bnpExp;\n // (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\n BigInteger.prototype.exp = function (e, z) {\n if (e > 0xffffffff || e < 1) {\n return BigInteger.ONE;\n }\n var r = nbi();\n var r2 = nbi();\n var g = z.convert(this);\n var i = nbits(e) - 1;\n g.copyTo(r);\n while (--i >= 0) {\n z.sqrTo(r, r2);\n if ((e & (1 << i)) > 0) {\n z.mulTo(r2, g, r);\n }\n else {\n var t = r;\n r = r2;\n r2 = t;\n }\n }\n return z.revert(r);\n };\n // BigInteger.prototype.chunkSize = bnpChunkSize;\n // (protected) return x s.t. r^x < DV\n BigInteger.prototype.chunkSize = function (r) {\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\n };\n // BigInteger.prototype.toRadix = bnpToRadix;\n // (protected) convert to radix string\n BigInteger.prototype.toRadix = function (b) {\n if (b == null) {\n b = 10;\n }\n if (this.signum() == 0 || b < 2 || b > 36) {\n return \"0\";\n }\n var cs = this.chunkSize(b);\n var a = Math.pow(b, cs);\n var d = nbv(a);\n var y = nbi();\n var z = nbi();\n var r = \"\";\n this.divRemTo(d, y, z);\n while (y.signum() > 0) {\n r = (a + z.intValue()).toString(b).substr(1) + r;\n y.divRemTo(d, y, z);\n }\n return z.intValue().toString(b) + r;\n };\n // BigInteger.prototype.fromRadix = bnpFromRadix;\n // (protected) convert from radix string\n BigInteger.prototype.fromRadix = function (s, b) {\n this.fromInt(0);\n if (b == null) {\n b = 10;\n }\n var cs = this.chunkSize(b);\n var d = Math.pow(b, cs);\n var mi = false;\n var j = 0;\n var w = 0;\n for (var i = 0; i < s.length; ++i) {\n var x = intAt(s, i);\n if (x < 0) {\n if (s.charAt(i) == \"-\" && this.signum() == 0) {\n mi = true;\n }\n continue;\n }\n w = b * w + x;\n if (++j >= cs) {\n this.dMultiply(d);\n this.dAddOffset(w, 0);\n j = 0;\n w = 0;\n }\n }\n if (j > 0) {\n this.dMultiply(Math.pow(b, j));\n this.dAddOffset(w, 0);\n }\n if (mi) {\n BigInteger.ZERO.subTo(this, this);\n }\n };\n // BigInteger.prototype.fromNumber = bnpFromNumber;\n // (protected) alternate constructor\n BigInteger.prototype.fromNumber = function (a, b, c) {\n if (\"number\" == typeof b) {\n // new BigInteger(int,int,RNG)\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n // force MSB set\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n } // force odd\n while (!this.isProbablePrime(b)) {\n this.dAddOffset(2, 0);\n if (this.bitLength() > a) {\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\n }\n }\n }\n }\n else {\n // new BigInteger(int,RNG)\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\n // (protected) r = this op a (bitwise)\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\n var i;\n var f;\n var m = Math.min(a.t, this.t);\n for (i = 0; i < m; ++i) {\n r[i] = op(this[i], a[i]);\n }\n if (a.t < this.t) {\n f = a.s & this.DM;\n for (i = m; i < this.t; ++i) {\n r[i] = op(this[i], f);\n }\n r.t = this.t;\n }\n else {\n f = this.s & this.DM;\n for (i = m; i < a.t; ++i) {\n r[i] = op(f, a[i]);\n }\n r.t = a.t;\n }\n r.s = op(this.s, a.s);\n r.clamp();\n };\n // BigInteger.prototype.changeBit = bnpChangeBit;\n // (protected) this op (1<>= this.DB;\n }\n if (a.t < this.t) {\n c += a.s;\n while (i < this.t) {\n c += this[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += this.s;\n }\n else {\n c += this.s;\n while (i < a.t) {\n c += a[i];\n r[i++] = c & this.DM;\n c >>= this.DB;\n }\n c += a.s;\n }\n r.s = (c < 0) ? -1 : 0;\n if (c > 0) {\n r[i++] = c;\n }\n else if (c < -1) {\n r[i++] = this.DV + c;\n }\n r.t = i;\n r.clamp();\n };\n // BigInteger.prototype.dMultiply = bnpDMultiply;\n // (protected) this *= n, this >= 0, 1 < n < DV\n BigInteger.prototype.dMultiply = function (n) {\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\n ++this.t;\n this.clamp();\n };\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\n // (protected) this += n << w words, this >= 0\n BigInteger.prototype.dAddOffset = function (n, w) {\n if (n == 0) {\n return;\n }\n while (this.t <= w) {\n this[this.t++] = 0;\n }\n this[w] += n;\n while (this[w] >= this.DV) {\n this[w] -= this.DV;\n if (++w >= this.t) {\n this[this.t++] = 0;\n }\n ++this[w];\n }\n };\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\n // (protected) r = lower n words of \"this * a\", a.t <= n\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\n var i = Math.min(this.t + a.t, n);\n r.s = 0; // assumes a,this >= 0\n r.t = i;\n while (i > 0) {\n r[--i] = 0;\n }\n for (var j = r.t - this.t; i < j; ++i) {\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\n }\n for (var j = Math.min(a.t, n); i < j; ++i) {\n this.am(0, a[i], r, i, 0, n - i);\n }\n r.clamp();\n };\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\n // (protected) r = \"this * a\" without lower n words, n > 0\n // \"this\" should be the larger one if appropriate.\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\n --n;\n var i = r.t = this.t + a.t - n;\n r.s = 0; // assumes a,this >= 0\n while (--i >= 0) {\n r[i] = 0;\n }\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\n }\n r.clamp();\n r.drShiftTo(1, r);\n };\n // BigInteger.prototype.modInt = bnpModInt;\n // (protected) this % n, n < 2^26\n BigInteger.prototype.modInt = function (n) {\n if (n <= 0) {\n return 0;\n }\n var d = this.DV % n;\n var r = (this.s < 0) ? n - 1 : 0;\n if (this.t > 0) {\n if (d == 0) {\n r = this[0] % n;\n }\n else {\n for (var i = this.t - 1; i >= 0; --i) {\n r = (d * r + this[i]) % n;\n }\n }\n }\n return r;\n };\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\n BigInteger.prototype.millerRabin = function (t) {\n var n1 = this.subtract(BigInteger.ONE);\n var k = n1.getLowestSetBit();\n if (k <= 0) {\n return false;\n }\n var r = n1.shiftRight(k);\n t = (t + 1) >> 1;\n if (t > lowprimes.length) {\n t = lowprimes.length;\n }\n var a = nbi();\n for (var i = 0; i < t; ++i) {\n // Pick bases at random, instead of starting at 2\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\n var y = a.modPow(r, this);\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n var j = 1;\n while (j++ < k && y.compareTo(n1) != 0) {\n y = y.modPowInt(2, this);\n if (y.compareTo(BigInteger.ONE) == 0) {\n return false;\n }\n }\n if (y.compareTo(n1) != 0) {\n return false;\n }\n }\n }\n return true;\n };\n // BigInteger.prototype.square = bnSquare;\n // (public) this^2\n BigInteger.prototype.square = function () {\n var r = nbi();\n this.squareTo(r);\n return r;\n };\n //#region ASYNC\n // Public API method\n BigInteger.prototype.gcda = function (a, callback) {\n var x = (this.s < 0) ? this.negate() : this.clone();\n var y = (a.s < 0) ? a.negate() : a.clone();\n if (x.compareTo(y) < 0) {\n var t = x;\n x = y;\n y = t;\n }\n var i = x.getLowestSetBit();\n var g = y.getLowestSetBit();\n if (g < 0) {\n callback(x);\n return;\n }\n if (i < g) {\n g = i;\n }\n if (g > 0) {\n x.rShiftTo(g, x);\n y.rShiftTo(g, y);\n }\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\n var gcda1 = function () {\n if ((i = x.getLowestSetBit()) > 0) {\n x.rShiftTo(i, x);\n }\n if ((i = y.getLowestSetBit()) > 0) {\n y.rShiftTo(i, y);\n }\n if (x.compareTo(y) >= 0) {\n x.subTo(y, x);\n x.rShiftTo(1, x);\n }\n else {\n y.subTo(x, y);\n y.rShiftTo(1, y);\n }\n if (!(x.signum() > 0)) {\n if (g > 0) {\n y.lShiftTo(g, y);\n }\n setTimeout(function () { callback(y); }, 0); // escape\n }\n else {\n setTimeout(gcda1, 0);\n }\n };\n setTimeout(gcda1, 10);\n };\n // (protected) alternate constructor\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\n if (\"number\" == typeof b) {\n if (a < 2) {\n this.fromInt(1);\n }\n else {\n this.fromNumber(a, c);\n if (!this.testBit(a - 1)) {\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\n }\n if (this.isEven()) {\n this.dAddOffset(1, 0);\n }\n var bnp_1 = this;\n var bnpfn1_1 = function () {\n bnp_1.dAddOffset(2, 0);\n if (bnp_1.bitLength() > a) {\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\n }\n if (bnp_1.isProbablePrime(b)) {\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(bnpfn1_1, 0);\n }\n };\n setTimeout(bnpfn1_1, 0);\n }\n }\n else {\n var x = [];\n var t = a & 7;\n x.length = (a >> 3) + 1;\n b.nextBytes(x);\n if (t > 0) {\n x[0] &= ((1 << t) - 1);\n }\n else {\n x[0] = 0;\n }\n this.fromString(x, 256);\n }\n };\n return BigInteger;\n}());\n\n//#region REDUCERS\n//#region NullExp\nvar NullExp = /** @class */ (function () {\n function NullExp() {\n }\n // NullExp.prototype.convert = nNop;\n NullExp.prototype.convert = function (x) {\n return x;\n };\n // NullExp.prototype.revert = nNop;\n NullExp.prototype.revert = function (x) {\n return x;\n };\n // NullExp.prototype.mulTo = nMulTo;\n NullExp.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n };\n // NullExp.prototype.sqrTo = nSqrTo;\n NullExp.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n };\n return NullExp;\n}());\n// Modular reduction using \"classic\" algorithm\nvar Classic = /** @class */ (function () {\n function Classic(m) {\n this.m = m;\n }\n // Classic.prototype.convert = cConvert;\n Classic.prototype.convert = function (x) {\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\n return x.mod(this.m);\n }\n else {\n return x;\n }\n };\n // Classic.prototype.revert = cRevert;\n Classic.prototype.revert = function (x) {\n return x;\n };\n // Classic.prototype.reduce = cReduce;\n Classic.prototype.reduce = function (x) {\n x.divRemTo(this.m, null, x);\n };\n // Classic.prototype.mulTo = cMulTo;\n Classic.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Classic.prototype.sqrTo = cSqrTo;\n Classic.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Classic;\n}());\n//#endregion\n//#region Montgomery\n// Montgomery reduction\nvar Montgomery = /** @class */ (function () {\n function Montgomery(m) {\n this.m = m;\n this.mp = m.invDigit();\n this.mpl = this.mp & 0x7fff;\n this.mph = this.mp >> 15;\n this.um = (1 << (m.DB - 15)) - 1;\n this.mt2 = 2 * m.t;\n }\n // Montgomery.prototype.convert = montConvert;\n // xR mod m\n Montgomery.prototype.convert = function (x) {\n var r = nbi();\n x.abs().dlShiftTo(this.m.t, r);\n r.divRemTo(this.m, null, r);\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\n this.m.subTo(r, r);\n }\n return r;\n };\n // Montgomery.prototype.revert = montRevert;\n // x/R mod m\n Montgomery.prototype.revert = function (x) {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n };\n // Montgomery.prototype.reduce = montReduce;\n // x = x/R mod m (HAC 14.32)\n Montgomery.prototype.reduce = function (x) {\n while (x.t <= this.mt2) {\n // pad x so am has enough room later\n x[x.t++] = 0;\n }\n for (var i = 0; i < this.m.t; ++i) {\n // faster way of calculating u0 = x[i]*mp mod DV\n var j = x[i] & 0x7fff;\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\n // use am to combine the multiply-shift-add into one call\n j = i + this.m.t;\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\n // propagate carry\n while (x[j] >= x.DV) {\n x[j] -= x.DV;\n x[++j]++;\n }\n }\n x.clamp();\n x.drShiftTo(this.m.t, x);\n if (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Montgomery.prototype.mulTo = montMulTo;\n // r = \"xy/R mod m\"; x,y != r\n Montgomery.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Montgomery.prototype.sqrTo = montSqrTo;\n // r = \"x^2/R mod m\"; x != r\n Montgomery.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Montgomery;\n}());\n//#endregion Montgomery\n//#region Barrett\n// Barrett modular reduction\nvar Barrett = /** @class */ (function () {\n function Barrett(m) {\n this.m = m;\n // setup Barrett\n this.r2 = nbi();\n this.q3 = nbi();\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\n this.mu = this.r2.divide(m);\n }\n // Barrett.prototype.convert = barrettConvert;\n Barrett.prototype.convert = function (x) {\n if (x.s < 0 || x.t > 2 * this.m.t) {\n return x.mod(this.m);\n }\n else if (x.compareTo(this.m) < 0) {\n return x;\n }\n else {\n var r = nbi();\n x.copyTo(r);\n this.reduce(r);\n return r;\n }\n };\n // Barrett.prototype.revert = barrettRevert;\n Barrett.prototype.revert = function (x) {\n return x;\n };\n // Barrett.prototype.reduce = barrettReduce;\n // x = x mod m (HAC 14.42)\n Barrett.prototype.reduce = function (x) {\n x.drShiftTo(this.m.t - 1, this.r2);\n if (x.t > this.m.t + 1) {\n x.t = this.m.t + 1;\n x.clamp();\n }\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\n while (x.compareTo(this.r2) < 0) {\n x.dAddOffset(1, this.m.t + 1);\n }\n x.subTo(this.r2, x);\n while (x.compareTo(this.m) >= 0) {\n x.subTo(this.m, x);\n }\n };\n // Barrett.prototype.mulTo = barrettMulTo;\n // r = x*y mod m; x,y != r\n Barrett.prototype.mulTo = function (x, y, r) {\n x.multiplyTo(y, r);\n this.reduce(r);\n };\n // Barrett.prototype.sqrTo = barrettSqrTo;\n // r = x^2 mod m; x != r\n Barrett.prototype.sqrTo = function (x, r) {\n x.squareTo(r);\n this.reduce(r);\n };\n return Barrett;\n}());\n//#endregion\n//#endregion REDUCERS\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\nfunction parseBigInt(str, r) {\n return new BigInteger(str, r);\n}\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\nvar inBrowser = typeof navigator !== \"undefined\";\nif (inBrowser && j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n // am2 avoids a big mult-and-extract completely.\n // Max digit bits should be <= 30 because we do bitwise ops\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\n var xl = x & 0x7fff;\n var xh = x >> 15;\n while (--n >= 0) {\n var l = this[i] & 0x7fff;\n var h = this[i++] >> 15;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\n w[j++] = l & 0x3fffffff;\n }\n return c;\n };\n dbits = 30;\n}\nelse if (inBrowser && j_lm && (navigator.appName != \"Netscape\")) {\n // am1: use a single mult and divide to get the high bits,\n // max digit bits should be 26 because\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\n while (--n >= 0) {\n var v = x * this[i++] + w[j] + c;\n c = Math.floor(v / 0x4000000);\n w[j++] = v & 0x3ffffff;\n }\n return c;\n };\n dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n // Alternately, set max digit bits to 28 since some\n // browsers slow down when dealing with 32-bit numbers.\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\n var xl = x & 0x3fff;\n var xh = x >> 14;\n while (--n >= 0) {\n var l = this[i] & 0x3fff;\n var h = this[i++] >> 14;\n var m = xh * l + h * xl;\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\n c = (l >> 28) + (m >> 14) + xh * h;\n w[j++] = l & 0xfffffff;\n }\n return c;\n };\n dbits = 28;\n}\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1 << dbits) - 1);\nBigInteger.prototype.DV = (1 << dbits);\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\nBigInteger.prototype.F1 = BI_FP - dbits;\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\n// Digit conversions\nvar BI_RC = [];\nvar rr;\nvar vv;\nrr = \"0\".charCodeAt(0);\nfor (vv = 0; vv <= 9; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"a\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nrr = \"A\".charCodeAt(0);\nfor (vv = 10; vv < 36; ++vv) {\n BI_RC[rr++] = vv;\n}\nfunction intAt(s, i) {\n var c = BI_RC[s.charCodeAt(i)];\n return (c == null) ? -1 : c;\n}\n// return bigint initialized to value\nfunction nbv(i) {\n var r = nbi();\n r.fromInt(i);\n return r;\n}\n// returns bit length of the integer x\nfunction nbits(x) {\n var r = 1;\n var t;\n if ((t = x >>> 16) != 0) {\n x = t;\n r += 16;\n }\n if ((t = x >> 8) != 0) {\n x = t;\n r += 8;\n }\n if ((t = x >> 4) != 0) {\n x = t;\n r += 4;\n }\n if ((t = x >> 2) != 0) {\n x = t;\n r += 2;\n }\n if ((t = x >> 1) != 0) {\n x = t;\n r += 1;\n }\n return r;\n}\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/prng4.js": - /*!*******************************!*\ - !*** ./lib/lib/jsbn/prng4.js ***! - \*******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/prng4.js": +/*!*******************************!*\ + !*** ./lib/lib/jsbn/prng4.js ***! + \*******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Arcfour\": () => (/* binding */ Arcfour),\n/* harmony export */ \"prng_newstate\": () => (/* binding */ prng_newstate),\n/* harmony export */ \"rng_psize\": () => (/* binding */ rng_psize)\n/* harmony export */ });\n// prng4.js - uses Arcfour as a PRNG\nvar Arcfour = /** @class */ (function () {\n function Arcfour() {\n this.i = 0;\n this.j = 0;\n this.S = [];\n }\n // Arcfour.prototype.init = ARC4init;\n // Initialize arcfour context from key, an array of ints, each from [0..255]\n Arcfour.prototype.init = function (key) {\n var i;\n var j;\n var t;\n for (i = 0; i < 256; ++i) {\n this.S[i] = i;\n }\n j = 0;\n for (i = 0; i < 256; ++i) {\n j = (j + this.S[i] + key[i % key.length]) & 255;\n t = this.S[i];\n this.S[i] = this.S[j];\n this.S[j] = t;\n }\n this.i = 0;\n this.j = 0;\n };\n // Arcfour.prototype.next = ARC4next;\n Arcfour.prototype.next = function () {\n var t;\n this.i = (this.i + 1) & 255;\n this.j = (this.j + this.S[this.i]) & 255;\n t = this.S[this.i];\n this.S[this.i] = this.S[this.j];\n this.S[this.j] = t;\n return this.S[(t + this.S[this.i]) & 255];\n };\n return Arcfour;\n}());\n\n// Plug in your RNG constructor here\nfunction prng_newstate() {\n return new Arcfour();\n}\n// Pool size must be a multiple of 4 and greater than 32.\n// An array of bytes the size of the pool will be passed to init()\nvar rng_psize = 256;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/rng.js": - /*!*****************************!*\ - !*** ./lib/lib/jsbn/rng.js ***! - \*****************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/rng.js": +/*!*****************************!*\ + !*** ./lib/lib/jsbn/rng.js ***! + \*****************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"SecureRandom\": () => (/* binding */ SecureRandom)\n/* harmony export */ });\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ \"./lib/lib/jsbn/prng4.js\");\n// Random number generator - requires a PRNG backend, e.g. prng4.js\n\nvar rng_state;\nvar rng_pool = null;\nvar rng_pptr;\n// Initialize the pool with junk if needed.\nif (rng_pool == null) {\n rng_pool = [];\n rng_pptr = 0;\n var t = void 0;\n if (typeof window !== 'undefined' && window.crypto && window.crypto.getRandomValues) {\n // Extract entropy (2048 bits) from RNG if available\n var z = new Uint32Array(256);\n window.crypto.getRandomValues(z);\n for (t = 0; t < z.length; ++t) {\n rng_pool[rng_pptr++] = z[t] & 255;\n }\n }\n // Use mouse events for entropy, if we do not have enough entropy by the time\n // we need it, entropy will be generated by Math.random.\n var count = 0;\n var onMouseMoveListener_1 = function (ev) {\n count = count || 0;\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n if (window.removeEventListener) {\n window.removeEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.detachEvent) {\n window.detachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n return;\n }\n try {\n var mouseCoordinates = ev.x + ev.y;\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\n count += 1;\n }\n catch (e) {\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\n }\n };\n if (typeof window !== 'undefined') {\n if (window.addEventListener) {\n window.addEventListener(\"mousemove\", onMouseMoveListener_1, false);\n }\n else if (window.attachEvent) {\n window.attachEvent(\"onmousemove\", onMouseMoveListener_1);\n }\n }\n}\nfunction rng_get_byte() {\n if (rng_state == null) {\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\n var random = Math.floor(65536 * Math.random());\n rng_pool[rng_pptr++] = random & 255;\n }\n rng_state.init(rng_pool);\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\n rng_pool[rng_pptr] = 0;\n }\n rng_pptr = 0;\n }\n // TODO: allow reseeding after first request\n return rng_state.next();\n}\nvar SecureRandom = /** @class */ (function () {\n function SecureRandom() {\n }\n SecureRandom.prototype.nextBytes = function (ba) {\n for (var i = 0; i < ba.length; ++i) {\n ba[i] = rng_get_byte();\n }\n };\n return SecureRandom;\n}());\n\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/rsa.js": - /*!*****************************!*\ - !*** ./lib/lib/jsbn/rsa.js ***! - \*****************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/rsa.js": +/*!*****************************!*\ + !*** ./lib/lib/jsbn/rsa.js ***! + \*****************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E, D) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\n // Set the private key fields N, e, d and CRT params from hex strings\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.generate = RSAGenerate;\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generate = function (B, E) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n for (;;) {\n for (;;) {\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\n break;\n }\n }\n for (;;) {\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\n break;\n }\n }\n if (this.p.compareTo(this.q) <= 0) {\n var t = this.p;\n this.p = this.q;\n this.q = t;\n }\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n this.n = this.p.multiply(this.q);\n this.d = ee.modInverse(phi);\n this.dmp1 = this.d.mod(p1);\n this.dmq1 = this.d.mod(q1);\n this.coeff = this.q.modInverse(this.p);\n break;\n }\n }\n };\n // RSAKey.prototype.decrypt = RSADecrypt;\n // Return the PKCS#1 RSA decryption of \"ctext\".\n // \"ctext\" is an even-length hex string and the output is a plain string.\n RSAKey.prototype.decrypt = function (ctext) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\n var m = this.doPrivate(c);\n if (m == null) {\n return null;\n }\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\n };\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generateAsync = function (B, E, callback) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n var rsa = this;\n // These functions have non-descript names because they were originally for(;;) loops.\n // I don't know about cryptography to give them better names than loop1-4.\n var loop1 = function () {\n var loop4 = function () {\n if (rsa.p.compareTo(rsa.q) <= 0) {\n var t = rsa.p;\n rsa.p = rsa.q;\n rsa.q = t;\n }\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n rsa.n = rsa.p.multiply(rsa.q);\n rsa.d = ee.modInverse(phi);\n rsa.dmp1 = rsa.d.mod(p1);\n rsa.dmq1 = rsa.d.mod(q1);\n rsa.coeff = rsa.q.modInverse(rsa.p);\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(loop1, 0);\n }\n };\n var loop3 = function () {\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\n setTimeout(loop4, 0);\n }\n else {\n setTimeout(loop3, 0);\n }\n });\n });\n };\n var loop2 = function () {\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\n setTimeout(loop3, 0);\n }\n else {\n setTimeout(loop2, 0);\n }\n });\n });\n };\n setTimeout(loop2, 0);\n };\n setTimeout(loop1, 0);\n };\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\n var header = getDigestHeader(digestName);\n var digest = header + digestMethod(text).toString();\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\n if (m == null) {\n return null;\n }\n var c = this.doPrivate(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n if ((h.length & 1) == 0) {\n return h;\n }\n else {\n return \"0\" + h;\n }\n };\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\n var m = this.doPublic(c);\n if (m == null) {\n return null;\n }\n var unpadded = m.toString(16).replace(/^1f+00/, \"\");\n var digest = removeDigestHeader(unpadded);\n return digest == digestMethod(text).toString();\n };\n return RSAKey;\n}());\n\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\nfunction pkcs1unpad2(d, n) {\n var b = d.toByteArray();\n var i = 0;\n while (i < b.length && b[i] == 0) {\n ++i;\n }\n if (b.length - i != n - 1 || b[i] != 2) {\n return null;\n }\n ++i;\n while (b[i] != 0) {\n if (++i >= b.length) {\n return null;\n }\n }\n var ret = \"\";\n while (++i < b.length) {\n var c = b[i] & 255;\n if (c < 128) { // utf-8 decode\n ret += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\n ++i;\n }\n else {\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\n i += 2;\n }\n }\n return ret;\n}\n// https://tools.ietf.org/html/rfc3447#page-43\nvar DIGEST_HEADERS = {\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n ripemd160: \"3021300906052b2403020105000414\"\n};\nfunction getDigestHeader(name) {\n return DIGEST_HEADERS[name] || \"\";\n}\nfunction removeDigestHeader(str) {\n for (var name_1 in DIGEST_HEADERS) {\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\n var header = DIGEST_HEADERS[name_1];\n var len = header.length;\n if (str.substr(0, len) == header) {\n return str.substr(len);\n }\n }\n }\n return str;\n}\n// Return the PKCS#1 RSA encryption of \"text\" as a Base64-encoded string\n// function RSAEncryptB64(text) {\n// var h = this.encrypt(text);\n// if(h) return hex2b64(h); else return null;\n// }\n// public\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"RSAKey\": () => (/* binding */ RSAKey)\n/* harmony export */ });\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ \"./lib/lib/jsbn/rng.js\");\n// Depends on jsbn.js and rng.js\n// Version 1.1: support utf-8 encoding in pkcs1pad2\n// convert a (hex) string to a bignum object\n\n\n// function linebrk(s,n) {\n// var ret = \"\";\n// var i = 0;\n// while(i + n < s.length) {\n// ret += s.substring(i,i+n) + \"\\n\";\n// i += n;\n// }\n// return ret + s.substring(i,s.length);\n// }\n// function byte2Hex(b) {\n// if(b < 0x10)\n// return \"0\" + b.toString(16);\n// else\n// return b.toString(16);\n// }\nfunction pkcs1pad1(s, n) {\n if (n < s.length + 22) {\n console.error(\"Message too long for RSA\");\n return null;\n }\n var len = n - s.length - 6;\n var filler = \"\";\n for (var f = 0; f < len; f += 2) {\n filler += \"ff\";\n }\n var m = \"0001\" + filler + \"00\" + s;\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\n}\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\nfunction pkcs1pad2(s, n) {\n if (n < s.length + 11) { // TODO: fix for utf-8\n console.error(\"Message too long for RSA\");\n return null;\n }\n var ba = [];\n var i = s.length - 1;\n while (i >= 0 && n > 0) {\n var c = s.charCodeAt(i--);\n if (c < 128) { // encode using utf-8\n ba[--n] = c;\n }\n else if ((c > 127) && (c < 2048)) {\n ba[--n] = (c & 63) | 128;\n ba[--n] = (c >> 6) | 192;\n }\n else {\n ba[--n] = (c & 63) | 128;\n ba[--n] = ((c >> 6) & 63) | 128;\n ba[--n] = (c >> 12) | 224;\n }\n }\n ba[--n] = 0;\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var x = [];\n while (n > 2) { // random non-zero pad\n x[0] = 0;\n while (x[0] == 0) {\n rng.nextBytes(x);\n }\n ba[--n] = x[0];\n }\n ba[--n] = 2;\n ba[--n] = 0;\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\n}\n// \"empty\" RSA key constructor\nvar RSAKey = /** @class */ (function () {\n function RSAKey() {\n this.n = null;\n this.e = 0;\n this.d = null;\n this.p = null;\n this.q = null;\n this.dmp1 = null;\n this.dmq1 = null;\n this.coeff = null;\n }\n //#region PROTECTED\n // protected\n // RSAKey.prototype.doPublic = RSADoPublic;\n // Perform raw public operation on \"x\": return x^e (mod n)\n RSAKey.prototype.doPublic = function (x) {\n return x.modPowInt(this.e, this.n);\n };\n // RSAKey.prototype.doPrivate = RSADoPrivate;\n // Perform raw private operation on \"x\": return x^d (mod n)\n RSAKey.prototype.doPrivate = function (x) {\n if (this.p == null || this.q == null) {\n return x.modPow(this.d, this.n);\n }\n // TODO: re-calculate any missing CRT params\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\n while (xp.compareTo(xq) < 0) {\n xp = xp.add(this.p);\n }\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\n };\n //#endregion PROTECTED\n //#region PUBLIC\n // RSAKey.prototype.setPublic = RSASetPublic;\n // Set the public key fields N and e from hex strings\n RSAKey.prototype.setPublic = function (N, E) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n }\n else {\n console.error(\"Invalid RSA public key\");\n }\n };\n // RSAKey.prototype.encrypt = RSAEncrypt;\n // Return the PKCS#1 RSA encryption of \"text\" as an even-length hex string\n RSAKey.prototype.encrypt = function (text) {\n var maxLength = (this.n.bitLength() + 7) >> 3;\n var m = pkcs1pad2(text, maxLength);\n if (m == null) {\n return null;\n }\n var c = this.doPublic(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n var length = h.length;\n // fix zero before result\n for (var i = 0; i < maxLength * 2 - length; i++) {\n h = \"0\" + h;\n }\n return h;\n };\n // RSAKey.prototype.setPrivate = RSASetPrivate;\n // Set the private key fields N, e, and d from hex strings\n RSAKey.prototype.setPrivate = function (N, E, D) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\n // Set the private key fields N, e, d and CRT params from hex strings\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\n if (N != null && E != null && N.length > 0 && E.length > 0) {\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\n this.e = parseInt(E, 16);\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\n }\n else {\n console.error(\"Invalid RSA private key\");\n }\n };\n // RSAKey.prototype.generate = RSAGenerate;\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generate = function (B, E) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n for (;;) {\n for (;;) {\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\n break;\n }\n }\n for (;;) {\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\n break;\n }\n }\n if (this.p.compareTo(this.q) <= 0) {\n var t = this.p;\n this.p = this.q;\n this.q = t;\n }\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n this.n = this.p.multiply(this.q);\n this.d = ee.modInverse(phi);\n this.dmp1 = this.d.mod(p1);\n this.dmq1 = this.d.mod(q1);\n this.coeff = this.q.modInverse(this.p);\n break;\n }\n }\n };\n // RSAKey.prototype.decrypt = RSADecrypt;\n // Return the PKCS#1 RSA decryption of \"ctext\".\n // \"ctext\" is an even-length hex string and the output is a plain string.\n RSAKey.prototype.decrypt = function (ctext) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\n var m = this.doPrivate(c);\n if (m == null) {\n return null;\n }\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\n };\n // Generate a new random private key B bits long, using public expt E\n RSAKey.prototype.generateAsync = function (B, E, callback) {\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\n var qs = B >> 1;\n this.e = parseInt(E, 16);\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\n var rsa = this;\n // These functions have non-descript names because they were originally for(;;) loops.\n // I don't know about cryptography to give them better names than loop1-4.\n var loop1 = function () {\n var loop4 = function () {\n if (rsa.p.compareTo(rsa.q) <= 0) {\n var t = rsa.p;\n rsa.p = rsa.q;\n rsa.q = t;\n }\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n var phi = p1.multiply(q1);\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\n rsa.n = rsa.p.multiply(rsa.q);\n rsa.d = ee.modInverse(phi);\n rsa.dmp1 = rsa.d.mod(p1);\n rsa.dmq1 = rsa.d.mod(q1);\n rsa.coeff = rsa.q.modInverse(rsa.p);\n setTimeout(function () { callback(); }, 0); // escape\n }\n else {\n setTimeout(loop1, 0);\n }\n };\n var loop3 = function () {\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\n setTimeout(loop4, 0);\n }\n else {\n setTimeout(loop3, 0);\n }\n });\n });\n };\n var loop2 = function () {\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\n setTimeout(loop3, 0);\n }\n else {\n setTimeout(loop2, 0);\n }\n });\n });\n };\n setTimeout(loop2, 0);\n };\n setTimeout(loop1, 0);\n };\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\n var header = getDigestHeader(digestName);\n var digest = header + digestMethod(text).toString();\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\n if (m == null) {\n return null;\n }\n var c = this.doPrivate(m);\n if (c == null) {\n return null;\n }\n var h = c.toString(16);\n if ((h.length & 1) == 0) {\n return h;\n }\n else {\n return \"0\" + h;\n }\n };\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\n var m = this.doPublic(c);\n if (m == null) {\n return null;\n }\n var unpadded = m.toString(16).replace(/^1f+00/, \"\");\n var digest = removeDigestHeader(unpadded);\n return digest == digestMethod(text).toString();\n };\n return RSAKey;\n}());\n\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\nfunction pkcs1unpad2(d, n) {\n var b = d.toByteArray();\n var i = 0;\n while (i < b.length && b[i] == 0) {\n ++i;\n }\n if (b.length - i != n - 1 || b[i] != 2) {\n return null;\n }\n ++i;\n while (b[i] != 0) {\n if (++i >= b.length) {\n return null;\n }\n }\n var ret = \"\";\n while (++i < b.length) {\n var c = b[i] & 255;\n if (c < 128) { // utf-8 decode\n ret += String.fromCharCode(c);\n }\n else if ((c > 191) && (c < 224)) {\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\n ++i;\n }\n else {\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\n i += 2;\n }\n }\n return ret;\n}\n// https://tools.ietf.org/html/rfc3447#page-43\nvar DIGEST_HEADERS = {\n md2: \"3020300c06082a864886f70d020205000410\",\n md5: \"3020300c06082a864886f70d020505000410\",\n sha1: \"3021300906052b0e03021a05000414\",\n sha224: \"302d300d06096086480165030402040500041c\",\n sha256: \"3031300d060960864801650304020105000420\",\n sha384: \"3041300d060960864801650304020205000430\",\n sha512: \"3051300d060960864801650304020305000440\",\n ripemd160: \"3021300906052b2403020105000414\"\n};\nfunction getDigestHeader(name) {\n return DIGEST_HEADERS[name] || \"\";\n}\nfunction removeDigestHeader(str) {\n for (var name_1 in DIGEST_HEADERS) {\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\n var header = DIGEST_HEADERS[name_1];\n var len = header.length;\n if (str.substr(0, len) == header) {\n return str.substr(len);\n }\n }\n }\n return str;\n}\n// Return the PKCS#1 RSA encryption of \"text\" as a Base64-encoded string\n// function RSAEncryptB64(text) {\n// var h = this.encrypt(text);\n// if(h) return hex2b64(h); else return null;\n// }\n// public\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsbn/util.js": - /*!******************************!*\ - !*** ./lib/lib/jsbn/util.js ***! - \******************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsbn/util.js": +/*!******************************!*\ + !*** ./lib/lib/jsbn/util.js ***! + \******************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"cbit\": () => (/* binding */ cbit),\n/* harmony export */ \"int2char\": () => (/* binding */ int2char),\n/* harmony export */ \"lbit\": () => (/* binding */ lbit),\n/* harmony export */ \"op_and\": () => (/* binding */ op_and),\n/* harmony export */ \"op_andnot\": () => (/* binding */ op_andnot),\n/* harmony export */ \"op_or\": () => (/* binding */ op_or),\n/* harmony export */ \"op_xor\": () => (/* binding */ op_xor)\n/* harmony export */ });\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nfunction int2char(n) {\n return BI_RM.charAt(n);\n}\n//#region BIT_OPERATIONS\n// (public) this & a\nfunction op_and(x, y) {\n return x & y;\n}\n// (public) this | a\nfunction op_or(x, y) {\n return x | y;\n}\n// (public) this ^ a\nfunction op_xor(x, y) {\n return x ^ y;\n}\n// (public) this & ~a\nfunction op_andnot(x, y) {\n return x & ~y;\n}\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n if (x == 0) {\n return -1;\n }\n var r = 0;\n if ((x & 0xffff) == 0) {\n x >>= 16;\n r += 16;\n }\n if ((x & 0xff) == 0) {\n x >>= 8;\n r += 8;\n }\n if ((x & 0xf) == 0) {\n x >>= 4;\n r += 4;\n }\n if ((x & 3) == 0) {\n x >>= 2;\n r += 2;\n }\n if ((x & 1) == 0) {\n ++r;\n }\n return r;\n}\n// return number of 1 bits in x\nfunction cbit(x) {\n var r = 0;\n while (x != 0) {\n x &= x - 1;\n ++r;\n }\n return r;\n}\n//#endregion BIT_OPERATIONS\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsrsasign/asn1-1.0.js": - /*!***************************************!*\ - !*** ./lib/lib/jsrsasign/asn1-1.0.js ***! - \***************************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsrsasign/asn1-1.0.js": +/*!***************************************!*\ + !*** ./lib/lib/jsrsasign/asn1-1.0.js ***! + \***************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license MIT License\n */\n/**\n * kjur's class library name space\n *

\n * This name space provides following name spaces:\n *

    \n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n *

\n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n *

PROVIDING ASN.1 PRIMITIVES

\n * Here are ASN.1 DER primitive classes.\n *
    \n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \n *
\n *

OTHER ASN.1 CLASSES

\n *
    \n *
  • {@link KJUR.asn1.ASN1Object}
  • \n *
  • {@link KJUR.asn1.DERAbstractString}
  • \n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \n *
\n *

SUB NAME SPACES

\n *
    \n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n }\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n h = biNeg.toString(16).replace(/^-/, '');\n }\n return h;\n };\n /**\n * get PEM string from hexadecimal data and header string\n * @name getPEMStringFromHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} dataHex hexadecimal string of PEM body\n * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')\n * @return {String} PEM formatted string of input data\n * @description\n * This method converts a hexadecimal string to a PEM string with\n * a specified header. Its line break will be CRLF(\"\\r\\n\").\n * @example\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');\n * // value of pem will be:\n * -----BEGIN PRIVATE KEY-----\n * YWFh\n * -----END PRIVATE KEY-----\n */\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\n return hextopem(dataHex, pemHeader);\n };\n /**\n * generate ASN1Object specifed by JSON parameters\n * @name newObject\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return {KJUR.asn1.ASN1Object} generated object\n * @since asn1 1.0.3\n * @description\n * generate any ASN1Object specified by JSON param\n * including ASN.1 primitive or structured.\n * Generally 'param' can be described as follows:\n *
\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\n *
\n * 'TYPE-OF-ASN1OBJ' can be one of following symbols:\n *
    \n *
  • 'bool' - DERBoolean
  • \n *
  • 'int' - DERInteger
  • \n *
  • 'bitstr' - DERBitString
  • \n *
  • 'octstr' - DEROctetString
  • \n *
  • 'null' - DERNull
  • \n *
  • 'oid' - DERObjectIdentifier
  • \n *
  • 'enum' - DEREnumerated
  • \n *
  • 'utf8str' - DERUTF8String
  • \n *
  • 'numstr' - DERNumericString
  • \n *
  • 'prnstr' - DERPrintableString
  • \n *
  • 'telstr' - DERTeletexString
  • \n *
  • 'ia5str' - DERIA5String
  • \n *
  • 'utctime' - DERUTCTime
  • \n *
  • 'gentime' - DERGeneralizedTime
  • \n *
  • 'seq' - DERSequence
  • \n *
  • 'set' - DERSet
  • \n *
  • 'tag' - DERTaggedObject
  • \n *
\n * @example\n * newObject({'prnstr': 'aaa'});\n * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})\n * // ASN.1 Tagged Object\n * newObject({'tag': {'tag': 'a1',\n * 'explicit': true,\n * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});\n * // more simple representation of ASN.1 Tagged Object\n * newObject({'tag': ['a1',\n * true,\n * {'seq': [\n * {'int': 3},\n * {'prnstr': 'aaa'}]}\n * ]});\n */\n this.newObject = function (param) {\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\n var keys = Object.keys(param);\n if (keys.length != 1)\n throw \"key of param shall be only one.\";\n var key = keys[0];\n if (\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\".indexOf(\":\" + key + \":\") == -1)\n throw \"undefined key: \" + key;\n if (key == \"bool\")\n return new _DERBoolean(param[key]);\n if (key == \"int\")\n return new _DERInteger(param[key]);\n if (key == \"bitstr\")\n return new _DERBitString(param[key]);\n if (key == \"octstr\")\n return new _DEROctetString(param[key]);\n if (key == \"null\")\n return new _DERNull(param[key]);\n if (key == \"oid\")\n return new _DERObjectIdentifier(param[key]);\n if (key == \"enum\")\n return new _DEREnumerated(param[key]);\n if (key == \"utf8str\")\n return new _DERUTF8String(param[key]);\n if (key == \"numstr\")\n return new _DERNumericString(param[key]);\n if (key == \"prnstr\")\n return new _DERPrintableString(param[key]);\n if (key == \"telstr\")\n return new _DERTeletexString(param[key]);\n if (key == \"ia5str\")\n return new _DERIA5String(param[key]);\n if (key == \"utctime\")\n return new _DERUTCTime(param[key]);\n if (key == \"gentime\")\n return new _DERGeneralizedTime(param[key]);\n if (key == \"seq\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSequence({ 'array': a });\n }\n if (key == \"set\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSet({ 'array': a });\n }\n if (key == \"tag\") {\n var tagParam = param[key];\n if (Object.prototype.toString.call(tagParam) === '[object Array]' &&\n tagParam.length == 3) {\n var obj = _newObject(tagParam[2]);\n return new _DERTaggedObject({ tag: tagParam[0],\n explicit: tagParam[1],\n obj: obj });\n }\n else {\n var newParam = {};\n if (tagParam.explicit !== undefined)\n newParam.explicit = tagParam.explicit;\n if (tagParam.tag !== undefined)\n newParam.tag = tagParam.tag;\n if (tagParam.obj === undefined)\n throw \"obj shall be specified for 'tag'.\";\n newParam.obj = _newObject(tagParam.obj);\n return new _DERTaggedObject(newParam);\n }\n }\n };\n /**\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\n * @name jsonToASN1HEX\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return hexadecimal string of ASN1Object\n * @since asn1 1.0.4\n * @description\n * As for ASN.1 object representation of JSON object,\n * please see {@link newObject}.\n * @example\n * jsonToASN1HEX({'prnstr': 'aaa'});\n */\n this.jsonToASN1HEX = function (param) {\n var asn1Obj = this.newObject(param);\n return asn1Obj.getEncodedHex();\n };\n};\n/**\n * get dot noted oid number string from hexadecimal value of OID\n * @name oidHexToInt\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} hex hexadecimal value of object identifier\n * @return {String} dot noted string of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from hexadecimal string representation of\n * ASN.1 value of object identifier to oid number string.\n * @example\n * KJUR.asn1.ASN1Util.oidHexToInt('550406') → \"2.5.4.6\"\n */\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\n var s = \"\";\n var i01 = parseInt(hex.substr(0, 2), 16);\n var i0 = Math.floor(i01 / 40);\n var i1 = i01 % 40;\n var s = i0 + \".\" + i1;\n var binbuf = \"\";\n for (var i = 2; i < hex.length; i += 2) {\n var value = parseInt(hex.substr(i, 2), 16);\n var bin = (\"00000000\" + value.toString(2)).slice(-8);\n binbuf = binbuf + bin.substr(1, 7);\n if (bin.substr(0, 1) == \"0\") {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\n s = s + \".\" + bi.toString(10);\n binbuf = \"\";\n }\n }\n ;\n return s;\n};\n/**\n * get hexadecimal value of object identifier from dot noted oid value\n * @name oidIntToHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} oidString dot noted string of object identifier\n * @return {String} hexadecimal value of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from object identifier value string.\n * to hexadecimal string representation of it.\n * @example\n * KJUR.asn1.ASN1Util.oidIntToHex(\"2.5.4.6\") → \"550406\"\n */\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n return h;\n};\n// ********************************************************************\n// Abstract ASN.1 Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * base class for ASN.1 DER encoder object\n * @name KJUR.asn1.ASN1Object\n * @class base class for ASN.1 DER encoder object\n * @property {Boolean} isModified flag whether internal data was changed\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\n * @description\n */\nKJUR.asn1.ASN1Object = function () {\n var isModified = true;\n var hTLV = null;\n var hT = '00';\n var hL = '00';\n var hV = '';\n /**\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\n * @name getLengthHexFromValue\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\n */\n this.getLengthHexFromValue = function () {\n if (typeof this.hV == \"undefined\" || this.hV == null) {\n throw \"this.hV is null or undefined.\";\n }\n if (this.hV.length % 2 == 1) {\n throw \"value hex must be even length: n=\" + hV.length + \",v=\" + this.hV;\n }\n var n = this.hV.length / 2;\n var hN = n.toString(16);\n if (hN.length % 2 == 1) {\n hN = \"0\" + hN;\n }\n if (n < 128) {\n return hN;\n }\n else {\n var hNlen = hN.length / 2;\n if (hNlen > 15) {\n throw \"ASN.1 length too long to represent by 8x: n = \" + n.toString(16);\n }\n var head = 128 + hNlen;\n return head.toString(16) + hN;\n }\n };\n /**\n * get hexadecimal string of ASN.1 TLV bytes\n * @name getEncodedHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV\n */\n this.getEncodedHex = function () {\n if (this.hTLV == null || this.isModified) {\n this.hV = this.getFreshValueHex();\n this.hL = this.getLengthHexFromValue();\n this.hTLV = this.hT + this.hL + this.hV;\n this.isModified = false;\n //alert(\"first time: \" + this.hTLV);\n }\n return this.hTLV;\n };\n /**\n * get hexadecimal string of ASN.1 TLV value(V) bytes\n * @name getValueHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\n */\n this.getValueHex = function () {\n this.getEncodedHex();\n return this.hV;\n };\n this.getFreshValueHex = function () {\n return '';\n };\n};\n// == BEGIN DERAbstractString ================================================\n/**\n * base class for ASN.1 DER string classes\n * @name KJUR.asn1.DERAbstractString\n * @class base class for ASN.1 DER string classes\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @property {String} s internal string of value\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERAbstractString = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var s = null;\n var hV = null;\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @return {String} string value of this string object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newS value by a string to set\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(this.s);\n };\n /**\n * set value by a hexadecimal string\n * @name setStringHex\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newHexString value by a hexadecimal string to set\n */\n this.setStringHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\") {\n this.setString(params);\n }\n else if (typeof params['str'] != \"undefined\") {\n this.setString(params['str']);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setStringHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\n// == END DERAbstractString ================================================\n// == BEGIN DERAbstractTime ==================================================\n/**\n * base class for ASN.1 DER Generalized/UTCTime class\n * @name KJUR.asn1.DERAbstractTime\n * @class base class for ASN.1 DER Generalized/UTCTime class\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractTime = function (params) {\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\n var s = null;\n var date = null;\n // --- PRIVATE METHODS --------------------\n this.localDateToUTC = function (d) {\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\n var utcDate = new Date(utc);\n return utcDate;\n };\n /*\n * format date string by Data object\n * @name formatDate\n * @memberOf KJUR.asn1.AbstractTime;\n * @param {Date} dateObject\n * @param {string} type 'utc' or 'gen'\n * @param {boolean} withMillis flag for with millisections or not\n * @description\n * 'withMillis' flag is supported from asn1 1.0.6.\n */\n this.formatDate = function (dateObject, type, withMillis) {\n var pad = this.zeroPadding;\n var d = this.localDateToUTC(dateObject);\n var year = String(d.getFullYear());\n if (type == 'utc')\n year = year.substr(2, 2);\n var month = pad(String(d.getMonth() + 1), 2);\n var day = pad(String(d.getDate()), 2);\n var hour = pad(String(d.getHours()), 2);\n var min = pad(String(d.getMinutes()), 2);\n var sec = pad(String(d.getSeconds()), 2);\n var s = year + month + day + hour + min + sec;\n if (withMillis === true) {\n var millis = d.getMilliseconds();\n if (millis != 0) {\n var sMillis = pad(String(millis), 3);\n sMillis = sMillis.replace(/[0]+$/, \"\");\n s = s + \".\" + sMillis;\n }\n }\n return s + \"Z\";\n };\n this.zeroPadding = function (s, len) {\n if (s.length >= len)\n return s;\n return new Array(len - s.length + 1).join('0') + s;\n };\n // --- PUBLIC METHODS --------------------\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @return {String} string value of this time object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {String} newS value by a string to set such like \"130430235959Z\"\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(newS);\n };\n /**\n * set value by a Date object\n * @name setByDateValue\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {Integer} year year of date (ex. 2013)\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\n * @param {Integer} day day of month\n * @param {Integer} hour hours of date\n * @param {Integer} min minutes of date\n * @param {Integer} sec seconds of date\n */\n this.setByDateValue = function (year, month, day, hour, min, sec) {\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\n this.setByDate(dateObject);\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\n// == END DERAbstractTime ==================================================\n// == BEGIN DERAbstractStructured ============================================\n/**\n * base class for ASN.1 DER structured class\n * @name KJUR.asn1.DERAbstractStructured\n * @class base class for ASN.1 DER structured class\n * @property {Array} asn1Array internal array of ASN1Object\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractStructured = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var asn1Array = null;\n /**\n * set value by array of ASN1Object\n * @name setByASN1ObjectArray\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {array} asn1ObjectArray array of ASN1Object to set\n */\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array = asn1ObjectArray;\n };\n /**\n * append an ASN1Object to internal array\n * @name appendASN1Object\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {ASN1Object} asn1Object to add\n */\n this.appendASN1Object = function (asn1Object) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array.push(asn1Object);\n };\n this.asn1Array = new Array();\n if (typeof params != \"undefined\") {\n if (typeof params['array'] != \"undefined\") {\n this.asn1Array = params['array'];\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\n// ********************************************************************\n// ASN.1 Object Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * class for ASN.1 DER Boolean\n * @name KJUR.asn1.DERBoolean\n * @class class for ASN.1 DER Boolean\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERBoolean = function () {\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\n this.hT = \"01\";\n this.hTLV = \"0101ff\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Integer\n * @name KJUR.asn1.DERInteger\n * @class class for ASN.1 DER Integer\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERInteger = function (params) {\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\n this.hT = \"02\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DERInteger\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n * @example\n * new KJUR.asn1.DERInteger(123);\n * new KJUR.asn1.DERInteger({'int': 123});\n * new KJUR.asn1.DERInteger({'hex': '1fad'});\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['bigint'] != \"undefined\") {\n this.setByBigInteger(params['bigint']);\n }\n else if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER encoded BitString primitive\n * @name KJUR.asn1.DERBitString\n * @class class for ASN.1 DER encoded BitString primitive\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • bin - specify binary string (ex. '10111')
  • \n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\n * argument for \"BitString encapsulates\" structure.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: 'obj' parameter have been supported since\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\n * @example\n * // default constructor\n * o = new KJUR.asn1.DERBitString();\n * // initialize with binary string\n * o = new KJUR.asn1.DERBitString({bin: \"1011\"});\n * // initialize with boolean array\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\n * // initialize with hexadecimal string (04 is unused bits)\n * o = new KJUR.asn1.DEROctetString({hex: \"04bac0\"});\n * // initialize with ASN1Util.newObject argument for encapsulated\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // BIT STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DERBitString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = \"00\" + o.getEncodedHex();\n }\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\n this.hT = \"03\";\n /**\n * set ASN.1 value(V) by a hexadecimal string including unused bits\n * @name setHexValueIncludingUnusedBits\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} newHexStringIncludingUnusedBits\n */\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = newHexStringIncludingUnusedBits;\n };\n /**\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\n * @name setUnusedBitsAndHexValue\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {Integer} unusedBits\n * @param {String} hValue\n */\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\n if (unusedBits < 0 || 7 < unusedBits) {\n throw \"unused bits shall be from 0 to 7: u = \" + unusedBits;\n }\n var hUnusedBits = \"0\" + unusedBits;\n this.hTLV = null;\n this.isModified = true;\n this.hV = hUnusedBits + hValue;\n };\n /**\n * set ASN.1 DER BitString by binary string
\n * @name setByBinaryString\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} binaryString binary value string (i.e. '10111')\n * @description\n * Its unused bits will be calculated automatically by length of\n * 'binaryValue'.
\n * NOTE: Trailing zeros '0' will be ignored.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray(\"01011\");\n */\n this.setByBinaryString = function (binaryString) {\n binaryString = binaryString.replace(/0+$/, '');\n var unusedBits = 8 - binaryString.length % 8;\n if (unusedBits == 8)\n unusedBits = 0;\n for (var i = 0; i <= unusedBits; i++) {\n binaryString += '0';\n }\n var h = '';\n for (var i = 0; i < binaryString.length - 1; i += 8) {\n var b = binaryString.substr(i, 8);\n var x = parseInt(b, 2).toString(16);\n if (x.length == 1)\n x = '0' + x;\n h += x;\n }\n this.hTLV = null;\n this.isModified = true;\n this.hV = '0' + unusedBits + h;\n };\n /**\n * set ASN.1 TLV value(V) by an array of boolean
\n * @name setByBooleanArray\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\n * @description\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray([false, true, false, true, true]);\n */\n this.setByBooleanArray = function (booleanArray) {\n var s = '';\n for (var i = 0; i < booleanArray.length; i++) {\n if (booleanArray[i] == true) {\n s += '1';\n }\n else {\n s += '0';\n }\n }\n this.setByBinaryString(s);\n };\n /**\n * generate an array of falses with specified length
\n * @name newFalseArray\n * @memberOf KJUR.asn1.DERBitString\n * @function\n * @param {Integer} nLength length of array to generate\n * @return {array} array of boolean falses\n * @description\n * This static method may be useful to initialize boolean array.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.newFalseArray(3) → [false, false, false]\n */\n this.newFalseArray = function (nLength) {\n var a = new Array(nLength);\n for (var i = 0; i < nLength; i++) {\n a[i] = false;\n }\n return a;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\n this.setHexValueIncludingUnusedBits(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setHexValueIncludingUnusedBits(params['hex']);\n }\n else if (typeof params['bin'] != \"undefined\") {\n this.setByBinaryString(params['bin']);\n }\n else if (typeof params['array'] != \"undefined\") {\n this.setByBooleanArray(params['array']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER OctetString
\n * @name KJUR.asn1.DEROctetString\n * @class class for ASN.1 DER OctetString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * This class provides ASN.1 OctetString simple type.
\n * Supported \"params\" attributes are:\n *
    \n *
  • str - to set a string as a value
  • \n *
  • hex - to set a hexadecimal string as a value
  • \n *
  • obj - to set a encapsulated ASN.1 value by JSON object\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \n *
\n * NOTE: A parameter 'obj' have been supported\n * for \"OCTET STRING, encapsulates\" structure.\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\n * @see KJUR.asn1.DERAbstractString - superclass\n * @example\n * // default constructor\n * o = new KJUR.asn1.DEROctetString();\n * // initialize with string\n * o = new KJUR.asn1.DEROctetString({str: \"aaa\"});\n * // initialize with hexadecimal string\n * o = new KJUR.asn1.DEROctetString({hex: \"616161\"});\n * // initialize with ASN1Util.newObject argument\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // OCTET STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DEROctetString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = o.getEncodedHex();\n }\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\n this.hT = \"04\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER Null\n * @name KJUR.asn1.DERNull\n * @class class for ASN.1 DER Null\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERNull = function () {\n KJUR.asn1.DERNull.superclass.constructor.call(this);\n this.hT = \"05\";\n this.hTLV = \"0500\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER ObjectIdentifier\n * @name KJUR.asn1.DERObjectIdentifier\n * @class class for ASN.1 DER ObjectIdentifier\n * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERObjectIdentifier = function (params) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\n this.hT = \"06\";\n /**\n * set value by a hexadecimal string\n * @name setValueHex\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} newHexString hexadecimal value of OID bytes\n */\n this.setValueHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n /**\n * set value by a OID string
\n * @name setValueOidString\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidString OID string (ex. 2.5.4.13)\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueOidString(\"2.5.4.13\");\n */\n this.setValueOidString = function (oidString) {\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = h;\n };\n /**\n * set value by a OID name\n * @name setValueName\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidName OID name (ex. 'serverAuth')\n * @since 1.0.1\n * @description\n * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.\n * Otherwise raise error.\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueName(\"serverAuth\");\n */\n this.setValueName = function (oidName) {\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\n if (oid !== '') {\n this.setValueOidString(oid);\n }\n else {\n throw \"DERObjectIdentifier oidName undefined: \" + oidName;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (params !== undefined) {\n if (typeof params === \"string\") {\n if (params.match(/^[0-2].[0-9.]+$/)) {\n this.setValueOidString(params);\n }\n else {\n this.setValueName(params);\n }\n }\n else if (params.oid !== undefined) {\n this.setValueOidString(params.oid);\n }\n else if (params.hex !== undefined) {\n this.setValueHex(params.hex);\n }\n else if (params.name !== undefined) {\n this.setValueName(params.name);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Enumerated\n * @name KJUR.asn1.DEREnumerated\n * @class class for ASN.1 DER Enumerated\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n * @example\n * new KJUR.asn1.DEREnumerated(123);\n * new KJUR.asn1.DEREnumerated({int: 123});\n * new KJUR.asn1.DEREnumerated({hex: '1fad'});\n */\nKJUR.asn1.DEREnumerated = function (params) {\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\n this.hT = \"0a\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTF8String\n * @name KJUR.asn1.DERUTF8String\n * @class class for ASN.1 DER UTF8String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERUTF8String = function (params) {\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\n this.hT = \"0c\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER NumericString\n * @name KJUR.asn1.DERNumericString\n * @class class for ASN.1 DER NumericString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERNumericString = function (params) {\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\n this.hT = \"12\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER PrintableString\n * @name KJUR.asn1.DERPrintableString\n * @class class for ASN.1 DER PrintableString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERPrintableString = function (params) {\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\n this.hT = \"13\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER TeletexString\n * @name KJUR.asn1.DERTeletexString\n * @class class for ASN.1 DER TeletexString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERTeletexString = function (params) {\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\n this.hT = \"14\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER IA5String\n * @name KJUR.asn1.DERIA5String\n * @class class for ASN.1 DER IA5String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERIA5String = function (params) {\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\n this.hT = \"16\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTCTime\n * @name KJUR.asn1.DERUTCTime\n * @class class for ASN.1 DER UTCTime\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
\n * NOTE: 'params' can be omitted.\n *

EXAMPLES

\n * @example\n * d1 = new KJUR.asn1.DERUTCTime();\n * d1.setString('130430125959Z');\n *\n * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});\n * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\n * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');\n */\nKJUR.asn1.DERUTCTime = function (params) {\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\n this.hT = \"17\";\n /**\n * set value by a Date object
\n * @name setByDate\n * @memberOf KJUR.asn1.DERUTCTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * o = new KJUR.asn1.DERUTCTime();\n * o.setByDate(new Date(\"2016/12/31\"));\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (typeof this.date == \"undefined\" && typeof this.s == \"undefined\") {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{12}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER GeneralizedTime\n * @name KJUR.asn1.DERGeneralizedTime\n * @class class for ASN.1 DER GeneralizedTime\n * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})\n * @property {Boolean} withMillis flag to show milliseconds or not\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \n *
\n * NOTE1: 'params' can be omitted.\n * NOTE2: 'withMillis' property is supported from asn1 1.0.6.\n */\nKJUR.asn1.DERGeneralizedTime = function (params) {\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\n this.hT = \"18\";\n this.withMillis = false;\n /**\n * set value by a Date object\n * @name setByDate\n * @memberOf KJUR.asn1.DERGeneralizedTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * When you specify UTC time, use 'Date.UTC' method like this:
\n * o1 = new DERUTCTime();\n * o1.setByDate(date);\n *\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (this.date === undefined && this.s === undefined) {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{14}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n if (params.millis === true) {\n this.withMillis = true;\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER Sequence\n * @name KJUR.asn1.DERSequence\n * @class class for ASN.1 DER Sequence\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERSequence = function (params) {\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\n this.hT = \"30\";\n this.getFreshValueHex = function () {\n var h = '';\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n h += asn1Obj.getEncodedHex();\n }\n this.hV = h;\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER Set\n * @name KJUR.asn1.DERSet\n * @class class for ASN.1 DER Set\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: sortflag is supported since 1.0.5.\n */\nKJUR.asn1.DERSet = function (params) {\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\n this.hT = \"31\";\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\n this.getFreshValueHex = function () {\n var a = new Array();\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n a.push(asn1Obj.getEncodedHex());\n }\n if (this.sortFlag == true)\n a.sort();\n this.hV = a.join('');\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params.sortflag != \"undefined\" &&\n params.sortflag == false)\n this.sortFlag = false;\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER TaggedObject\n * @name KJUR.asn1.DERTaggedObject\n * @class class for ASN.1 DER TaggedObject\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.\n * For example, if you find '[1]' tag in a ASN.1 dump,\n * 'tagNoHex' will be 'a1'.\n *
\n * As for optional argument 'params' for constructor, you can specify *ANY* of\n * following properties:\n *
    \n *
  • explicit - specify true if this is explicit tag otherwise false\n * (default is 'true').
  • \n *
  • tag - specify tag (default is 'a0' which means [0])
  • \n *
  • obj - specify ASN1Object which is tagged
  • \n *
\n * @example\n * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});\n * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});\n * hex = d2.getEncodedHex();\n */\nKJUR.asn1.DERTaggedObject = function (params) {\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\n this.hT = \"a0\";\n this.hV = '';\n this.isExplicit = true;\n this.asn1Object = null;\n /**\n * set value by an ASN1Object\n * @name setString\n * @memberOf KJUR.asn1.DERTaggedObject#\n * @function\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\n */\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\n this.hT = tagNoHex;\n this.isExplicit = isExplicitFlag;\n this.asn1Object = asn1Object;\n if (this.isExplicit) {\n this.hV = this.asn1Object.getEncodedHex();\n this.hTLV = null;\n this.isModified = true;\n }\n else {\n this.hV = null;\n this.hTLV = asn1Object.getEncodedHex();\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\n this.isModified = false;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['tag'] != \"undefined\") {\n this.hT = params['tag'];\n }\n if (typeof params['explicit'] != \"undefined\") {\n this.isExplicit = params['explicit'];\n }\n if (typeof params['obj'] != \"undefined\") {\n this.asn1Object = params['obj'];\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"KJUR\": () => (/* binding */ KJUR)\n/* harmony export */ });\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \"./lib/lib/jsbn/jsbn.js\");\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \"./lib/lib/jsrsasign/yahoo.js\");\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\n */\n/*\n * asn1.js - ASN.1 DER encoder classes\n *\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\n *\n * This software is licensed under the terms of the MIT License.\n * https://kjur.github.io/jsrsasign/license\n *\n * The above copyright and license notice shall be\n * included in all copies or substantial portions of the Software.\n */\n\n\n/**\n * @fileOverview\n * @name asn1-1.0.js\n * @author Kenji Urushima kenji.urushima@gmail.com\n * @version asn1 1.0.13 (2017-Jun-02)\n * @since jsrsasign 2.1\n * @license MIT License\n */\n/**\n * kjur's class library name space\n *

\n * This name space provides following name spaces:\n *

    \n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\n * class and utilities
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\n * @name KJUR\n * @namespace kjur's class library name space\n */\nvar KJUR = {};\n/**\n * kjur's ASN.1 class library name space\n *

\n * This is ITU-T X.690 ASN.1 DER encoder class library and\n * class structure and methods is very similar to\n * org.bouncycastle.asn1 package of\n * well known BouncyCaslte Cryptography Library.\n *

PROVIDING ASN.1 PRIMITIVES

\n * Here are ASN.1 DER primitive classes.\n *
    \n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \n *
\n *

OTHER ASN.1 CLASSES

\n *
    \n *
  • {@link KJUR.asn1.ASN1Object}
  • \n *
  • {@link KJUR.asn1.DERAbstractString}
  • \n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \n *
\n *

SUB NAME SPACES

\n *
    \n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \n *
\n *

\n * NOTE: Please ignore method summary and document of this namespace.\n * This caused by a bug of jsdoc2.\n * @name KJUR.asn1\n * @namespace\n */\nif (typeof KJUR.asn1 == \"undefined\" || !KJUR.asn1)\n KJUR.asn1 = {};\n/**\n * ASN1 utilities class\n * @name KJUR.asn1.ASN1Util\n * @class ASN1 utilities class\n * @since asn1 1.0.2\n */\nKJUR.asn1.ASN1Util = new function () {\n this.integerToByteHex = function (i) {\n var h = i.toString(16);\n if ((h.length % 2) == 1)\n h = '0' + h;\n return h;\n };\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\n var h = bigIntegerValue.toString(16);\n if (h.substr(0, 1) != '-') {\n if (h.length % 2 == 1) {\n h = '0' + h;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n h = '00' + h;\n }\n }\n }\n else {\n var hPos = h.substr(1);\n var xorLen = hPos.length;\n if (xorLen % 2 == 1) {\n xorLen += 1;\n }\n else {\n if (!h.match(/^[0-7]/)) {\n xorLen += 2;\n }\n }\n var hMask = '';\n for (var i = 0; i < xorLen; i++) {\n hMask += 'f';\n }\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\n h = biNeg.toString(16).replace(/^-/, '');\n }\n return h;\n };\n /**\n * get PEM string from hexadecimal data and header string\n * @name getPEMStringFromHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} dataHex hexadecimal string of PEM body\n * @param {String} pemHeader PEM header string (ex. 'RSA PRIVATE KEY')\n * @return {String} PEM formatted string of input data\n * @description\n * This method converts a hexadecimal string to a PEM string with\n * a specified header. Its line break will be CRLF(\"\\r\\n\").\n * @example\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex('616161', 'RSA PRIVATE KEY');\n * // value of pem will be:\n * -----BEGIN PRIVATE KEY-----\n * YWFh\n * -----END PRIVATE KEY-----\n */\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\n return hextopem(dataHex, pemHeader);\n };\n /**\n * generate ASN1Object specifed by JSON parameters\n * @name newObject\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return {KJUR.asn1.ASN1Object} generated object\n * @since asn1 1.0.3\n * @description\n * generate any ASN1Object specified by JSON param\n * including ASN.1 primitive or structured.\n * Generally 'param' can be described as follows:\n *
\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\n *
\n * 'TYPE-OF-ASN1OBJ' can be one of following symbols:\n *
    \n *
  • 'bool' - DERBoolean
  • \n *
  • 'int' - DERInteger
  • \n *
  • 'bitstr' - DERBitString
  • \n *
  • 'octstr' - DEROctetString
  • \n *
  • 'null' - DERNull
  • \n *
  • 'oid' - DERObjectIdentifier
  • \n *
  • 'enum' - DEREnumerated
  • \n *
  • 'utf8str' - DERUTF8String
  • \n *
  • 'numstr' - DERNumericString
  • \n *
  • 'prnstr' - DERPrintableString
  • \n *
  • 'telstr' - DERTeletexString
  • \n *
  • 'ia5str' - DERIA5String
  • \n *
  • 'utctime' - DERUTCTime
  • \n *
  • 'gentime' - DERGeneralizedTime
  • \n *
  • 'seq' - DERSequence
  • \n *
  • 'set' - DERSet
  • \n *
  • 'tag' - DERTaggedObject
  • \n *
\n * @example\n * newObject({'prnstr': 'aaa'});\n * newObject({'seq': [{'int': 3}, {'prnstr': 'aaa'}]})\n * // ASN.1 Tagged Object\n * newObject({'tag': {'tag': 'a1',\n * 'explicit': true,\n * 'obj': {'seq': [{'int': 3}, {'prnstr': 'aaa'}]}}});\n * // more simple representation of ASN.1 Tagged Object\n * newObject({'tag': ['a1',\n * true,\n * {'seq': [\n * {'int': 3},\n * {'prnstr': 'aaa'}]}\n * ]});\n */\n this.newObject = function (param) {\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\n var keys = Object.keys(param);\n if (keys.length != 1)\n throw \"key of param shall be only one.\";\n var key = keys[0];\n if (\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\".indexOf(\":\" + key + \":\") == -1)\n throw \"undefined key: \" + key;\n if (key == \"bool\")\n return new _DERBoolean(param[key]);\n if (key == \"int\")\n return new _DERInteger(param[key]);\n if (key == \"bitstr\")\n return new _DERBitString(param[key]);\n if (key == \"octstr\")\n return new _DEROctetString(param[key]);\n if (key == \"null\")\n return new _DERNull(param[key]);\n if (key == \"oid\")\n return new _DERObjectIdentifier(param[key]);\n if (key == \"enum\")\n return new _DEREnumerated(param[key]);\n if (key == \"utf8str\")\n return new _DERUTF8String(param[key]);\n if (key == \"numstr\")\n return new _DERNumericString(param[key]);\n if (key == \"prnstr\")\n return new _DERPrintableString(param[key]);\n if (key == \"telstr\")\n return new _DERTeletexString(param[key]);\n if (key == \"ia5str\")\n return new _DERIA5String(param[key]);\n if (key == \"utctime\")\n return new _DERUTCTime(param[key]);\n if (key == \"gentime\")\n return new _DERGeneralizedTime(param[key]);\n if (key == \"seq\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSequence({ 'array': a });\n }\n if (key == \"set\") {\n var paramList = param[key];\n var a = [];\n for (var i = 0; i < paramList.length; i++) {\n var asn1Obj = _newObject(paramList[i]);\n a.push(asn1Obj);\n }\n return new _DERSet({ 'array': a });\n }\n if (key == \"tag\") {\n var tagParam = param[key];\n if (Object.prototype.toString.call(tagParam) === '[object Array]' &&\n tagParam.length == 3) {\n var obj = _newObject(tagParam[2]);\n return new _DERTaggedObject({ tag: tagParam[0],\n explicit: tagParam[1],\n obj: obj });\n }\n else {\n var newParam = {};\n if (tagParam.explicit !== undefined)\n newParam.explicit = tagParam.explicit;\n if (tagParam.tag !== undefined)\n newParam.tag = tagParam.tag;\n if (tagParam.obj === undefined)\n throw \"obj shall be specified for 'tag'.\";\n newParam.obj = _newObject(tagParam.obj);\n return new _DERTaggedObject(newParam);\n }\n }\n };\n /**\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\n * @name jsonToASN1HEX\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {Array} param JSON parameter to generate ASN1Object\n * @return hexadecimal string of ASN1Object\n * @since asn1 1.0.4\n * @description\n * As for ASN.1 object representation of JSON object,\n * please see {@link newObject}.\n * @example\n * jsonToASN1HEX({'prnstr': 'aaa'});\n */\n this.jsonToASN1HEX = function (param) {\n var asn1Obj = this.newObject(param);\n return asn1Obj.getEncodedHex();\n };\n};\n/**\n * get dot noted oid number string from hexadecimal value of OID\n * @name oidHexToInt\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} hex hexadecimal value of object identifier\n * @return {String} dot noted string of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from hexadecimal string representation of\n * ASN.1 value of object identifier to oid number string.\n * @example\n * KJUR.asn1.ASN1Util.oidHexToInt('550406') → \"2.5.4.6\"\n */\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\n var s = \"\";\n var i01 = parseInt(hex.substr(0, 2), 16);\n var i0 = Math.floor(i01 / 40);\n var i1 = i01 % 40;\n var s = i0 + \".\" + i1;\n var binbuf = \"\";\n for (var i = 2; i < hex.length; i += 2) {\n var value = parseInt(hex.substr(i, 2), 16);\n var bin = (\"00000000\" + value.toString(2)).slice(-8);\n binbuf = binbuf + bin.substr(1, 7);\n if (bin.substr(0, 1) == \"0\") {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\n s = s + \".\" + bi.toString(10);\n binbuf = \"\";\n }\n }\n ;\n return s;\n};\n/**\n * get hexadecimal value of object identifier from dot noted oid value\n * @name oidIntToHex\n * @memberOf KJUR.asn1.ASN1Util\n * @function\n * @param {String} oidString dot noted string of object identifier\n * @return {String} hexadecimal value of object identifier\n * @since jsrsasign 4.8.3 asn1 1.0.7\n * @description\n * This static method converts from object identifier value string.\n * to hexadecimal string representation of it.\n * @example\n * KJUR.asn1.ASN1Util.oidIntToHex(\"2.5.4.6\") → \"550406\"\n */\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n return h;\n};\n// ********************************************************************\n// Abstract ASN.1 Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * base class for ASN.1 DER encoder object\n * @name KJUR.asn1.ASN1Object\n * @class base class for ASN.1 DER encoder object\n * @property {Boolean} isModified flag whether internal data was changed\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\n * @description\n */\nKJUR.asn1.ASN1Object = function () {\n var isModified = true;\n var hTLV = null;\n var hT = '00';\n var hL = '00';\n var hV = '';\n /**\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\n * @name getLengthHexFromValue\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\n */\n this.getLengthHexFromValue = function () {\n if (typeof this.hV == \"undefined\" || this.hV == null) {\n throw \"this.hV is null or undefined.\";\n }\n if (this.hV.length % 2 == 1) {\n throw \"value hex must be even length: n=\" + hV.length + \",v=\" + this.hV;\n }\n var n = this.hV.length / 2;\n var hN = n.toString(16);\n if (hN.length % 2 == 1) {\n hN = \"0\" + hN;\n }\n if (n < 128) {\n return hN;\n }\n else {\n var hNlen = hN.length / 2;\n if (hNlen > 15) {\n throw \"ASN.1 length too long to represent by 8x: n = \" + n.toString(16);\n }\n var head = 128 + hNlen;\n return head.toString(16) + hN;\n }\n };\n /**\n * get hexadecimal string of ASN.1 TLV bytes\n * @name getEncodedHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV\n */\n this.getEncodedHex = function () {\n if (this.hTLV == null || this.isModified) {\n this.hV = this.getFreshValueHex();\n this.hL = this.getLengthHexFromValue();\n this.hTLV = this.hT + this.hL + this.hV;\n this.isModified = false;\n //alert(\"first time: \" + this.hTLV);\n }\n return this.hTLV;\n };\n /**\n * get hexadecimal string of ASN.1 TLV value(V) bytes\n * @name getValueHex\n * @memberOf KJUR.asn1.ASN1Object#\n * @function\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\n */\n this.getValueHex = function () {\n this.getEncodedHex();\n return this.hV;\n };\n this.getFreshValueHex = function () {\n return '';\n };\n};\n// == BEGIN DERAbstractString ================================================\n/**\n * base class for ASN.1 DER string classes\n * @name KJUR.asn1.DERAbstractString\n * @class base class for ASN.1 DER string classes\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @property {String} s internal string of value\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERAbstractString = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var s = null;\n var hV = null;\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @return {String} string value of this string object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newS value by a string to set\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(this.s);\n };\n /**\n * set value by a hexadecimal string\n * @name setStringHex\n * @memberOf KJUR.asn1.DERAbstractString#\n * @function\n * @param {String} newHexString value by a hexadecimal string to set\n */\n this.setStringHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\") {\n this.setString(params);\n }\n else if (typeof params['str'] != \"undefined\") {\n this.setString(params['str']);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setStringHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\n// == END DERAbstractString ================================================\n// == BEGIN DERAbstractTime ==================================================\n/**\n * base class for ASN.1 DER Generalized/UTCTime class\n * @name KJUR.asn1.DERAbstractTime\n * @class base class for ASN.1 DER Generalized/UTCTime class\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractTime = function (params) {\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\n var s = null;\n var date = null;\n // --- PRIVATE METHODS --------------------\n this.localDateToUTC = function (d) {\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\n var utcDate = new Date(utc);\n return utcDate;\n };\n /*\n * format date string by Data object\n * @name formatDate\n * @memberOf KJUR.asn1.AbstractTime;\n * @param {Date} dateObject\n * @param {string} type 'utc' or 'gen'\n * @param {boolean} withMillis flag for with millisections or not\n * @description\n * 'withMillis' flag is supported from asn1 1.0.6.\n */\n this.formatDate = function (dateObject, type, withMillis) {\n var pad = this.zeroPadding;\n var d = this.localDateToUTC(dateObject);\n var year = String(d.getFullYear());\n if (type == 'utc')\n year = year.substr(2, 2);\n var month = pad(String(d.getMonth() + 1), 2);\n var day = pad(String(d.getDate()), 2);\n var hour = pad(String(d.getHours()), 2);\n var min = pad(String(d.getMinutes()), 2);\n var sec = pad(String(d.getSeconds()), 2);\n var s = year + month + day + hour + min + sec;\n if (withMillis === true) {\n var millis = d.getMilliseconds();\n if (millis != 0) {\n var sMillis = pad(String(millis), 3);\n sMillis = sMillis.replace(/[0]+$/, \"\");\n s = s + \".\" + sMillis;\n }\n }\n return s + \"Z\";\n };\n this.zeroPadding = function (s, len) {\n if (s.length >= len)\n return s;\n return new Array(len - s.length + 1).join('0') + s;\n };\n // --- PUBLIC METHODS --------------------\n /**\n * get string value of this string object\n * @name getString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @return {String} string value of this time object\n */\n this.getString = function () {\n return this.s;\n };\n /**\n * set value by a string\n * @name setString\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {String} newS value by a string to set such like \"130430235959Z\"\n */\n this.setString = function (newS) {\n this.hTLV = null;\n this.isModified = true;\n this.s = newS;\n this.hV = stohex(newS);\n };\n /**\n * set value by a Date object\n * @name setByDateValue\n * @memberOf KJUR.asn1.DERAbstractTime#\n * @function\n * @param {Integer} year year of date (ex. 2013)\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\n * @param {Integer} day day of month\n * @param {Integer} hour hours of date\n * @param {Integer} min minutes of date\n * @param {Integer} sec seconds of date\n */\n this.setByDateValue = function (year, month, day, hour, min, sec) {\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\n this.setByDate(dateObject);\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\n// == END DERAbstractTime ==================================================\n// == BEGIN DERAbstractStructured ============================================\n/**\n * base class for ASN.1 DER structured class\n * @name KJUR.asn1.DERAbstractStructured\n * @class base class for ASN.1 DER structured class\n * @property {Array} asn1Array internal array of ASN1Object\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERAbstractStructured = function (params) {\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\n var asn1Array = null;\n /**\n * set value by array of ASN1Object\n * @name setByASN1ObjectArray\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {array} asn1ObjectArray array of ASN1Object to set\n */\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array = asn1ObjectArray;\n };\n /**\n * append an ASN1Object to internal array\n * @name appendASN1Object\n * @memberOf KJUR.asn1.DERAbstractStructured#\n * @function\n * @param {ASN1Object} asn1Object to add\n */\n this.appendASN1Object = function (asn1Object) {\n this.hTLV = null;\n this.isModified = true;\n this.asn1Array.push(asn1Object);\n };\n this.asn1Array = new Array();\n if (typeof params != \"undefined\") {\n if (typeof params['array'] != \"undefined\") {\n this.asn1Array = params['array'];\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\n// ********************************************************************\n// ASN.1 Object Classes\n// ********************************************************************\n// ********************************************************************\n/**\n * class for ASN.1 DER Boolean\n * @name KJUR.asn1.DERBoolean\n * @class class for ASN.1 DER Boolean\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERBoolean = function () {\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\n this.hT = \"01\";\n this.hTLV = \"0101ff\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Integer\n * @name KJUR.asn1.DERInteger\n * @class class for ASN.1 DER Integer\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERInteger = function (params) {\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\n this.hT = \"02\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DERInteger\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DERInteger#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n * @example\n * new KJUR.asn1.DERInteger(123);\n * new KJUR.asn1.DERInteger({'int': 123});\n * new KJUR.asn1.DERInteger({'hex': '1fad'});\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['bigint'] != \"undefined\") {\n this.setByBigInteger(params['bigint']);\n }\n else if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER encoded BitString primitive\n * @name KJUR.asn1.DERBitString\n * @class class for ASN.1 DER encoded BitString primitive\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • bin - specify binary string (ex. '10111')
  • \n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\n * argument for \"BitString encapsulates\" structure.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: 'obj' parameter have been supported since\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\n * @example\n * // default constructor\n * o = new KJUR.asn1.DERBitString();\n * // initialize with binary string\n * o = new KJUR.asn1.DERBitString({bin: \"1011\"});\n * // initialize with boolean array\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\n * // initialize with hexadecimal string (04 is unused bits)\n * o = new KJUR.asn1.DEROctetString({hex: \"04bac0\"});\n * // initialize with ASN1Util.newObject argument for encapsulated\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // BIT STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DERBitString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = \"00\" + o.getEncodedHex();\n }\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\n this.hT = \"03\";\n /**\n * set ASN.1 value(V) by a hexadecimal string including unused bits\n * @name setHexValueIncludingUnusedBits\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} newHexStringIncludingUnusedBits\n */\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = newHexStringIncludingUnusedBits;\n };\n /**\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\n * @name setUnusedBitsAndHexValue\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {Integer} unusedBits\n * @param {String} hValue\n */\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\n if (unusedBits < 0 || 7 < unusedBits) {\n throw \"unused bits shall be from 0 to 7: u = \" + unusedBits;\n }\n var hUnusedBits = \"0\" + unusedBits;\n this.hTLV = null;\n this.isModified = true;\n this.hV = hUnusedBits + hValue;\n };\n /**\n * set ASN.1 DER BitString by binary string
\n * @name setByBinaryString\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {String} binaryString binary value string (i.e. '10111')\n * @description\n * Its unused bits will be calculated automatically by length of\n * 'binaryValue'.
\n * NOTE: Trailing zeros '0' will be ignored.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray(\"01011\");\n */\n this.setByBinaryString = function (binaryString) {\n binaryString = binaryString.replace(/0+$/, '');\n var unusedBits = 8 - binaryString.length % 8;\n if (unusedBits == 8)\n unusedBits = 0;\n for (var i = 0; i <= unusedBits; i++) {\n binaryString += '0';\n }\n var h = '';\n for (var i = 0; i < binaryString.length - 1; i += 8) {\n var b = binaryString.substr(i, 8);\n var x = parseInt(b, 2).toString(16);\n if (x.length == 1)\n x = '0' + x;\n h += x;\n }\n this.hTLV = null;\n this.isModified = true;\n this.hV = '0' + unusedBits + h;\n };\n /**\n * set ASN.1 TLV value(V) by an array of boolean
\n * @name setByBooleanArray\n * @memberOf KJUR.asn1.DERBitString#\n * @function\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\n * @description\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.setByBooleanArray([false, true, false, true, true]);\n */\n this.setByBooleanArray = function (booleanArray) {\n var s = '';\n for (var i = 0; i < booleanArray.length; i++) {\n if (booleanArray[i] == true) {\n s += '1';\n }\n else {\n s += '0';\n }\n }\n this.setByBinaryString(s);\n };\n /**\n * generate an array of falses with specified length
\n * @name newFalseArray\n * @memberOf KJUR.asn1.DERBitString\n * @function\n * @param {Integer} nLength length of array to generate\n * @return {array} array of boolean falses\n * @description\n * This static method may be useful to initialize boolean array.\n * @example\n * o = new KJUR.asn1.DERBitString();\n * o.newFalseArray(3) → [false, false, false]\n */\n this.newFalseArray = function (nLength) {\n var a = new Array(nLength);\n for (var i = 0; i < nLength; i++) {\n a[i] = false;\n }\n return a;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params == \"string\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\n this.setHexValueIncludingUnusedBits(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setHexValueIncludingUnusedBits(params['hex']);\n }\n else if (typeof params['bin'] != \"undefined\") {\n this.setByBinaryString(params['bin']);\n }\n else if (typeof params['array'] != \"undefined\") {\n this.setByBooleanArray(params['array']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER OctetString
\n * @name KJUR.asn1.DEROctetString\n * @class class for ASN.1 DER OctetString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * This class provides ASN.1 OctetString simple type.
\n * Supported \"params\" attributes are:\n *
    \n *
  • str - to set a string as a value
  • \n *
  • hex - to set a hexadecimal string as a value
  • \n *
  • obj - to set a encapsulated ASN.1 value by JSON object\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \n *
\n * NOTE: A parameter 'obj' have been supported\n * for \"OCTET STRING, encapsulates\" structure.\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\n * @see KJUR.asn1.DERAbstractString - superclass\n * @example\n * // default constructor\n * o = new KJUR.asn1.DEROctetString();\n * // initialize with string\n * o = new KJUR.asn1.DEROctetString({str: \"aaa\"});\n * // initialize with hexadecimal string\n * o = new KJUR.asn1.DEROctetString({hex: \"616161\"});\n * // initialize with ASN1Util.newObject argument\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: 'aaa'}]}});\n * // above generates a ASN.1 data like this:\n * // OCTET STRING, encapsulates {\n * // SEQUENCE {\n * // INTEGER 3\n * // PrintableString 'aaa'\n * // }\n * // }\n */\nKJUR.asn1.DEROctetString = function (params) {\n if (params !== undefined && typeof params.obj !== \"undefined\") {\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\n params.hex = o.getEncodedHex();\n }\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\n this.hT = \"04\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER Null\n * @name KJUR.asn1.DERNull\n * @class class for ASN.1 DER Null\n * @extends KJUR.asn1.ASN1Object\n * @description\n * @see KJUR.asn1.ASN1Object - superclass\n */\nKJUR.asn1.DERNull = function () {\n KJUR.asn1.DERNull.superclass.constructor.call(this);\n this.hT = \"05\";\n this.hTLV = \"0500\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER ObjectIdentifier\n * @name KJUR.asn1.DERObjectIdentifier\n * @class class for ASN.1 DER ObjectIdentifier\n * @param {Array} params associative array of parameters (ex. {'oid': '2.5.4.5'})\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERObjectIdentifier = function (params) {\n var itox = function (i) {\n var h = i.toString(16);\n if (h.length == 1)\n h = '0' + h;\n return h;\n };\n var roidtox = function (roid) {\n var h = '';\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\n var b = bi.toString(2);\n var padLen = 7 - b.length % 7;\n if (padLen == 7)\n padLen = 0;\n var bPad = '';\n for (var i = 0; i < padLen; i++)\n bPad += '0';\n b = bPad + b;\n for (var i = 0; i < b.length - 1; i += 7) {\n var b8 = b.substr(i, 7);\n if (i != b.length - 7)\n b8 = '1' + b8;\n h += itox(parseInt(b8, 2));\n }\n return h;\n };\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\n this.hT = \"06\";\n /**\n * set value by a hexadecimal string\n * @name setValueHex\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} newHexString hexadecimal value of OID bytes\n */\n this.setValueHex = function (newHexString) {\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = newHexString;\n };\n /**\n * set value by a OID string
\n * @name setValueOidString\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidString OID string (ex. 2.5.4.13)\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueOidString(\"2.5.4.13\");\n */\n this.setValueOidString = function (oidString) {\n if (!oidString.match(/^[0-9.]+$/)) {\n throw \"malformed oid string: \" + oidString;\n }\n var h = '';\n var a = oidString.split('.');\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\n h += itox(i0);\n a.splice(0, 2);\n for (var i = 0; i < a.length; i++) {\n h += roidtox(a[i]);\n }\n this.hTLV = null;\n this.isModified = true;\n this.s = null;\n this.hV = h;\n };\n /**\n * set value by a OID name\n * @name setValueName\n * @memberOf KJUR.asn1.DERObjectIdentifier#\n * @function\n * @param {String} oidName OID name (ex. 'serverAuth')\n * @since 1.0.1\n * @description\n * OID name shall be defined in 'KJUR.asn1.x509.OID.name2oidList'.\n * Otherwise raise error.\n * @example\n * o = new KJUR.asn1.DERObjectIdentifier();\n * o.setValueName(\"serverAuth\");\n */\n this.setValueName = function (oidName) {\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\n if (oid !== '') {\n this.setValueOidString(oid);\n }\n else {\n throw \"DERObjectIdentifier oidName undefined: \" + oidName;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (params !== undefined) {\n if (typeof params === \"string\") {\n if (params.match(/^[0-2].[0-9.]+$/)) {\n this.setValueOidString(params);\n }\n else {\n this.setValueName(params);\n }\n }\n else if (params.oid !== undefined) {\n this.setValueOidString(params.oid);\n }\n else if (params.hex !== undefined) {\n this.setValueHex(params.hex);\n }\n else if (params.name !== undefined) {\n this.setValueName(params.name);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER Enumerated\n * @name KJUR.asn1.DEREnumerated\n * @class class for ASN.1 DER Enumerated\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • int - specify initial ASN.1 value(V) by integer value
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
\n * NOTE: 'params' can be omitted.\n * @example\n * new KJUR.asn1.DEREnumerated(123);\n * new KJUR.asn1.DEREnumerated({int: 123});\n * new KJUR.asn1.DEREnumerated({hex: '1fad'});\n */\nKJUR.asn1.DEREnumerated = function (params) {\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\n this.hT = \"0a\";\n /**\n * set value by Tom Wu's BigInteger object\n * @name setByBigInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {BigInteger} bigIntegerValue to set\n */\n this.setByBigInteger = function (bigIntegerValue) {\n this.hTLV = null;\n this.isModified = true;\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\n };\n /**\n * set value by integer value\n * @name setByInteger\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {Integer} integer value to set\n */\n this.setByInteger = function (intValue) {\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\n this.setByBigInteger(bi);\n };\n /**\n * set value by integer value\n * @name setValueHex\n * @memberOf KJUR.asn1.DEREnumerated#\n * @function\n * @param {String} hexadecimal string of integer value\n * @description\n *
\n * NOTE: Value shall be represented by minimum octet length of\n * two's complement representation.\n */\n this.setValueHex = function (newHexString) {\n this.hV = newHexString;\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['int'] != \"undefined\") {\n this.setByInteger(params['int']);\n }\n else if (typeof params == \"number\") {\n this.setByInteger(params);\n }\n else if (typeof params['hex'] != \"undefined\") {\n this.setValueHex(params['hex']);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTF8String\n * @name KJUR.asn1.DERUTF8String\n * @class class for ASN.1 DER UTF8String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERUTF8String = function (params) {\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\n this.hT = \"0c\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER NumericString\n * @name KJUR.asn1.DERNumericString\n * @class class for ASN.1 DER NumericString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERNumericString = function (params) {\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\n this.hT = \"12\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER PrintableString\n * @name KJUR.asn1.DERPrintableString\n * @class class for ASN.1 DER PrintableString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERPrintableString = function (params) {\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\n this.hT = \"13\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER TeletexString\n * @name KJUR.asn1.DERTeletexString\n * @class class for ASN.1 DER TeletexString\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERTeletexString = function (params) {\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\n this.hT = \"14\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER IA5String\n * @name KJUR.asn1.DERIA5String\n * @class class for ASN.1 DER IA5String\n * @param {Array} params associative array of parameters (ex. {'str': 'aaa'})\n * @extends KJUR.asn1.DERAbstractString\n * @description\n * @see KJUR.asn1.DERAbstractString - superclass\n */\nKJUR.asn1.DERIA5String = function (params) {\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\n this.hT = \"16\";\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\n// ********************************************************************\n/**\n * class for ASN.1 DER UTCTime\n * @name KJUR.asn1.DERUTCTime\n * @class class for ASN.1 DER UTCTime\n * @param {Array} params associative array of parameters (ex. {'str': '130430235959Z'})\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
\n * NOTE: 'params' can be omitted.\n *

EXAMPLES

\n * @example\n * d1 = new KJUR.asn1.DERUTCTime();\n * d1.setString('130430125959Z');\n *\n * d2 = new KJUR.asn1.DERUTCTime({'str': '130430125959Z'});\n * d3 = new KJUR.asn1.DERUTCTime({'date': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\n * d4 = new KJUR.asn1.DERUTCTime('130430125959Z');\n */\nKJUR.asn1.DERUTCTime = function (params) {\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\n this.hT = \"17\";\n /**\n * set value by a Date object
\n * @name setByDate\n * @memberOf KJUR.asn1.DERUTCTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * o = new KJUR.asn1.DERUTCTime();\n * o.setByDate(new Date(\"2016/12/31\"));\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (typeof this.date == \"undefined\" && typeof this.s == \"undefined\") {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'utc');\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{12}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER GeneralizedTime\n * @name KJUR.asn1.DERGeneralizedTime\n * @class class for ASN.1 DER GeneralizedTime\n * @param {Array} params associative array of parameters (ex. {'str': '20130430235959Z'})\n * @property {Boolean} withMillis flag to show milliseconds or not\n * @extends KJUR.asn1.DERAbstractTime\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • str - specify initial ASN.1 value(V) by a string (ex.'20130430235959Z')
  • \n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \n *
  • date - specify Date object.
  • \n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \n *
\n * NOTE1: 'params' can be omitted.\n * NOTE2: 'withMillis' property is supported from asn1 1.0.6.\n */\nKJUR.asn1.DERGeneralizedTime = function (params) {\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\n this.hT = \"18\";\n this.withMillis = false;\n /**\n * set value by a Date object\n * @name setByDate\n * @memberOf KJUR.asn1.DERGeneralizedTime#\n * @function\n * @param {Date} dateObject Date object to set ASN.1 value(V)\n * @example\n * When you specify UTC time, use 'Date.UTC' method like this:
\n * o1 = new DERUTCTime();\n * o1.setByDate(date);\n *\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\n */\n this.setByDate = function (dateObject) {\n this.hTLV = null;\n this.isModified = true;\n this.date = dateObject;\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n };\n this.getFreshValueHex = function () {\n if (this.date === undefined && this.s === undefined) {\n this.date = new Date();\n this.s = this.formatDate(this.date, 'gen', this.withMillis);\n this.hV = stohex(this.s);\n }\n return this.hV;\n };\n if (params !== undefined) {\n if (params.str !== undefined) {\n this.setString(params.str);\n }\n else if (typeof params == \"string\" && params.match(/^[0-9]{14}Z$/)) {\n this.setString(params);\n }\n else if (params.hex !== undefined) {\n this.setStringHex(params.hex);\n }\n else if (params.date !== undefined) {\n this.setByDate(params.date);\n }\n if (params.millis === true) {\n this.withMillis = true;\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\n// ********************************************************************\n/**\n * class for ASN.1 DER Sequence\n * @name KJUR.asn1.DERSequence\n * @class class for ASN.1 DER Sequence\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
\n * NOTE: 'params' can be omitted.\n */\nKJUR.asn1.DERSequence = function (params) {\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\n this.hT = \"30\";\n this.getFreshValueHex = function () {\n var h = '';\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n h += asn1Obj.getEncodedHex();\n }\n this.hV = h;\n return this.hV;\n };\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER Set\n * @name KJUR.asn1.DERSet\n * @class class for ASN.1 DER Set\n * @extends KJUR.asn1.DERAbstractStructured\n * @description\n *
\n * As for argument 'params' for constructor, you can specify one of\n * following properties:\n *
    \n *
  • array - specify array of ASN1Object to set elements of content
  • \n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in 'SET OF'.
  • \n *
\n * NOTE1: 'params' can be omitted.
\n * NOTE2: sortflag is supported since 1.0.5.\n */\nKJUR.asn1.DERSet = function (params) {\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\n this.hT = \"31\";\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\n this.getFreshValueHex = function () {\n var a = new Array();\n for (var i = 0; i < this.asn1Array.length; i++) {\n var asn1Obj = this.asn1Array[i];\n a.push(asn1Obj.getEncodedHex());\n }\n if (this.sortFlag == true)\n a.sort();\n this.hV = a.join('');\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params.sortflag != \"undefined\" &&\n params.sortflag == false)\n this.sortFlag = false;\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\n// ********************************************************************\n/**\n * class for ASN.1 DER TaggedObject\n * @name KJUR.asn1.DERTaggedObject\n * @class class for ASN.1 DER TaggedObject\n * @extends KJUR.asn1.ASN1Object\n * @description\n *
\n * Parameter 'tagNoNex' is ASN.1 tag(T) value for this object.\n * For example, if you find '[1]' tag in a ASN.1 dump,\n * 'tagNoHex' will be 'a1'.\n *
\n * As for optional argument 'params' for constructor, you can specify *ANY* of\n * following properties:\n *
    \n *
  • explicit - specify true if this is explicit tag otherwise false\n * (default is 'true').
  • \n *
  • tag - specify tag (default is 'a0' which means [0])
  • \n *
  • obj - specify ASN1Object which is tagged
  • \n *
\n * @example\n * d1 = new KJUR.asn1.DERUTF8String({'str':'a'});\n * d2 = new KJUR.asn1.DERTaggedObject({'obj': d1});\n * hex = d2.getEncodedHex();\n */\nKJUR.asn1.DERTaggedObject = function (params) {\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\n this.hT = \"a0\";\n this.hV = '';\n this.isExplicit = true;\n this.asn1Object = null;\n /**\n * set value by an ASN1Object\n * @name setString\n * @memberOf KJUR.asn1.DERTaggedObject#\n * @function\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\n */\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\n this.hT = tagNoHex;\n this.isExplicit = isExplicitFlag;\n this.asn1Object = asn1Object;\n if (this.isExplicit) {\n this.hV = this.asn1Object.getEncodedHex();\n this.hTLV = null;\n this.isModified = true;\n }\n else {\n this.hV = null;\n this.hTLV = asn1Object.getEncodedHex();\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\n this.isModified = false;\n }\n };\n this.getFreshValueHex = function () {\n return this.hV;\n };\n if (typeof params != \"undefined\") {\n if (typeof params['tag'] != \"undefined\") {\n this.hT = params['tag'];\n }\n if (typeof params['explicit'] != \"undefined\") {\n this.isExplicit = params['explicit'];\n }\n if (typeof params['obj'] != \"undefined\") {\n this.asn1Object = params['obj'];\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\n }\n }\n};\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?"); - /***/ - }), +/***/ }), - /***/ - "./lib/lib/jsrsasign/yahoo.js": - /*!************************************!*\ - !*** ./lib/lib/jsrsasign/yahoo.js ***! - \************************************/ - /***/ - ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { +/***/ "./lib/lib/jsrsasign/yahoo.js": +/*!************************************!*\ + !*** ./lib/lib/jsrsasign/yahoo.js ***! + \************************************/ +/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - "use strict"; - eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?"); +"use strict"; +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"YAHOO\": () => (/* binding */ YAHOO)\n/* harmony export */ });\n/*!\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\nCode licensed under the BSD License:\nhttp://developer.yahoo.com/yui/license.html\nversion: 2.9.0\n*/\nvar YAHOO = {};\nYAHOO.lang = {\n /**\n * Utility to set up the prototype, constructor and superclass properties to\n * support an inheritance strategy that can chain constructors and methods.\n * Static members will not be inherited.\n *\n * @method extend\n * @static\n * @param {Function} subc the object to modify\n * @param {Function} superc the object to inherit\n * @param {Object} overrides additional properties/methods to add to the\n * subclass prototype. These will override the\n * matching items obtained from the superclass\n * if present.\n */\n extend: function (subc, superc, overrides) {\n if (!superc || !subc) {\n throw new Error(\"YAHOO.lang.extend failed, please check that \" +\n \"all dependencies are included.\");\n }\n var F = function () { };\n F.prototype = superc.prototype;\n subc.prototype = new F();\n subc.prototype.constructor = subc;\n subc.superclass = superc.prototype;\n if (superc.prototype.constructor == Object.prototype.constructor) {\n superc.prototype.constructor = superc;\n }\n if (overrides) {\n var i;\n for (i in overrides) {\n subc.prototype[i] = overrides[i];\n }\n /*\n * IE will not enumerate native functions in a derived object even if the\n * function was overridden. This is a workaround for specific functions\n * we care about on the Object prototype.\n * @property _IEEnumFix\n * @param {Function} r the object to receive the augmentation\n * @param {Function} s the object that supplies the properties to augment\n * @static\n * @private\n */\n var _IEEnumFix = function () { }, ADD = [\"toString\", \"valueOf\"];\n try {\n if (/MSIE/.test(navigator.userAgent)) {\n _IEEnumFix = function (r, s) {\n for (i = 0; i < ADD.length; i = i + 1) {\n var fname = ADD[i], f = s[fname];\n if (typeof f === 'function' && f != Object.prototype[fname]) {\n r[fname] = f;\n }\n }\n };\n }\n }\n catch (ex) { }\n ;\n _IEEnumFix(subc.prototype, overrides);\n }\n }\n};\n\n\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?"); - /***/ - }), +/***/ }), - /***/ - "./node_modules/process/browser.js": - /*!*****************************************!*\ - !*** ./node_modules/process/browser.js ***! - \*****************************************/ - /***/ - ((module) => { +/***/ "./node_modules/process/browser.js": +/*!*****************************************!*\ + !*** ./node_modules/process/browser.js ***! + \*****************************************/ +/***/ ((module) => { - eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?"); +eval("// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?"); + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ (() => { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = (exports) => { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ })(); +/******/ +/************************************************************************/ +/******/ +/******/ // startup +/******/ // Load entry module and return exports +/******/ // This entry module can't be inlined because the eval devtool is used. +/******/ var __webpack_exports__ = __webpack_require__("./lib/index.js"); +/******/ __webpack_exports__ = __webpack_exports__["default"]; +/******/ +/******/ return __webpack_exports__; +/******/ })() +; +});ction (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?"); /***/ }) diff --git a/摸鱼儿/api/模板.js b/摸鱼儿/api/模板.js index 9802e5d..82b037b 100644 --- a/摸鱼儿/api/模板.js +++ b/摸鱼儿/api/模板.js @@ -1,116 +1,46 @@ -if (typeof Object.assign !== 'function') { - Object.assign = function() { - let target = arguments[0]; - for (let i = 1; i < arguments.length; i++) { - let source = arguments[i]; - for (let key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } +if (typeof Object.assign != 'function') { + Object.assign = function () { + var target = arguments[0]; + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; } } - return target; - }; -} - -// 通用免嗅探播放 -let common_lazy = `js: - let html = request(input); - let hconf = html.match(/r player_.*?=(.*?)this.length){return false}else{return this.indexOf(search,start)!==-1}}}if(!Array.prototype.includes){Object.defineProperty(Array.prototype,"includes",{value:function(searchElement,fromIndex){if(this==null){throw new TypeError('"this" is null or not defined')}var o=Object(this);var len=o.length>>>0;if(len===0){return false}var n=fromIndex|0;var k=Math.max(n>=0?n:len-Math.abs(n),0);while(k=end){return lists}let first=lists[start];let second=lists[end];if(key){try{first=first[key];second=second[key]}catch(e){}}if(option&&typeof option==="function"){try{first=option(first);second=option(second)}catch(e){}}first+="";second+="";if(first.match(/(\d+)/)&&second.match(/(\d+)/)){let num1=Number(first.match(/(\d+)/)[1]);let num2=Number(second.match(/(\d+)/)[1]);if(num1>num2){lists.reverse()}}return lists}let VODS=[];let VOD={};let TABS=[];let LISTS=[];globalThis.encodeUrl=urlencode;globalThis.urlencode=urlencode;function urljoin(fromPath,nowPath){fromPath=fromPath||"";nowPath=nowPath||"";return joinUrl(fromPath,nowPath)}var urljoin2=urljoin;const defaultParser={pdfh:pdfh,pdfa:pdfa,pd:pd};function pdfh2(html,parse){let html2=html;try{if(typeof html!=="string"){html2=html.rr(html.ele).toString()}}catch(e){print("html对象转文本发生了错误:"+e.message)}let result=defaultParser.pdfh(html2,parse);let option=parse.includes("&&")?parse.split("&&").slice(-1)[0]:parse.split(" ").slice(-1)[0];if(/style/.test(option.toLowerCase())&&/url\(/.test(result)){try{result=result.match(/url\((.*?)\)/)[1];result=result.replace(/^['|"](.*)['|"]$/,"$1")}catch(e){}}return result}function pdfa2(html,parse){let html2=html;try{if(typeof html!=="string"){html2=html.rr(html.ele).toString()}}catch(e){print("html对象转文本发生了错误:"+e.message)}return defaultParser.pdfa(html2,parse)}function pd2(html,parse,uri){let ret=pdfh2(html,parse);if(typeof uri==="undefined"||!uri){uri=""}if(DOM_CHECK_ATTR.test(parse)&&!SPECIAL_URL.test(ret)){if(/http/.test(ret)){ret=ret.substr(ret.indexOf("http"))}else{ret=urljoin(MY_URL,ret)}}return ret}const parseTags={jsp:{pdfh:pdfh2,pdfa:pdfa2,pd:pd2},json:{pdfh(html,parse){if(!parse||!parse.trim()){return""}if(typeof html==="string"){html=JSON.parse(html)}parse=parse.trim();if(!parse.startsWith("$.")){parse="$."+parse}parse=parse.split("||");for(let ps of parse){let ret=cheerio.jp(ps,html);if(Array.isArray(ret)){ret=ret[0]||""}else{ret=ret||""}if(ret&&typeof ret!=="string"){ret=ret.toString()}if(ret){return ret}}return""},pdfa(html,parse){if(!parse||!parse.trim()){return""}if(typeof html==="string"){html=JSON.parse(html)}parse=parse.trim();if(!parse.startsWith("$.")){parse="$."+parse}let ret=cheerio.jp(parse,html);if(Array.isArray(ret)&&Array.isArray(ret[0])&&ret.length===1){return ret[0]||[]}return ret||[]},pd(html,parse){let ret=parseTags.json.pdfh(html,parse);if(ret){return urljoin(MY_URL,ret)}return ret}},jq:{pdfh(html,parse){if(!html||!parse||!parse.trim()){return""}parse=parse.trim();let result=defaultParser.pdfh(html,parse);return result},pdfa(html,parse){if(!html||!parse||!parse.trim()){return[]}parse=parse.trim();let result=defaultParser.pdfa(html,parse);print(`pdfa解析${parse}=>${result.length}`);return result},pd(html,parse,base_url){if(!html||!parse||!parse.trim()){return""}parse=parse.trim();base_url=base_url||MY_URL;return defaultParser.pd(html,parse,base_url)}},getParse(p0){if(p0.startsWith("jsp:")){return this.jsp}else if(p0.startsWith("json:")){return this.json}else if(p0.startsWith("jq:")){return this.jq}else{return this.jq}}};const stringify=JSON.stringify;const jsp=parseTags.jsp;const jq=parseTags.jq;function readFile(filePath){filePath=filePath||"./uri.min.js";var fd=os.open(filePath);var buffer=new ArrayBuffer(1024);var len=os.read(fd,buffer,0,1024);console.log(len);let text=String.fromCharCode.apply(null,new Uint8Array(buffer));console.log(text);return text}function dealJson(html){try{html=html.trim();if(!(html.startsWith("{")&&html.endsWith("}")||html.startsWith("[")&&html.endsWith("]"))){html="{"+html.match(/.*?\{(.*)\}/m)[1]+"}"}}catch(e){}try{html=JSON.parse(html)}catch(e){}return html}var OcrApi={api:OCR_API,classification:function(img){let code="";try{log("通过drpy_ocr验证码接口过验证...");let html=request(OCR_API,{data:{img:img},headers:{"User-Agent":PC_UA},method:"POST"},true);code=html||""}catch(e){log(`OCR识别验证码发生错误:${e.message}`)}return code}};function verifyCode(url){let cnt=0;let host=getHome(url);let cookie="";while(cntit.toLowerCase()==="set-cookie");cookie=setCk?json[setCk].split(";")[0]:""}console.log("cookie:"+cookie);let img=json.body;let code=OcrApi.classification(img);console.log(`第${cnt+1}次验证码识别结果:${code}`);let submit_url=`${host}/index.php/ajax/verify_check?type=search&verify=${code}`;console.log(submit_url);let html=request(submit_url,{headers:{Cookie:cookie,"User-Agent":MOBILE_UA},method:"POST"});html=JSON.parse(html);if(html.msg==="ok"){console.log(`第${cnt+1}次验证码提交成功`);return cookie}else if(html.msg!=="ok"&&cnt+1>=OCR_RETRY){cookie=""}}catch(e){console.log(`第${cnt+1}次验证码提交失败:${e.message}`);if(cnt+1>=OCR_RETRY){cookie=""}}cnt+=1}return cookie}function setItem(k,v){local.set(RKEY,k,v);console.log(`规则${RKEY}设置${k} => ${v}`)}function getItem(k,v){return local.get(RKEY,k)||v}function clearItem(k){local.delete(RKEY,k)}function getHome(url){if(!url){return""}let tmp=url.split("//");url=tmp[0]+"//"+tmp[1].split("/")[0];try{url=decodeURIComponent(url)}catch(e){}return url}function buildUrl(url,obj){obj=obj||{};if(url.indexOf("?")<0){url+="?"}let param_list=[];let keys=Object.keys(obj);keys.forEach(it=>{param_list.push(it+"="+obj[it])});let prs=param_list.join("&");if(keys.length>0&&!url.endsWith("?")){url+="&"}url+=prs;return url}function require(url){eval(request(url))}function request(url,obj,ocr_flag){ocr_flag=ocr_flag||false;if(typeof obj==="undefined"||!obj||obj==={}){if(!fetch_params||!fetch_params.headers){let headers={"User-Agent":MOBILE_UA};if(rule.headers){Object.assign(headers,rule.headers)}if(!fetch_params){fetch_params={}}fetch_params.headers=headers}if(!fetch_params.headers.Referer){fetch_params.headers.Referer=getHome(url)}obj=fetch_params}else{let headers=obj.headers||{};let keys=Object.keys(headers).map(it=>it.toLowerCase());if(!keys.includes("user-agent")){headers["User-Agent"]=MOBILE_UA}if(!keys.includes("referer")){headers["Referer"]=getHome(url)}obj.headers=headers}if(rule.encoding&&rule.encoding!=="utf-8"&&!ocr_flag){if(!obj.headers.hasOwnProperty("Content-Type")&&!obj.headers.hasOwnProperty("content-type")){obj.headers["Content-Type"]="text/html; charset="+rule.encoding}}if(typeof obj.body!="undefined"&&obj.body&&typeof obj.body==="string"){if(!obj.headers.hasOwnProperty("Content-Type")&&!obj.headers.hasOwnProperty("content-type")){obj.headers["Content-Type"]="application/x-www-form-urlencoded; charset="+rule.encoding}}else if(typeof obj.body!="undefined"&&obj.body&&typeof obj.body==="object"){obj.data=obj.body;delete obj.body}if(!url){return obj.withHeaders?"{}":""}if(obj.toBase64){obj.buffer=2;delete obj.toBase64}console.log(JSON.stringify(obj.headers));console.log("request:"+url+`|method:${obj.method||"GET"}|body:${obj.body||""}`);let res=req(url,obj);let html=res.content||"";if(obj.withHeaders){let htmlWithHeaders=res.headers;htmlWithHeaders.body=html;return JSON.stringify(htmlWithHeaders)}else{return html}}function post(url,obj){obj.method="POST";return request(url,obj)}fetch=request;print=function(data){data=data||"";if(typeof data=="object"&&Object.keys(data).length>0){try{data=JSON.stringify(data);console.log(data)}catch(e){console.log(typeof data+":"+data.length);return}}else if(typeof data=="object"&&Object.keys(data).length<1){console.log("null object")}else{console.log(data)}};log=print;function checkHtml(html,url,obj){if(/\?btwaf=/.test(html)){let btwaf=html.match(/btwaf(.*?)"/)[1];url=url.split("#")[0]+"?btwaf"+btwaf;print("宝塔验证访问链接:"+url);html=request(url,obj)}return html}function getCode(url,obj){let html=request(url,obj);html=checkHtml(html,url,obj);return html}function getHtml(url){let obj={};if(rule.headers){obj.headers=rule.headers}let cookie=getItem(RULE_CK,"");if(cookie){if(obj.headers&&!Object.keys(obj.headers).map(it=>it.toLowerCase()).includes("cookie")){log("历史无cookie,新增过验证后的cookie");obj.headers["Cookie"]=cookie}else if(obj.headers&&obj.headers.cookie&&obj.headers.cookie!==cookie){obj.headers["Cookie"]=cookie;log("历史有小写过期的cookie,更新过验证后的cookie")}else if(obj.headers&&obj.headers.Cookie&&obj.headers.Cookie!==cookie){obj.headers["Cookie"]=cookie;log("历史有大写过期的cookie,更新过验证后的cookie")}else if(!obj.headers){obj.headers={Cookie:cookie};log("历史无headers,更新过验证后的含cookie的headers")}}let html=getCode(url,obj);return html}function homeParse(homeObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let classes=[];if(homeObj.class_name&&homeObj.class_url){let names=homeObj.class_name.split("&");let urls=homeObj.class_url.split("&");let cnt=Math.min(names.length,urls.length);for(let i=0;i=3){try{let html=getHtml(homeObj.MY_URL);if(html){homeHtmlCache=html;let list=_pdfa(html,p[0]);if(list&&list.length>0){list.forEach((it,idex)=>{try{let name=_pdfh(it,p[1]);if(homeObj.cate_exclude&&new RegExp(homeObj.cate_exclude).test(name)){return}let url=_pd(it,p[2]);if(p.length>3&&p[3]){let exp=new RegExp(p[3]);url=url.match(exp)[1]}classes.push({type_id:url.trim(),type_name:name.trim()})}catch(e){console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`)}})}}}catch(e){console.log(e.message)}}}classes=classes.filter(it=>!homeObj.cate_exclude||!new RegExp(homeObj.cate_exclude).test(it.type_name));let resp={class:classes};if(homeObj.filter){resp.filters=homeObj.filter}console.log(JSON.stringify(resp));return JSON.stringify(resp)}function getPP(p,pn,pp,ppn){try{let ps=p[pn]==="*"&&pp.length>ppn?pp[ppn]:p[pn];return ps}catch(e){return""}}function homeVodParse(homeVodObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];MY_URL=homeVodObj.homeUrl;console.log(MY_URL);let t1=(new Date).getTime();let p=homeVodObj.推荐;print("p:"+p);if(p==="*"&&rule.一级){p=rule.一级;homeVodObj.double=false}if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级.split(";");if(p.startsWith("js:")){const TYPE="home";var input=MY_URL;HOST=rule.host;eval(p.replace("js:",""));d=VODS}else{p=p.split(";");if(!homeVodObj.double&&p.length<5){return"{}"}else if(homeVodObj.double&&p.length<6){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");let html=homeHtmlCache||getHtml(MY_URL);homeHtmlCache=undefined;if(is_json){html=dealJson(html)}try{console.log("double:"+homeVodObj.double);if(homeVodObj.double){let items=_pdfa(html,p0);let p1=getPP(p,1,pp,0);let p2=getPP(p,2,pp,1);let p3=getPP(p,3,pp,2);let p4=getPP(p,4,pp,3);let p5=getPP(p,5,pp,4);let p6=getPP(p,6,pp,5);for(let item of items){let items2=_pdfa(item,p1);for(let item2 of items2){try{let title=_pdfh(item2,p2);let img="";try{img=_pd(item2,p3)}catch(e){}let desc="";try{desc=_pdfh(item2,p4)}catch(e){}let links=[];for(let _p5 of p5.split("+")){let link=!homeVodObj.detailUrl?_pd(item2,_p5,MY_URL):_pdfh(item2,_p5);links.push(link)}let content;if(p.length>6&&p[6]){content=_pdfh(item2,p6)}else{content=""}let vid=links.join("$");if(rule.二级==="*"){vid=vid+"@@"+title+"@@"+img}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:vid};d.push(vod)}catch(e){console.log("首页列表双层定位处理发生错误:"+e.message)}}}}else{let items=_pdfa(html,p0);let p1=getPP(p,1,pp,1);let p2=getPP(p,2,pp,2);let p3=getPP(p,3,pp,3);let p4=getPP(p,4,pp,4);let p5=getPP(p,5,pp,5);for(let item of items){try{let title=_pdfh(item,p1);let img="";try{img=_pd(item,p2,MY_URL)}catch(e){}let desc="";try{desc=_pdfh(item,p3)}catch(e){}let links=[];for(let _p5 of p4.split("+")){let link=!homeVodObj.detailUrl?_pd(item,_p5,MY_URL):_pdfh(item,_p5);links.push(link)}let content;if(p.length>5&&p[5]){content=_pdfh(item,p5)}else{content=""}let vid=links.join("$");if(rule.二级==="*"){vid=vid+"@@"+title+"@@"+img}let vod={vod_name:title,vod_pic:img,vod_remarks:desc,vod_content:content,vod_id:vid};d.push(vod)}catch(e){console.log("首页列表单层定位处理发生错误:"+e.message)}}}}catch(e){}}let t2=(new Date).getTime();console.log("加载首页推荐耗时:"+(t2-t1)+"毫秒");if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}if(d.length>0){print(d.slice(0,2))}return JSON.stringify({list:d})}function categoryParse(cateObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let p=cateObj.一级;if(!p||typeof p!=="string"){return"{}"}let d=[];let url=cateObj.url.replaceAll("fyclass",cateObj.tid);if(cateObj.pg===1&&url.includes("[")&&url.includes("]")){url=url.split("[")[1].split("]")[0]}else if(cateObj.pg>1&&url.includes("[")&&url.includes("]")){url=url.split("[")[0]}if(rule.filter_url){if(!/fyfilter/.test(url)){if(!url.endsWith("&")&&!rule.filter_url.startsWith("&")){url+="&"}url+=rule.filter_url}else{url=url.replace("fyfilter",rule.filter_url)}let fl=cateObj.filter?cateObj.extend:{};if(rule.filter_def&&typeof rule.filter_def==="object"){try{if(Object.keys(rule.filter_def).length>0&&rule.filter_def.hasOwnProperty(cateObj.tid)){let self_fl_def=rule.filter_def[cateObj.tid];if(self_fl_def&&typeof self_fl_def==="object"){let fl_def=JSON.parse(JSON.stringify(self_fl_def));fl=Object.assign(fl_def,fl)}}}catch(e){print("合并不同分类对应的默认筛选出错:"+e.message)}}let new_url;new_url=cheerio.jinja2(url,{fl:fl});url=new_url}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",cateObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",cateObj.pg)}}MY_URL=url;console.log(MY_URL);p=p.trim();const MY_CATE=cateObj.tid;if(p.startsWith("js:")){var MY_FL=cateObj.extend;const TYPE="cate";var input=MY_URL;const MY_PAGE=cateObj.pg;var desc="";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p[0].startsWith("json:");p[0]=p[0].replace(/^(jsp:|json:|jq:)/,"");try{let html=getHtml(MY_URL);if(html){if(is_json){html=dealJson(html)}let list=_pdfa(html,p[0]);list.forEach(it=>{let links=p[4].split("+").map(p4=>{return!rule.detailUrl?_pd(it,p4,MY_URL):_pdfh(it,p4)});let link=links.join("$");let vod_id=rule.detailUrl?MY_CATE+"$"+link:link;let vod_name=_pdfh(it,p[1]).replace(/\n|\t/g,"").trim();let vod_pic=_pd(it,p[2],MY_URL);if(rule.二级==="*"){vod_id=vod_id+"@@"+vod_name+"@@"+vod_pic}d.push({vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,vod_remarks:_pdfh(it,p[3]).replace(/\n|\t/g,"").trim()})})}}catch(e){console.log(e.message)}}if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}if(d.length>0){print(d.slice(0,2))}let pagecount=0;if(rule.pagecount&&typeof rule.pagecount==="object"&&rule.pagecount.hasOwnProperty(MY_CATE)){print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`);pagecount=parseInt(rule.pagecount[MY_CATE])}let nodata={list:[{vod_name:"无数据,防无限请求",vod_id:"no_data",vod_remarks:"不要点,会崩的",vod_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"}],total:1,pagecount:1,page:1,limit:1};let vod=d.length<1?JSON.stringify(nodata):JSON.stringify({page:parseInt(cateObj.pg),pagecount:pagecount||999,limit:20,total:999,list:d});return vod}function searchParse(searchObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let d=[];if(!searchObj.searchUrl){return"{}"}let p=searchObj.搜索==="*"&&rule.一级?rule.一级:searchObj.搜索;if(!p||typeof p!=="string"){return"{}"}p=p.trim();let pp=rule.一级.split(";");let url=searchObj.searchUrl.replaceAll("**",searchObj.wd);if(searchObj.pg===1&&url.includes("[")&&url.includes("]")&&!url.includes("#")){url=url.split("[")[1].split("]")[0]}else if(searchObj.pg>1&&url.includes("[")&&url.includes("]")&&!url.includes("#")){url=url.split("[")[0]}if(/fypage/.test(url)){if(url.includes("(")&&url.includes(")")){let url_rep=url.match(/.*?\((.*)\)/)[1];let cnt_page=url_rep.replaceAll("fypage",searchObj.pg);let cnt_pg=eval(cnt_page);url=url.replaceAll(url_rep,cnt_pg).replaceAll("(","").replaceAll(")","")}else{url=url.replaceAll("fypage",searchObj.pg)}}MY_URL=url;console.log(MY_URL);if(p.startsWith("js:")){const TYPE="search";const MY_PAGE=searchObj.pg;const KEY=searchObj.wd;var input=MY_URL;var detailUrl=rule.detailUrl||"";eval(p.trim().replace("js:",""));d=VODS}else{p=p.split(";");if(p.length<5){return"{}"}let p0=getPP(p,0,pp,0);let _ps=parseTags.getParse(p0);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;let is_json=p0.startsWith("json:");p0=p0.replace(/^(jsp:|json:|jq:)/,"");try{let req_method=MY_URL.split(";").length>1?MY_URL.split(";")[1].toLowerCase():"get";let html;if(req_method==="post"){let rurls=MY_URL.split(";")[0].split("#");let rurl=rurls[0];let params=rurls.length>1?rurls[1]:"";print(`post=》rurl:${rurl},params:${params}`);let _fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let postData={body:params};Object.assign(_fetch_params,postData);html=post(rurl,_fetch_params)}else if(req_method==="postjson"){let rurls=MY_URL.split(";")[0].split("#");let rurl=rurls[0];let params=rurls.length>1?rurls[1]:"";print(`postjson-》rurl:${rurl},params:${params}`);try{params=JSON.parse(params)}catch(e){params="{}"}let _fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let postData={body:params};Object.assign(_fetch_params,postData);html=post(rurl,_fetch_params)}else{html=getHtml(MY_URL)}if(html){if(/系统安全验证|输入验证码/.test(html)){let cookie=verifyCode(MY_URL);if(cookie){console.log(`本次成功过验证,cookie:${cookie}`);setItem(RULE_CK,cookie)}else{console.log(`本次自动过搜索验证失败,cookie:${cookie}`)}html=getHtml(MY_URL)}if(!html.includes(searchObj.wd)){console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码");console.log(html)}if(is_json){html=dealJson(html)}let list=_pdfa(html,p0);let p1=getPP(p,1,pp,1);let p2=getPP(p,2,pp,2);let p3=getPP(p,3,pp,3);let p4=getPP(p,4,pp,4);let p5=getPP(p,5,pp,5);list.forEach(it=>{let links=p4.split("+").map(_p4=>{return!rule.detailUrl?_pd(it,_p4,MY_URL):_pdfh(it,_p4)});let link=links.join("$");let content;if(p.length>5&&p[5]){content=_pdfh(it,p5)}else{content=""}let vod_id=link;let vod_name=_pdfh(it,p1).replace(/\n|\t/g,"").trim();let vod_pic=_pd(it,p2,MY_URL);if(rule.二级==="*"){vod_id=vod_id+"@@"+vod_name+"@@"+vod_pic}let ob={vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,vod_remarks:_pdfh(it,p3).replace(/\n|\t/g,"").trim(),vod_content:content.replace(/\n|\t/g,"").trim()};d.push(ob)})}}catch(e){print("搜索发生错误:"+e.message);return"{}"}}if(rule.图片来源){d.forEach(it=>{if(it.vod_pic&&it.vod_pic.startsWith("http")){it.vod_pic=it.vod_pic+rule.图片来源}})}return JSON.stringify({page:parseInt(searchObj.pg),pagecount:10,limit:20,total:100,list:d})}function detailParse(detailObj){let t1=(new Date).getTime();fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));let orId=detailObj.orId;let vod_name="片名";let vod_pic="";let vod_id=orId;if(rule.二级==="*"){let extra=orId.split("@@");vod_name=extra.length>1?extra[1]:vod_name;vod_pic=extra.length>2?extra[2]:vod_pic}let vod={vod_id:vod_id,vod_name:vod_name,vod_pic:vod_pic,type_name:"类型",vod_year:"年份",vod_area:"地区",vod_remarks:"更新信息",vod_actor:"主演",vod_director:"导演",vod_content:"简介"};let p=detailObj.二级;let url=detailObj.url;let detailUrl=detailObj.detailUrl;let fyclass=detailObj.fyclass;let tab_exclude=detailObj.tab_exclude;let html=detailObj.html||"";MY_URL=url;if(detailObj.二级访问前){try{print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`);eval(detailObj.二级访问前.trim().replace("js:",""))}catch(e){print(`二级访问前执行代码出现错误:${e.message}`)}}if(p==="*"){vod.vod_play_from="道长在线";vod.vod_remarks=detailUrl;vod.vod_actor="没有二级,只有一级链接直接嗅探播放";vod.vod_content=MY_URL;vod.vod_play_url="嗅探播放$"+MY_URL.split("@@")[0]}else if(typeof p==="string"&&p.trim().startsWith("js:")){const TYPE="detail";var input=MY_URL;var play_url="";eval(p.trim().replace("js:",""));vod=VOD;console.log(JSON.stringify(vod))}else if(p&&typeof p==="object"){let tt1=(new Date).getTime();if(!html){html=getHtml(MY_URL)}print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`);let _ps;if(p.is_json){print("二级是json");_ps=parseTags.json;html=dealJson(html)}else if(p.is_jsp){print("二级是jsp");_ps=parseTags.jsp}else if(p.is_jq){print("二级是jq");_ps=parseTags.jq}else{print("二级默认jq");_ps=parseTags.jq}let tt2=(new Date).getTime();print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;if(p.title){let p1=p.title.split(";");vod.vod_name=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();let type_name=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").replace(/ /g,"").trim():"";vod.type_name=type_name||vod.type_name}if(p.desc){try{let p1=p.desc.split(";");vod.vod_remarks=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim();vod.vod_year=p1.length>1?_pdfh(html,p1[1]).replace(/\n|\t/g,"").trim():"";vod.vod_area=p1.length>2?_pdfh(html,p1[2]).replace(/\n|\t/g,"").trim():"";vod.vod_actor=p1.length>3?_pdfh(html,p1[3]).replace(/\n|\t/g,"").trim():"";vod.vod_director=p1.length>4?_pdfh(html,p1[4]).replace(/\n|\t/g,"").trim():""}catch(e){}}if(p.content){try{let p1=p.content.split(";");vod.vod_content=_pdfh(html,p1[0]).replace(/\n|\t/g,"").trim()}catch(e){}}if(p.img){try{let p1=p.img.split(";");vod.vod_pic=_pd(html,p1[0],MY_URL)}catch(e){}}let vod_play_from="$$$";let playFrom=[];if(p.重定向&&p.重定向.startsWith("js:")){print("开始执行重定向代码:"+p.重定向);html=eval(p.重定向.replace("js:",""))}if(p.tabs){if(p.tabs.startsWith("js:")){print("开始执行tabs代码:"+p.tabs);var input=MY_URL;eval(p.tabs.replace("js:",""));playFrom=TABS}else{let p_tab=p.tabs.split(";")[0];let vHeader=_pdfa(html,p_tab);console.log(vHeader.length);let tab_text=p.tab_text||"body&&Text";let new_map={};for(let v of vHeader){let v_title=_pdfh(v,tab_text).trim();console.log(v_title);if(tab_exclude&&new RegExp(tab_exclude).test(v_title)){continue}if(!new_map.hasOwnProperty(v_title)){new_map[v_title]=1}else{new_map[v_title]+=1}if(new_map[v_title]>1){v_title+=Number(new_map[v_title]-1)}playFrom.push(v_title)}}console.log(JSON.stringify(playFrom))}else{playFrom=["道长在线"]}vod.vod_play_from=playFrom.join(vod_play_from);let vod_play_url="$$$";let vod_tab_list=[];if(p.lists){if(p.lists.startsWith("js:")){print("开始执行lists代码:"+p.lists);try{var input=MY_URL;var play_url="";eval(p.lists.replace("js:",""));for(let i in LISTS){if(LISTS.hasOwnProperty(i)){try{LISTS[i]=LISTS[i].map(it=>it.split("$").slice(0,2).join("$"))}catch(e){print("格式化LISTS发生错误:"+e.message)}}}vod_play_url=LISTS.map(it=>it.join("#")).join(vod_play_url)}catch(e){print("js执行lists: 发生错误:"+e.message)}}else{let list_text=p.list_text||"body&&Text";let list_url=p.list_url||"a&&href";let is_tab_js=p.tabs.trim().startsWith("js:");for(let i=0;i1&&!is_tab_js?p.tabs.split(";")[1]:"";let p1=p.lists.replaceAll("#idv",tab_name).replaceAll("#id",i);tab_ext=tab_ext.replaceAll("#idv",tab_name).replaceAll("#id",i);let tabName=tab_ext?_pdfh(html,tab_ext):tab_name;console.log(tabName);let new_vod_list=[];let tt1=(new Date).getTime();if(typeof pdfl==="function"){new_vod_list=pdfl(html,p1,list_text,list_url,MY_URL)}else{let vodList=[];try{vodList=_pdfa(html,p1);console.log("len(vodList):"+vodList.length)}catch(e){}for(let i=0;i0){new_vod_list=forceOrder(new_vod_list,"",x=>x.split("$")[0]);console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`)}let vlist=new_vod_list.join("#");vod_tab_list.push(vlist)}vod_play_url=vod_tab_list.join(vod_play_url)}}vod.vod_play_url=vod_play_url}if(rule.图片来源&&vod.vod_pic&&vod.vod_pic.startsWith("http")){vod.vod_pic=vod.vod_pic+rule.图片来源}if(!vod.vod_id||vod_id.includes("$")&&vod.vod_id!==vod_id){vod.vod_id=vod_id}let t2=(new Date).getTime();console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`);vod=vodDeal(vod);return JSON.stringify({list:[vod]})}function get_tab_index(vod){let obj={};vod.vod_play_from.split("$$$").forEach((it,index)=>{obj[it]=index});return obj}function vodDeal(vod){let vod_play_from=vod.vod_play_from.split("$$$");let vod_play_url=vod.vod_play_url.split("$$$");let tab_removed_list=vod_play_from;let tab_ordered_list=vod_play_from;let tab_renamed_list=vod_play_from;let tab_list=vod_play_from;let play_ordered_list=vod_play_url;if(rule.tab_remove&&rule.tab_remove.length>0||rule.tab_order&&rule.tab_order.length>0){let tab_index_dict=get_tab_index(vod);if(rule.tab_remove&&rule.tab_remove.length>0){tab_removed_list=vod_play_from.filter(it=>!rule.tab_remove.includes(it));tab_list=tab_removed_list}if(rule.tab_order&&rule.tab_order.length>0){let tab_order=rule.tab_order;tab_ordered_list=tab_removed_list.sort((a,b)=>{return(tab_order.indexOf(a)===-1?9999:tab_order.indexOf(a))-(tab_order.indexOf(b)===-1?9999:tab_order.indexOf(b))});tab_list=tab_ordered_list}play_ordered_list=tab_list.map(it=>vod_play_url[tab_index_dict[it]])}if(rule.tab_rename&&typeof rule.tab_rename==="object"&Object.keys(rule.tab_rename).length>0){tab_renamed_list=tab_list.map(it=>rule.tab_rename[it]||it);tab_list=tab_renamed_list}vod.vod_play_from=tab_list.join("$$$");vod.vod_play_url=play_ordered_list.join("$$$");return vod}function tellIsJx(url){try{let is_vip=!/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0])&&是否正版(url);return is_vip?1:0}catch(e){return 1}}function playParse(playObj){fetch_params=JSON.parse(JSON.stringify(rule_fetch_params));MY_URL=playObj.url;if(!/http/.test(MY_URL)){try{MY_URL=base64Decode(MY_URL)}catch(e){}}MY_URL=decodeURIComponent(MY_URL);var input=MY_URL;let common_play={parse:1,url:input,jx:tellIsJx(input)};let lazy_play;if(!rule.play_parse||!rule.lazy){lazy_play=common_play}else if(rule.play_parse&&rule.lazy&&typeof rule.lazy==="string"){try{let lazy_code=rule.lazy.replace("js:","").trim();print("开始执行js免嗅=>"+lazy_code);eval(lazy_code);lazy_play=typeof input==="object"?input:{parse:1,jx:tellIsJx(input),url:input}}catch(e){print("js免嗅错误:"+e.message);lazy_play=common_play}}else{lazy_play=common_play}if(Array.isArray(rule.play_json)&&rule.play_json.length>0){let web_url=lazy_play.url;for(let pjson of rule.play_json){if(pjson.re&&(pjson.re==="*"||web_url.match(new RegExp(pjson.re)))){if(pjson.json&&typeof pjson.json==="object"){let base_json=pjson.json;lazy_play=Object.assign(lazy_play,base_json);break}}}}else if(rule.play_json&&!Array.isArray(rule.play_json)){let base_json={jx:1,parse:1};lazy_play=Object.assign(lazy_play,base_json)}else if(!rule.play_json){let base_json={jx:0,parse:1};lazy_play=Object.assign(lazy_play,base_json)}console.log(JSON.stringify(lazy_play));return JSON.stringify(lazy_play)}function proxyParse(proxyObj){var input=proxyObj.params;if(proxyObj.proxy_rule){log("准备执行本地代理规则:\n"+proxyObj.proxy_rule);try{eval(proxyObj.proxy_rule);if(input&&input!==proxyObj.params&&Array.isArray(input)&&input.length===3){return input}else{return[404,"text/plain","Not Found"]}}catch(e){return[500,"text/plain","代理规则错误:"+e.message]}}else{return[404,"text/plain","Not Found"]}}function isVideoParse(isVideoObj){var input=isVideoObj.url;if(!isVideoObj.t){let re_matcher=new RegExp(isVideoObj.isVideo,"i");return re_matcher.test(input)}else{try{eval(isVideoObj.isVideo);if(typeof input==="boolean"){return input}else{return false}}catch(e){log("执行嗅探规则发生错误:"+e.message);return false}}}function init(ext){console.log("init");try{let muban=模板.getMubans();if(typeof ext=="object"){rule=ext}else if(typeof ext=="string"){if(ext.startsWith("http")){let js=request(ext,{method:"GET"});if(js){eval(js.replace("var rule","rule"))}}else{eval(ext.replace("var rule","rule"))}}if(rule.模板&&muban.hasOwnProperty(rule.模板)){print("继承模板:"+rule.模板);rule=Object.assign(muban[rule.模板],rule)}let rule_cate_excludes=(rule.cate_exclude||"").split("|").filter(it=>it.trim());let rule_tab_excludes=(rule.tab_exclude||"").split("|").filter(it=>it.trim());rule_cate_excludes=rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it=>it.trim()));rule_tab_excludes=rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it=>it.trim()));rule.cate_exclude=rule_cate_excludes.join("|");rule.tab_exclude=rule_tab_excludes.join("|");rule.host=(rule.host||"").rstrip("/");HOST=rule.host;if(rule.hostJs){console.log(`检测到hostJs,准备执行...`);try{eval(rule.hostJs);rule.host=HOST.rstrip("/")}catch(e){console.log(`执行${rule.hostJs}获取host发生错误:`+e.message)}}rule.url=rule.url||"";rule.double=rule.double||false;rule.homeUrl=rule.homeUrl||"";rule.detailUrl=rule.detailUrl||"";rule.searchUrl=rule.searchUrl||"";rule.homeUrl=rule.host&&rule.homeUrl?urljoin(rule.host,rule.homeUrl):rule.homeUrl||rule.host;rule.detailUrl=rule.host&&rule.detailUrl?urljoin(rule.host,rule.detailUrl):rule.detailUrl;rule.二级访问前=rule.二级访问前||"";if(rule.url.includes("[")&&rule.url.includes("]")){let u1=rule.url.split("[")[0];let u2=rule.url.split("[")[1].split("]")[0];rule.url=rule.host&&rule.url?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.url}else{rule.url=rule.host&&rule.url?urljoin(rule.host,rule.url):rule.url}if(rule.searchUrl.includes("[")&&rule.searchUrl.includes("]")&&!rule.searchUrl.includes("#")){let u1=rule.searchUrl.split("[")[0];let u2=rule.searchUrl.split("[")[1].split("]")[0];rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,u1)+"["+urljoin(rule.host,u2)+"]":rule.searchUrl}else{rule.searchUrl=rule.host&&rule.searchUrl?urljoin(rule.host,rule.searchUrl):rule.searchUrl}rule.timeout=rule.timeout||5e3;rule.encoding=rule.编码||rule.encoding||"utf-8";rule.search_encoding=rule.搜索编码||rule.search_encoding||"";rule.图片来源=rule.图片来源||"";rule.play_json=rule.hasOwnProperty("play_json")?rule.play_json:[];rule.pagecount=rule.hasOwnProperty("pagecount")?rule.pagecount:{};rule.proxy_rule=rule.hasOwnProperty("proxy_rule")?rule.proxy_rule:"";rule.sniffer=rule.hasOwnProperty("sniffer")?rule.sniffer:"";rule.sniffer=!!(rule.sniffer&&rule.sniffer!=="0"&&rule.sniffer!=="false");rule.isVideo=rule.hasOwnProperty("isVideo")?rule.isVideo:"";rule.tab_remove=rule.hasOwnProperty("tab_remove")?rule.tab_remove:[];rule.tab_order=rule.hasOwnProperty("tab_order")?rule.tab_order:[];rule.tab_rename=rule.hasOwnProperty("tab_rename")?rule.tab_rename:{};if(rule.headers&&typeof rule.headers==="object"){try{let header_keys=Object.keys(rule.headers);for(let k of header_keys){if(k.toLowerCase()==="user-agent"){let v=rule.headers[k];console.log(v);if(["MOBILE_UA","PC_UA","UC_UA","IOS_UA","UA"].includes(v)){rule.headers[k]=eval(v)}}else if(k.toLowerCase()==="cookie"){let v=rule.headers[k];if(v&&v.startsWith("http")){console.log(v);try{v=fetch(v);console.log(v);rule.headers[k]=v}catch(e){console.log(`从${v}获取cookie发生错误:`+e.message)}}}}}catch(e){console.log("处理headers发生错误:"+e.message)}}rule_fetch_params={headers:rule.headers||false,timeout:rule.timeout,encoding:rule.encoding};oheaders=rule.headers||{};RKEY=typeof key!=="undefined"&&key?key:"drpy_"+(rule.title||rule.host);pre();init_test()}catch(e){console.log("init_test发生错误:"+e.message)}}let homeHtmlCache=undefined;function home(filter){console.log("home");let homeObj={filter:rule.filter||false,MY_URL:rule.homeUrl,class_name:rule.class_name||"",class_url:rule.class_url||"",class_parse:rule.class_parse||"",cate_exclude:rule.cate_exclude};return homeParse(homeObj)}function homeVod(params){console.log("homeVod");let homeVodObj={"推荐":rule.推荐,double:rule.double,homeUrl:rule.homeUrl,detailUrl:rule.detailUrl};return homeVodParse(homeVodObj)}function category(tid,pg,filter,extend){let cateObj={url:rule.url,"一级":rule.一级,tid:tid,pg:parseInt(pg),filter:filter,extend:extend};return categoryParse(cateObj)}function detail(vod_url){let orId=vod_url;let fyclass="";log("orId:"+orId);if(vod_url.indexOf("$")>-1){let tmp=vod_url.split("$");fyclass=tmp[0];vod_url=tmp[1]}let detailUrl=vod_url.split("@@")[0];let url;if(!detailUrl.startsWith("http")&&!detailUrl.includes("/")){url=rule.detailUrl.replaceAll("fyid",detailUrl).replaceAll("fyclass",fyclass)}else if(detailUrl.includes("/")){url=urljoin(rule.homeUrl,detailUrl)}else{url=detailUrl}let detailObj={orId:orId,url:url,"二级":rule.二级,"二级访问前":rule.二级访问前,detailUrl:detailUrl,fyclass:fyclass,tab_exclude:rule.tab_exclude};return detailParse(detailObj)}function play(flag,id,flags){let playObj={url:id,flag:flag,flags:flags};return playParse(playObj)}function search(wd,quick,pg){if(rule.search_encoding){if(rule.search_encoding.toLowerCase()!=="utf-8"){wd=encodeStr(wd,rule.search_encoding)}}else if(rule.encoding&&rule.encoding.toLowerCase()!=="utf-8"){wd=encodeStr(wd,rule.encoding)}let searchObj={searchUrl:rule.searchUrl,"搜索":rule.搜索,wd:wd,pg:pg||1,quick:quick};return searchParse(searchObj)}function proxy(params){if(rule.proxy_rule&&rule.proxy_rule.trim()){rule.proxy_rule=rule.proxy_rule.trim()}if(rule.proxy_rule.startsWith("js:")){rule.proxy_rule=rule.proxy_rule.replace("js:","")}let proxyObj={params:params,proxy_rule:rule.proxy_rule};return proxyParse(proxyObj)}function sniffer(){let enable_sniffer=rule.sniffer||false;if(enable_sniffer){log("开始执行辅助嗅探代理规则...")}return enable_sniffer}function isVideo(url){let t=0;let is_video;if(rule.isVideo&&rule.isVideo.trim()){is_video=rule.isVideo.trim()}if(is_video.startsWith("js:")){is_video=is_video.replace("js:","");t=1}let isVideoObj={url:url,isVideo:is_video,t:t};let result=isVideoParse(isVideoObj);if(result){log("成功执行辅助嗅探规则并检测到视频地址:\n"+rule.isVideo)}return result}function DRPY(){return{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,proxy:proxy,sniffer:sniffer,isVideo:isVideo}}export default{init:init,home:home,homeVod:homeVod,category:category,detail:detail,play:play,search:search,proxy:proxy,sniffer:sniffer,isVideo:isVideo,DRPY:DRPY}; \ No newline at end of file diff --git a/香雅情/api/gbk.js b/香雅情/api/gbk.js new file mode 100644 index 0000000..796d53a --- /dev/null +++ b/香雅情/api/gbk.js @@ -0,0 +1,68 @@ +/*** + * gbk编码解码函数 + * strTool = gbkTool() strTool.encode(key) + * @returns {{encode: (function(*): *), decode: (function(*): *)}} + */ +export function gbkTool(){ + var data=function(zipData){ + var re=zipData + .replace(/#(\d+)\$/g,function(a,b){ + return Array(+b+3).join('#'); + }) + .replace(/#/g,'####') + .replace(/(\w\w):([\w#]+)(?:,|$)/g,function(a,hd,dt){ + return dt.replace(/../g,function(a){ + if(a!='##'){ + return hd+a; + }else{ + return a; + } + }); + }); + return re; + }('4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f9091929394959697989a9b9c9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b8b9babbbcbdbebfc0c1c2c3c4c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d7d8d9dadcdfe0e3e4eaeced#f0f5f6f8f9fafbfcff,5e:000407090a0b0d0e1213171e1f20212223242528292a2b2c2f303233343536393a3e3f404143464748494a4b4d4e4f50515253565758595a5c5d5f60636465666768696a6b6c6d6e6f70717577797e8182838588898c8d8e92989b9da1a2a3a4a8a9aaabacaeafb0b1b2b4babbbcbdbfc0c1c2c3c4c5c6c7c8cbcccdcecfd0d4d5d7d8d9dadcdddedfe0e1e2e3e4e5e6e7e9ebecedeeeff0f1f2f3f5f8f9fbfcfd,5f:050607090c0d0e10121416191a1c1d1e21222324#282b2c2e30323334353637383b3d3e3f4142434445464748494a4b4c4d4e4f5154595a5b5c5e5f60636567686b6e6f72747576787a7d7e7f83868d8e8f919394969a9b9d9e9fa0a2a3a4a5a6a7a9abacafb0b1b2b3b4b6b8b9babbbebfc0c1c2c7c8cacbced3d4d5dadbdcdedfe2e3e5e6e8e9eceff0f2f3f4f6f7f9fafc,60:0708090b0c10111317181a1e1f2223242c2d2e3031323334363738393a3d3e404445464748494a4c4e4f5153545657585b5c5e5f606165666e71727475777e80#8182858687888a8b8e8f909193959798999c9ea1a2a4a5a7a9aaaeb0b3b5b6b7b9babdbebfc0c1c2c3c4c7c8c9cccdcecfd0d2d3d4d6d7d9dbdee1e2e3e4e5eaf1f2f5f7f8fbfcfdfeff,61:02030405070a0b0c1011121314161718191b1c1d1e21222528292a2c2d2e2f303132333435363738393a3b3c3d3e4041424344454647494b4d4f50525354565758595a5b5c5e5f606163646566696a6b6c6d6e6f717273747678797a7b7c7d7e7f808182838485868788898a8c8d8f9091929395#969798999a9b9c9e9fa0a1a2a3a4a5a6aaabadaeafb0b1b2b3b4b5b6b8b9babbbcbdbfc0c1c3c4c5c6c7c9cccdcecfd0d3d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e7e8e9eaebecedeeeff0f1f2f3f4f6f7f8f9fafbfcfdfe,62:00010203040507091314191c1d1e2023262728292b2d2f303132353638393a3b3c424445464a4f50555657595a5c5d5e5f6061626465687172747577787a7b7d818283858687888b8c8d8e8f9094999c9d9ea3a6a7a9aaadaeafb0b2b3b4b6b7b8babec0c1#c3cbcfd1d5dddee0e1e4eaebf0f2f5f8f9fafb,63:00030405060a0b0c0d0f10121314151718191c2627292c2d2e30313334353637383b3c3e3f40414447484a51525354565758595a5b5c5d60646566686a6b6c6f707273747578797c7d7e7f81838485868b8d9193949597999a9b9c9d9e9fa1a4a6abafb1b2b5b6b9bbbdbfc0c1c2c3c5c7c8cacbccd1d3d4d5d7d8d9dadbdcdddfe2e4e5e6e7e8ebeceeeff0f1f3f5f7f9fafbfcfe,64:0304060708090a0d0e111215161718191a1d1f222324#252728292b2e2f3031323335363738393b3c3e404243494b4c4d4e4f505153555657595a5b5c5d5f60616263646566686a6b6c6e6f70717273747576777b7c7d7e7f8081838688898a8b8c8d8e8f90939497989a9b9c9d9fa0a1a2a3a5a6a7a8aaabafb1b2b3b4b6b9bbbdbebfc1c3c4c6c7c8c9cacbcccfd1d3d4d5d6d9dadbdcdddfe0e1e3e5e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,65:01020304050607080a0b0c0d0e0f10111314151617191a1b1c1d1e1f2021#222324262728292a2c2d30313233373a3c3d404142434446474a4b4d4e5052535457585a5c5f606164656768696a6d6e6f7173757678797a7b7c7d7e7f8081828384858688898a8d8e8f92949596989a9d9ea0a2a3a6a8aaacaeb1b2b3b4b5b6b7b8babbbebfc0c2c7c8c9cacdd0d1d3d4d5d8d9dadbdcdddedfe1e3e4eaebf2f3f4f5f8f9fbfcfdfeff,66:0104050708090b0d1011121617181a1b1c1e2122232426292a2b2c2e3032333738393a3b3d3f40424445464748494a4d4e505158#595b5c5d5e6062636567696a6b6c6d7172737578797b7c7d7f808183858688898a8b8d8e8f909293949598999a9b9c9e9fa0a1a2a3a4a5a6a9aaabacadafb0b1b2b3b5b6b7b8babbbcbdbfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8dadedfe0e1e2e3e4e5e7e8eaebecedeeeff1f5f6f8fafbfd,67:010203040506070c0e0f1112131618191a1c1e20212223242527292e303233363738393b3c3e3f414445474a4b4d5254555758595a5b5d62636466676b6c6e717476#78797a7b7d8082838586888a8c8d8e8f9192939496999b9fa0a1a4a6a9acaeb1b2b4b9babbbcbdbebfc0c2c5c6c7c8c9cacbcccdced5d6d7dbdfe1e3e4e6e7e8eaebedeef2f5f6f7f8f9fafbfcfe,68:01020304060d1012141518191a1b1c1e1f20222324252627282b2c2d2e2f30313435363a3b3f474b4d4f52565758595a5b5c5d5e5f6a6c6d6e6f707172737578797a7b7c7d7e7f8082848788898a8b8c8d8e90919294959698999a9b9c9d9e9fa0a1a3a4a5a9aaabacaeb1b2b4b6b7b8#b9babbbcbdbebfc1c3c4c5c6c7c8cacccecfd0d1d3d4d6d7d9dbdcdddedfe1e2e4e5e6e7e8e9eaebecedeff2f3f4f6f7f8fbfdfeff,69:00020304060708090a0c0f11131415161718191a1b1c1d1e21222325262728292a2b2c2e2f313233353637383a3b3c3e4041434445464748494a4b4c4d4e4f50515253555658595b5c5f616264656768696a6c6d6f7072737475767a7b7d7e7f8183858a8b8c8e8f909192939697999a9d9e9fa0a1a2a3a4a5a6a9aaacaeafb0b2b3b5b6b8b9babcbd#bebfc0c2c3c4c5c6c7c8c9cbcdcfd1d2d3d5d6d7d8d9dadcdddee1e2e3e4e5e6e7e8e9eaebeceeeff0f1f3f4f5f6f7f8f9fafbfcfe,6a:000102030405060708090b0c0d0e0f10111213141516191a1b1c1d1e20222324252627292b2c2d2e30323334363738393a3b3c3f40414243454648494a4b4c4d4e4f515253545556575a5c5d5e5f60626364666768696a6b6c6d6e6f70727374757677787a7b7d7e7f81828385868788898a8b8c8d8f929394959698999a9b9c9d9e9fa1a2a3a4a5a6#a7a8aaadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,6b:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f252628292a2b2c2d2e2f303133343536383b3c3d3f4041424445484a4b4d4e4f5051525354555657585a5b5c5d5e5f606168696b6c6d6e6f7071727374757677787a7d7e7f808588#8c8e8f909194959798999c9d9e9fa0a2a3a4a5a6a7a8a9abacadaeafb0b1b2b6b8b9babbbcbdbec0c3c4c6c7c8c9caccced0d1d8dadcdddedfe0e2e3e4e5e6e7e8e9ecedeef0f1f2f4f6f7f8fafbfcfeff,6c:000102030408090a0b0c0e12171c1d1e2023252b2c2d31333637393a3b3c3e3f434445484b4c4d4e4f5152535658595a62636566676b6c6d6e6f71737577787a7b7c7f8084878a8b8d8e9192959697989a9c9d9ea0a2a8acafb0b4b5b6b7bac0c1c2c3c6c7c8cbcdcecfd1d2d8#d9dadcdddfe4e6e7e9ecedf2f4f9ff,6d:000203050608090a0d0f101113141516181c1d1f20212223242628292c2d2f30343637383a3f404244494c50555657585b5d5f6162646567686b6c6d707172737576797a7b7d7e7f8081838486878a8b8d8f9092969798999a9ca2a5acadb0b1b3b4b6b7b9babbbcbdbec1c2c3c8c9cacdcecfd0d2d3d4d5d7dadbdcdfe2e3e5e7e8e9eaedeff0f2f4f5f6f8fafdfeff,6e:0001020304060708090b0f12131518191b1c1e1f222627282a2c2e30313335#3637393b3c3d3e3f40414245464748494a4b4c4f5051525557595a5c5d5e606162636465666768696a6c6d6f707172737475767778797a7b7c7d8081828487888a8b8c8d8e91929394959697999a9b9d9ea0a1a3a4a6a8a9abacadaeb0b3b5b8b9bcbebfc0c3c4c5c6c8c9cacccdced0d2d6d8d9dbdcdde3e7eaebecedeeeff0f1f2f3f5f6f7f8fafbfcfdfeff,6f:000103040507080a0b0c0d0e101112161718191a1b1c1d1e1f212223252627282c2e303234353738393a3b3c3d3f404142#43444548494a4c4e4f5051525354555657595a5b5d5f60616364656768696a6b6c6f707173757677797b7d7e7f808182838586878a8b8f909192939495969798999a9b9d9e9fa0a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b7b8babbbcbdbebfc1c3c4c5c6c7c8cacbcccdcecfd0d3d4d5d6d7d8d9dadbdcdddfe2e3e4e5e6e7e8e9eaebecedf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,70:000102030405060708090a0b0c0d0e0f1012131415161718191c1d1e1f2021222425262728292a#2b2c2d2e2f30313233343637383a3b3c3d3e3f404142434445464748494a4b4d4e505152535455565758595a5b5c5d5f606162636465666768696a6e7172737477797a7b7d818283848687888b8c8d8f90919397989a9b9e9fa0a1a2a3a4a5a6a7a8a9aab0b2b4b5b6babebfc4c5c6c7c9cbcccdcecfd0d1d2d3d4d5d6d7dadcdddee0e1e2e3e5eaeef0f1f2f3f4f5f6f8fafbfcfeff,71:0001020304050607080b0c0d0e0f111214171b1c1d1e1f2021222324252728292a2b2c2d2e323334#353738393a3b3c3d3e3f4041424344464748494b4d4f505152535455565758595a5b5d5f6061626365696a6b6c6d6f707174757677797b7c7e7f8081828385868788898b8c8d8e909192939596979a9b9c9d9ea1a2a3a4a5a6a7a9aaabadaeafb0b1b2b4b6b7b8babbbcbdbebfc0c1c2c4c5c6c7c8c9cacbcccdcfd0d1d2d3d6d7d8d9dadbdcdddedfe1e2e3e4e6e8e9eaebecedeff0f1f2f3f4f5f6f7f8fafbfcfdfeff,72:0001020304050708090a0b0c0d0e0f101112131415161718191a#1b1c1e1f2021222324252627292b2d2e2f3233343a3c3e40414243444546494a4b4e4f505153545557585a5c5e60636465686a6b6c6d707173747677787b7c7d828385868788898c8e9091939495969798999a9b9c9d9ea0a1a2a3a4a5a6a7a8a9aaabaeb1b2b3b5babbbcbdbebfc0c5c6c7c9cacbcccfd1d3d4d5d6d8dadb#95$,30:000102,00b702:c9c7,00a830:0305,2014ff5e20:162618191c1d,30:141508090a0b0c0d0e0f16171011,00:b1d7f7,22:362728110f2a2908371aa52520,231222:992b2e614c483d1d606e6f64651e3534,26:4240,00b020:3233,2103ff0400a4ff:e0e1,203000a7211626:0605,25:cbcfcec7c6a1a0b3b2,203b21:92909193,30:13#95$,21:70717273747576777879#4$,24:88898a8b8c8d8e8f909192939495969798999a9b7475767778797a7b7c7d7e7f808182838485868760616263646566676869##,32:20212223242526272829##,21:606162636465666768696a6b#97$,ff:010203e505060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5de3#95$,30:4142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f90919293#106$a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6#103$,03:9192939495969798999a9b9c9d9e9fa0a1a3a4a5a6a7a8a9#6$b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c3c4c5c6c7c8c9#5$,fe:3536393a3f403d3e41424344##3b3c373831#3334#104$,04:10111213141501161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f#13$30313233343551363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f#11$,02:cacbd9,20:13152535,21:050996979899,22:151f23526667bf,25:505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727381828384858687#88898a8b8c8d8e8f939495bcbde2e3e4e5,2609229530:121d1e#9$,010100e101ce00e0011300e9011b00e8012b00ed01d000ec014d00f301d200f2016b00fa01d400f901:d6d8dadc,00:fcea,0251e7c701:4448,e7c802:61#2$,31:05060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829#19$,30:212223242526272829,32a333:8e8f9c9d9ea1c4ced1d2d5,fe30ff:e2e4#,212132:31#,20:10#1$,30:fc9b9cfdfe069d9e,fe:494a4b4c4d4e4f50515254555657595a5b5c5d5e5f6061#626364656668696a6b,e7:e7e8e9eaebecedeeeff0f1f2f3,30:07#11$,25:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b#13$,72:dcdddfe2e3e4e5e6e7eaebf5f6f9fdfeff,73:00020405060708090b0c0d0f1011121418191a1f2023242627282d2f30323335363a3b3c3d404142434445464748#494a4b4c4e4f515354555658595a5b5c5d5e5f6162636465666768696a6b6e7071#92$72737475767778797a7b7c7d7f808182838586888a8c8d8f90929394959798999a9c9d9ea0a1a3a4a5a6a7a8aaacadb1b4b5b6b8b9bcbdbebfc1c3c4c5c6c7#cbccced2d3d4d5d6d7d8dadbdcdddfe1e2e3e4e6e8eaebeceeeff0f1f3f4f5f6f7#92$f8f9fafbfcfdfeff,74:0001020407080b0c0d0e1112131415161718191c1d1e1f2021232427292b2d2f31323738393a3b3d3e3f4042434445464748494a4b4c4d#4e4f505152535456585d606162636465666768696a6b6c6e6f717273747578797a#92$7b7c7d7f8284858688898a8c8d8f9192939495969798999a9b9d9fa0a1a2a3a4a5a6aaabacadaeafb0b1b2b3b4b5b6b7b8b9bbbcbdbebfc0c1c2c3c4c5c6c7#c8c9cacbcccdcecfd0d1d3d4d5d6d7d8d9dadbdddfe1e5e7e8e9eaebecedf0f1f2#92$f3f5f8f9fafbfcfdfe,75:0001020305060708090a0b0c0e1012141516171b1d1e202122232426272a2e3436393c3d3f414243444647494a4d5051525355565758#5d5e5f60616263646768696b6c6d6e6f7071737576777a7b7c7d7e808182848587#92$88898a8c8d8e909395989b9c9ea2a6a7a8a9aaadb6b7babbbfc0c1c6cbcccecfd0d1d3d7d9dadcdddfe0e1e5e9ecedeeeff2f3f5f6f7f8fafbfdfe,76:02040607#08090b0d0e0f11121314161a1c1d1e212327282c2e2f31323637393a3b3d414244#92$45464748494a4b4e4f50515253555758595a5b5d5f6061626465666768696a6c6d6e7071727374757677797a7c7f80818385898a8c8d8f9092949597989a9b#9c9d9e9fa0a1a2a3a5a6a7a8a9aaabacadafb0b3b5b6b7b8b9babbbcbdbec0c1c3,554a963f57c3632854ce550954c076:914c,853c77ee827e788d72319698978d6c285b894ffa630966975cb880fa684880ae660276ce51f9655671ac7ff1888450b2596561ca6fb382ad634c625253ed54277b06516b75a45df462d48dcb9776628a8019575d97387f627238767d67cf767e64464f708d2562dc7a17659173ed642c6273822c9881677f724862:6ecc,4f3474e3534a529e7eca90a65e2e6886699c81807ed168d278c5868c9551508d8c2482de80de53058912526576:c4c7c9cbccd3d5d9dadcdddee0e1e2e3e4e6e7e8e9eaebecedf0f3f5f6f7fafbfdff,77:00020305060a0c0e0f1011121314151617181b1c1d1e21232425272a2b#2c2e3031323334393b3d3e3f4244454648494a4b4c4d4e4f52535455565758595c,858496f94fdd582199715b9d62:b1a5,66b48c799c8d7206676f789160b253:5117,8f8880cc8d1d94a1500d72c8590760eb711988ab595482ef672c7b285d297ef7752d6cf58e668ff8903c9f3b6bd491197b145f7c78a784d6853d6b:d5d9d6,5e:0187,75f995ed655d5f:0ac5,8f9f58c181c2907f965b97ad8fb97f168d2c62414fbf53:d85e,8f:a8a9ab,904d68075f6a819888689cd6618b522b762a5f6c658c6fd26ee85bbe644851:75b0,67c44e1979c9997c70b377:5d5e5f606467696a6d6e6f7071727374757677787a7b7c818283868788898a8b8f90939495969798999a9b9c9d9ea1a3a4a6a8abadaeafb1b2b4b6b7b8b9ba#bcbec0c1c2c3c4c5c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d8d9dadddedfe0e1e4,75c55e7673bb83e064ad62e894b56ce2535a52c3640f94c27b944f2f5e1b823681:168a,6e246cca9a736355535c54fa886557e04e0d5e036b657c3f90e8601664e6731c88c16750624d8d22776c8e2991c75f6983dc8521991053c286956b8b60:ede8,707f82:cd31,4ed36ca785cf64cd7cd969fd66f9834953957b564fa7518c6d4b5c428e6d63d253c983:2c36,67e578b4643d5bdf5c945dee8be762c667f48c7a640063ba8749998b8c177f2094f24ea7961098a4660c731677:e6e8eaeff0f1f2f4f5f7f9fafbfc,78:0304050607080a0b0e0f101315191b1e20212224282a2b2e2f31323335363d3f414243444648494a4b4d4f51535458595a#5b5c5e5f606162636465666768696f7071727374757678797a7b7d7e7f80818283,573a5c1d5e38957f507f80a05382655e7545553150218d856284949e671d56326f6e5de2543570928f66626f64a463a35f7b6f8890f481e38fb05c1866685ff16c8996488d81886c649179f057ce6a59621054484e587a0b60e96f848bda627f901e9a8b79e4540375f4630153196c608fdf5f1b9a70803b9f7f4f885c3a8d647fc565a570bd51:45b2,866b5d075ba062bd916c75748e0c7a2061017b794ec77ef877854e1181ed521d51fa6a7153a88e87950496cf6ec19664695a78:848586888a8b8f9092949596999d9ea0a2a4a6a8a9aaabacadaeafb5b6b7b8babbbcbdbfc0c2c3c4c6c7c8cccdcecfd1d2d3d6d7d8dadbdcdddedfe0e1e2e3#e4e5e6e7e9eaebedeeeff0f1f3f5f6f8f9fbfcfdfeff,79:00020304060708090a0b0c,784050a877d7641089e6590463e35ddd7a7f693d4f20823955984e3275ae7a975e:628a,95ef521b5439708a6376952457826625693f918755076df37eaf882262337ef075b5832878c196cc8f9e614874f78bcd6b64523a8d506b21806a847156f153064e:ce1b,51d17c97918b7c074fc38e7f7be17a9c64675d1450ac810676017cb96dec7fe067515b:58f8,78cb64:ae13,63:aa2b,9519642d8fbe7b5476296253592754466b7950a362345e266b864ee38d37888b5f85902e79:0d0e0f1011121415161718191a1b1c1d1f2021222325262728292a2b2c2d2e2f3031323335363738393d3f42434445474a4b4c4d4e4f505152545558596163#6466696a6b6c6e70717273747576797b7c7d7e7f8283868788898b8c8d8e909192,6020803d62c54e39535590f863b880c665e66c2e4f4660ee6de18bde5f3986cb5f536321515a83616863520063638e4850125c9b79775bfc52307a3b60bc905376d75f:b797,76848e6c706f767b7b4977aa51f3909358244f4e6ef48fea654c7b1b72c46da47fdf5ae162b55e95573084827b2c5e1d5f1f90127f1498a063826ec7789870b95178975b57ab75354f4375385e9760e659606dc06bbf788953fc96d551cb52016389540a94938c038dcc7239789f87768fed8c0d53e079:939495969798999b9c9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b6b7b8bcbfc2c4c5c7c8cacccecfd0d3d4d6d7d9dadbdcdddee0e1e2e5e8ea#eceef1f2f3f4f5f6f7f9fafcfeff,7a:0104050708090a0c0f10111213151618191b1c,4e0176ef53ee948998769f0e952d5b9a8ba24e:221c,51ac846361c252a8680b4f97606b51bb6d1e515c6296659796618c46901775d890fd77636bd272:8aec,8bfb583577798d4c675c9540809a5ea66e2159927aef77ed953b6bb565ad7f0e58065151961f5bf958a954288e726566987f56e4949d76fe9041638754c659:1a3a,579b8eb267358dfa8235524160f0581586fe5ce89e454fc4989d8bb95a2560765384627c904f9102997f6069800c513f80335c1499756d314e8c7a:1d1f21222425262728292a2b2c2d2e2f303132343536383a3e4041424344454748494a4b4c4d4e4f50525354555658595a5b5c5d5e5f606162636465666768#696a6b6c6d6e6f717273757b7c7d7e828587898a8b8c8e8f909394999a9b9ea1a2,8d3053d17f5a7b4f4f104e4f96006cd573d085e95e06756a7ffb6a0a77fe94927e4151e170e653cd8fd483038d2972af996d6cdb574a82b365b980aa623f963259a84eff8bbf7eba653e83f2975e556198de80a5532a8bfd542080ba5e9f6cb88d3982ac915a54296c1b52067eb7575f711a6c7e7c89594b4efd5fff61247caa4e305c0167ab87025cf0950b98ce75af70fd902251af7f1d8bbd594951e44f5b5426592b657780a45b7562:76c2,8f905e456c1f7b264f:0fd8,670d7a:a3a4a7a9aaabaeafb0b1b2b4b5b6b7b8b9babbbcbdbec0c1c2c3c4c5c6c7c8c9cacccdcecfd0d1d2d3d4d5d7d8dadbdcdde1e2e4e7e8e9eaebeceef0f1f2f3#f4f5f6f7f8fbfcfe,7b:0001020507090c0d0e1012131617181a1c1d1f21222327292d,6d:6eaa,798f88b15f17752b629a8f854fef91dc65a781:2f51,5e9c81508d74526f89868d4b590d50854ed8961c723681798d1f5bcc8ba3964459877f1a549056:760e,8be565396982949976d66e895e72751867:46d1,7aff809d8d76611f79c665628d635188521a94a27f38809b7eb25c976e2f67607bd9768b9ad8818f7f947cd5641e95507a3f54:4ae5,6b4c640162089e3d80f3759952729769845b683c86e496:0194,94ec4e2a54047ed968398ddf801566f45e9a7fb97b:2f303234353637393b3d3f404142434446484a4d4e535557595c5e5f61636465666768696a6b6c6d6f70737476787a7c7d7f81828384868788898a8b8c8e8f#9192939698999a9b9e9fa0a3a4a5aeafb0b2b3b5b6b7b9babbbcbdbebfc0c2c3c4,57c2803f68975de5653b529f606d9f9a4f9b8eac516c5bab5f135de96c5e62f18d21517194a952fe6c9f82df72d757a267848d2d591f8f9c83c754957b8d4f306cbd5b6459d19f1353e486ca9aa88c3780a16545987e56fa96c7522e74dc52505be1630289024e5662d0602a68fa51735b9851a089c27ba199867f5060ef704c8d2f51495e7f901b747089c4572d78455f529f9f95fa8f689b3c8be17678684267dc8d:ea35,523d8f8a6eda68cd950590ed56fd679c88f98fc754c87b:c5c8c9cacbcdcecfd0d2d4d5d6d7d8dbdcdedfe0e2e3e4e7e8e9ebecedeff0f2f3f4f5f6f8f9fafbfdff,7c:0001020304050608090a0d0e101112131415171819#1a1b1c1d1e20212223242528292b2c2d2e2f3031323334353637393a3b3c3d3e42,9ab85b696d776c264ea55bb39a87916361a890af97e9542b6db55bd251fd558a7f:55f0,64bc634d65f161be608d710a6c:5749,592f676d822a58d5568e8c6a6beb90dd597d801753f76d695475559d83:77cf,683879be548c4f55540876d28c8996026cb36db88d6b89109e648d3a563f9ed175d55f8872e0606854fc4ea86a2a886160528f7054c470d886799e3f6d2a5b8f5f187ea255894faf7334543c539a501954:0e7c,4e4e5ffd745a58f6846b80e1877472d07cca6e567c:434445464748494a4b4c4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717275767778797a7e7f8081828384858687#888a8b8c8d8e8f90939496999a9ba0a1a3a6a7a8a9abacadafb0b4b5b6b7b8babb,5f27864e552c62a44e926caa623782b154d7534e733e6ed1753b521253168bdd69d05f8a60006dee574f6b2273af68538fd87f13636260a3552475ea8c6271156da35ba65e7b8352614c9ec478fa87577c27768751f060f6714c66435e4c604d8c0e707063258f895fbd606286d456de6bc160946167534960e066668d3f79fd4f1a70e96c478b:b3f2,7ed88364660f5a5a9b426d:51f7,8c416d3b4f19706b83b7621660d1970d8d27797851fb57:3efa,673a75787a3d79ef7b957c:bfc0c2c3c4c6c9cbcecfd0d1d2d3d4d8dadbdddee1e2e3e4e5e6e7e9eaebecedeef0f1f2f3f4f5f6f7f9fafcfdfeff,7d:000102030405060708090b0c0d0e0f10#1112131415161718191a1b1c1d1e1f212324252628292a2c2d2e30313233343536,808c99658ff96fc08ba59e2159ec7ee97f095409678168d88f917c4d96c653ca602575be6c7253735ac97ea7632451e0810a5df184df628051805b634f0e796d524260b86d4e5b:c4c2,8b:a1b0,65e25fcc964559937e:e7aa,560967b759394f735bb652a0835a988a8d3e753294be50477a3c4ef767b69a7e5ac16b7c76d1575a5c167b3a95f4714e517c80a9827059787f04832768c067ec78:b177,62e363617b804fed526a51cf835069db92748d:f531,89c1952e7bad4ef67d:3738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6f70717273747576#78797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798,506582305251996f6e:1085,6da75efa50f559dc5c066d466c5f7586848b686859568bb253209171964d854969127901712680f64ea490ca6d479a845a0756bc640594f077eb4fa5811a72e189d2997a7f347ede527f655991758f:7f83,53eb7a9663:eda5,768679f888579636622a52ab8282685467706377776b7aed6d017ed389e359d0621285c982a5754c501f4ecb75a58beb5c4a5dfe7b4b65a491d14eca6d25895f7d2795264ec58c288fdb9773664b79818fd170ec6d787d:999a9b9c9d9e9fa0a1a2a3a4a5a7a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9#dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa,5c3d52b283465162830e775b66769cb84eac60ca7c:beb3,7ecf4e958b66666f988897595883656c955c5f8475c997567a:dfde,51c070af7a9863ea7a767ea0739697ed4e4570784e5d915253a965:51e7,81fc8205548e5c31759a97a062d872d975bd5c459a7983ca5c40548077e94e3e6cae805a62d2636e5de851778ddd8e1e952f4ff153e560e770ac526763509e435a1f5026773753777ee26485652b628963985014723589c951b38bc07edd574783cc94a7519b541b5cfb7d:fbfcfdfeff,7e:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536373839#3a3c3d3e3f40424344454648494a4b4c4d4e4f505152535455565758595a5b5c5d,4fca7ae36d5a90e19a8f55805496536154af5f0063e9697751ef6168520a582a52d8574e780d770b5eb761777ce062:5b97,4ea27095800362f770e49760577782db67ef68f578d5989779d158f354b353ef6e34514b523b5ba28bfe80af554357a660735751542d7a7a60505b5463a762a053e362635bc767af54ed7a9f82e691775e9388e4593857ae630e8de880ef57577b774fa95feb5bbd6b3e53217b5072c2684677:ff36,65f751b54e8f76d45cbf7aa58475594e9b4150807e:5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f909192939495969798999a9c9d9e#aeb4bbbcd6e4ecf9,7f:0a101e37393b3c3d3e3f404143464748494a4b4c4d4e4f5253,998861276e8357646606634656f062:ec69,5ed39614578362c955878721814a8fa3556683b167658d5684dd5a6a680f62e67bee961151706f9c8c3063fd89c861d27f0670c26ee57405699472fc5eca90ce67176d6a635e52b3726280014f6c59e5916a70d96d9d52d24e5096f7956d857e78ca7d2f5121579264c2808b7c7b6cea68f1695e51b7539868a872819ece7bf172f879bb6f137406674e91cc9ca4793c83:8954,540f68174e3d538952b1783e5386522950884f:8bd0,7f:56595b5c5d5e6063646566676b6c6d6f7073757677787a7b7c7d7f8082838485868788898b8d8f9091929395969798999b9ca0a2a3a5a6a8a9aaabacadaeb1#b3b4b5b6b7babbbec0c2c3c4c6c7c8c9cbcdcfd0d1d2d3d6d7d9dadbdcdddee2e3,75e27acb7c926ca596b6529b748354e94fe9805483b28fde95705ec9601c6d9f5e18655b813894fe604b70bc7ec37cae51c968817cb1826f4e248f8691cf667e4eae8c0564a9804a50da759771ce5be58fbd6f664e86648295635ed66599521788c270c852a3730e7433679778f797164e3490bb9cde6dcb51db8d41541d62ce73b283f196f69f8494c34f367f9a51cc707596755cad988653e64ee46e9c740969b4786b998f7559521876246d4167f3516d9f99804b54997b3c7abf7f:e4e7e8eaebecedeff2f4f5f6f7f8f9fafdfeff,80:020708090a0e0f11131a1b1d1e1f2123242b2c2d2e2f303234393a3c3e404144454748494e4f505153555657#595b5c5d5e5f6061626364656667686b6c6d6e6f7072737475767778797a7b7c7d,9686578462e29647697c5a0464027bd36f0f964b82a6536298855e90708963b35364864f9c819e93788c97328d:ef42,9e7f6f5e79845f559646622e9a74541594dd4fa365c55c:6561,7f1586516c2f5f8b73876ee47eff5ce6631b5b6a6ee653754e7163a0756562a18f6e4f264ed16ca67eb68bba841d87ba7f57903b95237ba99aa188f8843d6d1b9a867edc59889ebb739b780186829a:6c82,561b541757cb4e709ea653568fc881097792999286ee6ee1851366fc61626f2b80:7e818285888a8d8e8f909192949597999ea3a6a7a8acb0b3b5b6b8b9bbc5c7c8c9cacbcfd0d1d2d3d4d5d8dfe0e2e3e6eef5f7f9fbfeff,81:000103040507080b#0c1517191b1c1d1f202122232425262728292a2b2d2e3033343537393a3b3c3d3f,8c298292832b76f26c135fd983bd732b8305951a6bdb77db94c6536f830251925e3d8c8c8d384e4873ab679a68859176970971646ca177095a9295416bcf7f8e66275bd059b95a9a95:e8f7,4eec84:0c99,6aac76df9530731b68a65b5f772f919a97617cdc8ff78c1c5f257c7379d889c56ccc871c5bc65e4268c977207ef551:954d,52c95a297f05976282d763cf778485d079d26e3a5e9959998511706d6c1162bf76bf654f60af95fd660e879f9e2394ed54:0d7d,8c2c647881:40414243444547494d4e4f525657585b5c5d5e5f6162636466686a6b6c6f727375767778818384858687898b8c8d8e90929394959697999a9e9fa0a1a2a4a5#a7a9abacadaeafb0b1b2b4b5b6b7b8b9bcbdbebfc4c5c7c8c9cbcdcecfd0d1d2d3,647986116a21819c78e864699b5462b9672b83ab58a89ed86cab6f205bde964c8c0b725f67d062c772614ea959c66bcd589366ae5e5552df6155672876ee776672677a4662ff54:ea50,94a090a35a1c7eb36c164e435976801059485357753796be56ca63208111607c95f96dd65462998151855ae980fd59ae9713502a6ce55c3c62df4f60533f817b90066eba852b62c85e7478be64b5637b5ff55a18917f9e1f5c3f634f80425b7d556e95:4a4d,6d8560a867e072de51dd5b8181:d4d5d6d7d8d9dadbdcdddedfe0e1e2e4e5e6e8e9ebeeeff0f1f2f5f6f7f8f9fafdff,82:030708090a0b0e0f111315161718191a1d2024252627292e323a3c3d3f#404142434546484a4c4d4e5051525354555657595b5c5d5e606162636465666769,62e76cde725b626d94ae7ebd81136d53519c5f04597452aa6012597366968650759f632a61e67cef8bfa54e66b279e256bb485d5545550766ca4556a8db4722c5e156015743662cd6392724c5f986e436d3e65006f5876d878d076fc7554522453db4e535e9e65c180:2ad6,629b5486522870ae888d8dd16ce1547880da57f988f48d54966a914d4f696c9b55b776c6783062a870f96f8e5f6d84ec68da787c7bf781a8670b9e4f636778b0576f7812973962:79ab,528874356bd782:6a6b6c6d71757677787b7c808183858687898c90939495969a9b9ea0a2a3a7b2b5b6babbbcbfc0c2c3c5c6c9d0d6d9dadde2e7e8e9eaecedeef0f2f3f5f6f8#fafcfdfeff,83:000a0b0d1012131618191d1e1f20212223242526292a2e3032373b3d,5564813e75b276ae533975de50fb5c418b6c7bc7504f72479a9798d86f0274e27968648777a562fc98918d2b54c180584e52576a82f9840d5e7351ed74f68bc45c4f57616cfc98875a4678349b448feb7c955256625194fa4ec68386846183e984b257d467345703666e6d668c3166dd7011671f6b3a6816621a59bb4e0351c46f0667d26c8f517668cb59476b6775665d0e81109f5065d779:4841,9a918d775c824e5e4f01542f5951780c56686c148fc45f036c:7de3,8bab639083:3e3f41424445484a4b4c4d4e5355565758595d6270717273747576797a7e7f808182838487888a8b8c8d8f909194959697999a9d9fa1a2a3a4a5a6a7acadae#afb5bbbebfc2c3c4c6c8c9cbcdced0d1d2d3d5d7d9dadbdee2e3e4e6e7e8ebeced,60706d3d7275626694:8ec5,53438fc17b7e4edf8c264e7e9ed494:b1b3,524d6f5c90636d458c3458115d4c6b:2049,67aa545b81547f8c589985375f3a62a26a47953965726084686577a74e544fa85de7979864ac7fd85ced4fcf7a8d520783044e14602f7a8394a64fb54eb279e6743452e482b964d279bd5bdd6c8197528f7b6c22503e537f6e0564ce66746c3060c598778bf75e86743c7a7779cb4e1890b174036c4256da914b6cc58d8b533a86c666f28eaf5c489a716e2083:eeeff3f4f5f6f7fafbfcfeff,84:0002050708090a10121314151617191a1b1e1f20212223292a2b2c2d2e2f30323334353637393a3b3e3f404142434445474849#4a4b4c4d4e4f505253545556585d5e5f606264656667686a6e6f70727477797b7c,53d65a369f8b8da353bb570898a76743919b6cc9516875ca62f372ac52:389d,7f3a7094763853749e4a69b7786e96c088d97fa471:36c3,518967d374e458e4651856b78ba9997662707ed560f970ed58ec4e:c1ba,5fcd97e74efb8ba45203598a7eab62544ecd65e5620e833884c98363878d71946eb65bb97ed2519763c967d480898339881551125b7a59828fb14e736c5d516589258f6f962e854a745e95:10f0,6da682e55f3164926d128428816e9cc3585e8d5b4e0953c184:7d7e7f8081838485868a8d8f90919293949596989a9b9d9e9fa0a2a3a4a5a6a7a8a9aaabacadaeb0b1b3b5b6b7bbbcbec0c2c3c5c6c7c8cbcccecfd2d4d5d7#d8d9dadbdcdee1e2e4e7e8e9eaebedeeeff1f2f3f4f5f6f7f8f9fafbfdfe,85:000102,4f1e6563685155d34e2764149a9a626b5ac2745f82726da968ee50e7838e7802674052396c997eb150bb5565715e7b5b665273ca82eb67495c715220717d886b95ea965564c58d6181b355846c5562477f2e58924f2455468d4f664c4e0a5c1a88f368a2634e7a0d70e7828d52fa97f65c1154e890b57ecd59628d4a86c782:0c0d,8d6664445c0461516d89793e8bbe78377533547b4f388eab6df15a207ec5795e6c885ba15a76751a80be614e6e1758f075:1f25,727253477ef385:030405060708090a0b0d0e0f101214151618191b1c1d1e2022232425262728292a2d2e2f303132333435363e3f404142444546474b4c4d4e4f505152535455#57585a5b5c5d5f60616263656667696a6b6c6d6e6f707173757677787c7d7f8081,770176db526980dc57235e08593172ee65bd6e7f8bd75c388671534177f362fe65f64ec098df86805b9e8bc653f277e24f7f5c4e9a7659cb5f0f793a58eb4e1667ff4e8b62ed8a93901d52bf662f55dc566c90024ed54f8d91ca99706c0f5e0260435ba489c68bd56536624b99965b:88ff,6388552e53d77626517d852c67a268b36b8a62928f9353d482126dd1758f4e668d4e5b70719f85af66:91d9,7f7287009ecd9f205c5e672f8ff06811675f620d7ad658855eb665706f3185:82838688898a8b8c8d8e909192939495969798999a9d9e9fa0a1a2a3a5a6a7a9abacadb1b2b3b4b5b6b8babbbcbdbebfc0c2c3c4c5c6c7c8cacbcccdced1d2#d4d6d7d8d9dadbdddedfe0e1e2e3e5e6e7e8eaebecedeeeff0f1f2f3f4f5f6f7f8,60555237800d6454887075295e05681362f4971c53cc723d8c016c3477617a0e542e77ac987a821c8bf47855671470c165af64955636601d79c153f84e1d6b7b80865bfa55e356db4f:3a3c,99725df3677e80386002988290015b8b8b:bcf5,641c825864de55fd82cf91654fd77d20901f7c9f50f358516eaf5bbf8bc980839178849c7b97867d96:8b8f,7ee59ad3788e5c817a57904296a7795f5b59635f7b0b84d168ad55067f2974107d2295016240584c4ed65b835979585485:f9fafcfdfe,86:0001020304060708090a0b0c0d0e0f10121314151718191a1b1c1d1e1f20212223242526282a2b2c2d2e2f3031323334353637393a3b3d3e3f40#4142434445464748494a4b4c525355565758595b5c5d5f6061636465666768696a,736d631e8e:4b0f,80ce82d462ac53f06cf0915e592a60016c70574d644a8d2a762b6ee9575b6a8075f06f6d8c:2d08,57666bef889278b363a253f970ad6c645858642a580268e0819b55107cd650188eba6dcc8d9f70eb638f6d9b6ed47ee68404684390036dd896768ba85957727985e4817e75bc8a8a68af52548e22951163d098988e44557c4f5366ff568f60d56d9552435c4959296dfb586b75:301c,606c82148146631167618fe2773a8d:f334,94c15e165385542c70c386:6d6f7072737475767778838485868788898e8f90919294969798999a9b9e9fa0a1a2a5a6abadaeb2b3b7b8b9bbbcbdbebfc1c2c3c5c8cccdd2d3d5d6d7dadc#dde0e1e2e3e5e6e7e8eaebeceff5f6f7fafbfcfdff,87:010405060b0c0e0f10111416,6c405ef7505c4ead5ead633a8247901a6850916e77b3540c94dc5f647ae5687663457b527edf75db507762955934900f51f879c37a8156fe5f9290146d825c60571f541051546e4d56e263a89893817f8715892a9000541e5c6f81c062:d658,81319e3596409a:6e7c,692d59a562d3553e631654c786d96d3c5a0374e6889c6b6a59168c4c5f2f6e7e73a9987d4e3870f75b8c7897633d665a769660cb5b9b5a494e0781556c6a738b4ea167897f515f8065fa671b5fd859845a0187:191b1d1f20242627282a2b2c2d2f303233353638393a3c3d404142434445464a4b4d4f505152545556585a5b5c5d5e5f6162666768696a6b6c6d6f71727375#7778797a7f8081848687898a8c8e8f90919294959698999a9b9c9d9ea0a1a2a3a4,5dcd5fae537197e68fdd684556f4552f60df4e3a6f4d7ef482c7840e59d44f:1f2a,5c3e7eac672a851a5473754f80c355829b4f4f4d6e2d8c135c096170536b761f6e29868a658795fb7eb9543b7a337d0a95ee55e17fc174ee631d87176da17a9d621165a1536763e16c835deb545c94a84e4c6c618bec5c4b65e0829c68a754:3e34,6b:cb66,4e9463425348821e4f:0dae,575e620a96fe6664726952:ffa1,609f8bef661471996790897f785277fd6670563b54389521727a87:a5a6a7a9aaaeb0b1b2b4b6b7b8b9bbbcbebfc1c2c3c4c5c7c8c9cccdcecfd0d4d5d6d7d8d9dadcdddedfe1e2e3e4e6e7e8e9ebecedeff0f1f2f3f4f5f6f7f8#fafbfcfdff,88:0001020405060708090b0c0d0e0f101112141718191a1c1d1e1f2023,7a00606f5e0c6089819d591560dc718470ef6eaa6c5072806a8488ad5e2d4e605ab3559c94e36d177cfb9699620f7ec6778e867e5323971e8f9666875ce14fa072ed4e0b53a6590f54136380952851484ed99c9c7ea454b88d248854823795f26d8e5f265acc663e966973:b02e,53bf817a99857fa15baa96:7750,7ebf76f853a2957699997bb189446e584e617fd479658be660f354cd4eab98795df76a6150cf54118c618427785d9704524a54ee56a395006d885bb56dc6665388:2425262728292a2b2c2d2e2f30313334353637383a3b3d3e3f414243464748494a4b4e4f505152535556585a5b5c5d5e5f6066676a6d6f717374757678797a#7b7c80838687898a8c8e8f90919394959798999a9b9d9e9fa0a1a3a5a6a7a8a9aa,5c0f5b5d6821809655787b11654869544e9b6b47874e978b534f631f643a90aa659c80c18c10519968b0537887f961c86c:c4fb,8c225c5185aa82af950c6b238f9b65b05f:fbc3,4fe18845661f8165732960fa51745211578b5f6290a2884c91925e78674f602759d351:44f6,80f853086c7996c4718a4f:11ee,7f9e673d55c5950879c088967ee3589f620c9700865a5618987b5f908bb884c4915753d965ed5e8f755c60647d6e5a7f7e:eaed,8f6955a75ba360ac65cb738488:acaeafb0b2b3b4b5b6b8b9babbbdbebfc0c3c4c7c8cacbcccdcfd0d1d3d6d7dadbdcdddee0e1e6e7e9eaebecedeeeff2f5f6f7fafbfdff,89:0001030405060708#090b0c0d0e0f1114151617181c1d1e1f20222324262728292c2d2e2f3132333537,9009766377297eda9774859b5b667a7496ea884052cb718f5faa65ec8be25bfb9a6f5de16b896c5b8b:adaf,900a8fc5538b62bc9e:262d,54404e2b82bd7259869c5d1688596daf96c554d14e9a8bb6710954bd960970df6df976d04e25781487125ca95ef68a00989c960e708e6cbf594463a9773c884d6f148273583071d5538c781a96c155015f6671305bb48c1a9a8c6b83592e9e2f79e76768626c4f6f75a17f8a6d0b96336c274ef075d2517b68376f3e908081705996747689:38393a3b3c3d3e3f40424345464748494a4b4c4d4e4f505152535455565758595a5b5c5d6061626364656768696a6b6c6d6e6f707172737475767778797a7c#7d7e808284858788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1,64475c2790657a918c2359da54ac8200836f898180006930564e8036723791ce51b64e5f987563964e1a53f666f3814b591c6db24e0058f9533b63d694f14f:9d0a,886398905937905779fb4eea80f075916c825b9c59e85f5d69058681501a5df24e5977e34ee5827a6291661390915c794ebf5f7981c69038808475ab4ea688d4610f6bc55fc64e4976ca6ea28b:e3ae,8c0a8bd15f027f:fccc,7ece83:356b,56e06bb797f3963459fb541f94f66deb5bc5996e5c395f15969089:a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c3cdd3d4d5d7d8d9dbdddfe0e1e2e4e7e8e9eaecedeef0f1f2f4f5f6f7f8f9fa#fbfcfdfeff,8a:01020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d,537082f16a315a749e705e947f2883b984:2425,836787478fce8d6276c85f719896786c662054df62e54f6381c375c85eb896cd8e0a86f9548f6cf36d8c6c38607f52c775285e7d4f1860a05fe75c24753190ae94c072b96cb96e389149670953:cbf3,4f5191c98bf153c85e7c8fc26de44e8e76c26986865e611a82064f:59de,903e9c7c61096e:1d14,96854e885a3196e84e0e5c7f79b95b878bed7fbd738957df828b90c15401904755bb5cea5fa161086b3272f180b28a:891e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f4041424344454647494a4b4c4d4e4f505152535455565758595a5b5c5d5e#5f606162636465666768696a6b6c6d6e6f7071727374757677787a7b7c7d7e7f80,6d745bd388d598848c6b9a6d9e336e0a51:a443,57a38881539f63f48f9556ed54585706733f6e907f188fdc82d1613f6028966266f07ea68d:8ac3,94a55cb37ca4670860a6960580184e9190e75300966851418fd08574915d665597f55b55531d78386742683d54c9707e5bb08f7d518d572854b1651266828d:5e43,810f846c906d7cdf51ff85fb67a365e96fa186a48e81566a90207682707671e58d2362e952196cfd8d3c600e589e618e66fe8d60624e55b36e23672d8f678a:81828384858687888b8c8d8e8f9091929495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3,94e195f87728680569a8548b4e4d70b88bc86458658b5b857a84503a5be877bb6be18a797c986cbe76cf65a98f975d2d5c5586386808536062187ad96e5b7efd6a1f7ae05f706f335f20638c6da867564e085e108d264ed780c07634969c62db662d627e6cbc8d7571677f695146808753ec906e629854f286f08f998005951785178fd96d5973cd659f771f7504782781fb8d1e94884fa6679575b98bca9707632f9547963584b8632377415f8172f04e896014657462ef6b63653f8a:e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8b:0001020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#24252728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,5e2775c790d18bc1829d679d652f5431871877e580a281026c414e4b7ec7804c76f4690d6b966267503c4f84574063076b628dbe53ea65e87eb85fd763:1ab7,81:f3f4,7f6e5e1c5cd95236667a79e97a1a8d28709975d46ede6cbb7a924e2d76c55fe0949f88777ec879cd80bf91cd4ef24f17821f54685dde6d328bcc7ca58f7480985e1a549276b15b99663c9aa473e0682a86db6731732a8b:f8db,90107af970db716e62c477a956314e3b845767f152a986c08d2e94f87b518b:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656768696a6b6d6e6f707172737475767778797a7b7c7d7e7f80818283848586#8788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9facb1bbc7d0ea,8c:091e,4f4f6ce8795d9a7b6293722a62fd4e1378168f6c64b08d5a7bc668695e8488c55986649e58ee72b6690e95258ffd8d5857607f008c0651c6634962d95353684c74228301914c55447740707c6d4a517954a88d4459ff6ecb6dc45b5c7d2b4ed47c7d6ed35b5081ea6e0d5b579b0368d58e2a5b977efc603b7eb590b98d70594f63cd79df8db3535265cf79568bc5963b7ec494bb7e825634918967007f6a5c0a907566285de64f5067de505a4f5c57505e:a7#3$,8c:38393a3b3c3d3e3f4042434445484a4b4d4e4f5051525354565758595b5c5d5e5f60636465666768696c6d6e6f707172747576777b7c7d7e7f808183848687#888b8d8e8f90919293959697999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacad,4e:8d0c,51404e105eff53454e:15981e,9b325b6c56694e2879ba4e3f53154e47592d723b536e6c1056df80e499976bd3777e9f174e:369f,9f104e:5c6993,82885b5b556c560f4ec453:8d9da3a5ae,97658d5d53:1af5262e3e,8d5c53:6663,52:02080e2d333f404c5e615c,84af52:7d82819093,51827f544e:bbc3c9c2e8e1ebde,4f1b4ef34f:2264,4ef54f:2527092b5e67,65384f:5a5d,8c:aeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebec#edeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8d:000102030405060708090a0b0c0d,4f:5f57323d76749189838f7e7baa7cac94e6e8eac5dae3dcd1dff8,50:294c,4ff350:2c0f2e2d,4ffe50:1c0c25287e4355484e6c7ba5a7a9bad6,510650:edece6ee,51:070b,4edd6c3d4f:5865ce,9fa06c467c74516e5dfd9ec999985181591452f9530d8a07531051eb591951554ea051564eb388:6ea4,4eb5811488d279805b3488037fb851:abb1bdbc,8d:0e0f101112131415161718191a1b1c205152575f6568696a6c6e6f717278797a7b7c7d7e7f808283868788898c8d8e8f90929395969798999a9b9c9d9ea0a1#a2a4a5a6a7a8a9aaabacadaeafb0b2b6b7b9bbbdc0c1c2c5c7c8c9cacdd0d2d3d4,51:c796a2a5,8b:a0a6a7aab4b5b7c2c3cbcfced2d3d4d6d8d9dcdfe0e4e8e9eef0f3f6f9fcff,8c:000204070c0f1112141516191b181d1f202125272a2b2e2f32333536,53:697a,96:1d2221312a3d3c4249545f676c7274888d97b0,90:979b9d99aca1b4b3b6ba,8d:d5d8d9dce0e1e2e5e6e7e9edeef0f1f2f4f6fcfeff,8e:00010203040607080b0d0e1011121315161718191a1b1c202124252627282b2d303233343637383b3c3e#3f4345464c4d4e4f505354555657585a5b5c5d5e5f60616263646567686a6b6e71,90:b8b0cfc5bed0c4c7d3e6e2dcd7dbebeffe,91:04221e23312f394346,520d594252:a2acadbe,54ff52:d0d6f0,53df71ee77cd5ef451:f5fc,9b2f53b65f01755a5def57:4ca9a1,58:7ebcc5d1,57:292c2a33392e2f5c3b4269856b867c7b686d7673ada48cb2cfa7b493a0d5d8dad9d2b8f4eff8e4dd,8e:73757778797a7b7d7e808283848688898a8b8c8d8e91929395969798999a9b9d9fa0a1a2a3a4a5a6a7a8a9aaadaeb0b1b3b4b5b6b7b8b9bbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4,58:0b0d,57:fded,58:001e194420656c81899a80,99a89f1961ff82:797d7f8f8aa8848e919799abb8beb0c8cae398b7aecbccc1a9b4a1aa9fc4cea4e1,830982:f7e4,83:0f07,82:dcf4d2d8,830c82:fbd3,83:111a061415,82:e0d5,83:1c515b5c08923c34319b5e2f4f47435f4017602d3a336665,8e:e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8f:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#2425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344,83:681b696c6a6d6eb078b3b4a0aa939c857cb6a97db87b989ea8babcc1,840183:e5d8,580784:180b,83:ddfdd6,84:1c381106,83:d4df,84:0f03,83:f8f9eac5c0,842683:f0e1,84:5c515a597387887a89783c4669768c8e316dc1cdd0e6bdd3cabfbae0a1b9b497e5e3,850c750d853884f085:391f3a,8f:45464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656a808c929da0a1a2a4a5a6a7aaacadaeafb2b3b4b5b7b8babbbcbfc0c3c6#c9cacbcccdcfd2d6d7dae0e1e3e7eceff1f2f4f5f6fafbfcfeff,90:07080c0e131518,85:563b,84:fffc,85:594868645e7a,77a285:43727ba4a8878f79ae9c85b9b7b0d3c1dcff,86:270529163c,5efe5f0859:3c41,803759:555a58,530f5c:22252c34,62:4c6a9fbbcadad7ee,632262f663:394b43adf6717a8eb46dac8a69aebcf2f8e0ffc4dece,645263:c6be,64:45410b1b200c26215e846d96,90:191c2324252728292a2b2c303132333437393a3d3f4043454648494a4b4c4e545556595a5c5d5e5f6061646667696a6b6c6f70717273767778797a7b7c7e81#84858687898a8c8d8e8f90929496989a9c9e9fa0a4a5a7a8a9abadb2b7bcbdbfc0,64:7ab7b899bac0d0d7e4e2,65:09252e,5f:0bd2,75195f1153:5ff1fde9e8fb,54:1216064b5253545643215759233282947771649a9b8476669dd0adc2b4d2a7a6d3d472a3d5bbbfccd9dadca9aaa4ddcfde,551b54e7552054fd551454f355:22230f11272a678fb5496d41553f503c,90:c2c3c6c8c9cbcccdd2d4d5d6d8d9dadedfe0e3e4e5e9eaeceef0f1f2f3f5f6f7f9fafbfcff,91:00010305060708090a0b0c0d0e0f1011121314151617181a1b1c#1d1f20212425262728292a2b2c2d2e30323334353637383a3b3c3d3e3f40414244,55:375675767733305c8bd283b1b988819f7ed6917bdfbdbe9499eaf7c9,561f55:d1ebecd4e6ddc4efe5f2f3cccde8f5e4,8f9456:1e080c012423,55fe56:00272d5839572c4d62595c4c548664716b7b7c8593afd4d7dde1f5ebf9ff,57:040a091c,5e:0f191411313b3c,91:454748515354555658595b5c5f606667686b6d737a7b7c808182838486888a8e8f939495969798999c9d9e9fa0a1a4a5a6a7a8a9abacb0b1b2b3b6b7b8b9bb#bcbdbebfc0c1c2c3c4c5c6c8cbd0d2d3d4d5d6d7d8d9dadbdddedfe0e1e2e3e4e5,5e:3744545b5e61,5c:8c7a8d9096889899919a9cb5a2bdacabb1a3c1b7c4d2e4cbe5,5d:020327262e241e061b583e343d6c5b6f5d6b4b4a697482999d,8c735d:b7c5,5f:73778287898c95999ca8adb5bc,88625f6172:adb0b4b7b8c3c1cecdd2e8efe9f2f4f7,730172f3730372fa91:e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,92:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324#25262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,72fb73:1713210a1e1d152239252c3831504d57606c6f7e,821b592598e759:2402,99:636768696a6b6c74777d8084878a8d9091939495,5e:80918b96a5a0b9b5beb3,8d535e:d2d1dbe8ea,81ba5f:c4c9d6cf,60035fee60045f:e1e4fe,60:0506,5f:eaedf8,60:1935261b0f0d292b0a3f2178797b7a42,92:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727375767778797a7b7c7d7e7f808182838485#868788898a8b8c8d8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7,60:6a7d969aad9d83928c9becbbb1ddd8c6dab4,61:20261523,60f461:000e2b4a75ac94a7b7d4f5,5fdd96b395:e9ebf1f3f5f6fcfe,96:030406080a0b0c0d0f12151617191a,4e2c723f62156c:35545c4aa38590948c6869747686a9d0d4adf7f8f1d7b2e0d6faebeeb1d3effe,92:a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8#e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,93:00010203040506070809,6d:39270c43480704190e2b4d2e351a4f525433916f9ea05e93945c607c63,6e1a6d:c7c5de,6e0e6d:bfe0,6e116d:e6ddd9,6e166dab6e0c6dae6e:2b6e4e6bb25f865354322544dfb198e0,6f2d6e:e2a5a7bdbbb7d7b4cf8fc29f,6f:6246472415,6ef96f:2f364b742a0929898d8c78727c7ad1,93:0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f40414243444546474849#4a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696b,6f:c9a7b9b6c2e1eedee0ef,70:1a231b39354f5e,5b:80849593a5b8,752f9a9e64345b:e4ee,89305bf08e478b078f:b6d3d5e5eee4e9e6f3e8,90:05040b26110d162135362d2f445152506858625b,66b990:747d8288838b,5f:50575658,5c3b54ab5c:5059,5b715c:6366,7fbc5f:2a292d,82745f3c9b3b5c6e59:81838da9aaa3,93:6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab#acadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cbcccd,59:97caab9ea4d2b2afd7be,5a:0506,59dd5a0859:e3d8f9,5a:0c09323411231340674a553c6275,80ec5a:aa9b777abeebb2d2d4b8e0e3f1d6e6d8dc,5b:091716323740,5c:151c,5b:5a6573515362,9a:7577787a7f7d808185888a90929396989b9c9d9fa0a2a3a5a7,7e:9fa1a3a5a8a9,93:cecfd0d1d2d3d4d5d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,94:000102030405060708090a0b0c0d#0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e,7e:adb0bec0c1c2c9cbccd0d4d7dbe0e1e8ebeeeff1f2,7f0d7e:f6fafbfe,7f:01020307080b0c0f111217191c1b1f212223242526272a2b2c2d2f3031323335,5e7a757f5ddb753e909573:8e91aea29fcfc2d1b7b3c0c9c8e5d9,987c740a73:e9e7debaf2,74:0f2a5b262528302e2c,94:2f303132333435363738393a3b3c3d3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6c6d6e6f#707172737475767778797a7b7c7d7e7f8081828384919698c7cfd3d4dae6fb,95:1c20,74:1b1a415c575559776d7e9c8e8081878b9ea8a990a7d2ba,97:eaebec,67:4c535e4869a5876a7398a775a89ead8b777cf0,680967d8680a67:e9b0,680c67:d9b5dab3dd,680067:c3b8e2,680e67:c1fd,68:323360614e624464831d55664167403e4a4929b58f7477936bc2,696e68fc69:1f20,68f995:27333d43484b555a606e74757778797a7b7c7d7e808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aa#abacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacb,692468f069:0b0157,68e369:10713960425d846b80987834cc8788ce896663799ba7bbabadd4b1c1cadf95e08dff,6a2f69ed6a:171865,69f26a:443ea0505b358e793d28587c9190a997ab,73:3752,6b:8182878492938d9a9ba1aa,8f:6b6d71727375767877797a7c7e818284878b,95:cccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7ecff,96:0713181b1e20232425262728292b2c2d2f303738393a3e41434a4e4f5152535657#58595a5c5d5e606365666b6d6e6f70717378797a7b7c7d7e7f808182838487898a,8f:8d8e8f989a,8ece62:0b171b1f222125242c,81e774:eff4ff,75:0f1113,65:34eeeff0,66:0a19,677266:031500,708566:f71d34313635,800666:5f54414f56615777848ca79dbedbdce6e9,8d:3233363b3d4045464849474d5559,89:c7cacbcccecfd0d1,72:6e9f5d666f7e7f848b8d8f92,63:0832b0,96:8c8e91929395969a9b9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb1b2b4b5b7b8babbbfc2c3c8cacbd0d1d3d4d6d7d8d9dadbdcdddedfe1e2e3e4e5e6e7eb#ecedeef0f1f2f4f5f8fafbfcfdff,97:0203050a0b0c10111214151718191a1b1d1f20,64:3fd8,80046b:eaf3fdf5f9,6c:0507060d1518191a2129242a32,65:35556b,72:4d525630,8662521680:9f9c93bc,670a80:bdb1abadb4b7e7e8e9eadbc2c4d9cdd7,671080:ddebf1f4ed,81:0d0e,80:f2fc,671581128c5a81:361e2c1832484c5374595a7160697c7d6d67,584d5ab581:888291,6ed581:a3aacc,672681:cabb,97:2122232425262728292b2c2e2f3133343536373a3b3c3d3f404142434445464748494a4b4c4d4e4f5051545557585a5c5d5f63646667686a6b6c6d6e6f7071#72757778797a7b7d7e7f8081828384868788898a8c8e8f9093959697999a9b9c9d,81:c1a6,6b:243739434659,98:d1d2d3d5d9da,6bb35f406bc289f365909f5165:93bcc6c4c3ccced2d6,70:809c969dbbc0b7abb1e8ca,71:1013162f31735c6845724a787a98b3b5a8a0e0d4e7f9,72:1d28,706c71:1866b9,62:3e3d434849,79:3b4046495b5c535a6257606f677a858a9aa7b3,5f:d1d0,97:9e9fa1a2a4a5a6a7a8a9aaacaeb0b1b3b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3#e4e5e8eeeff0f1f2f4f7f8f9fafbfcfdfeff,98:000102030405060708090a0b0c0d0e,60:3c5d5a67415963ab,61:060d5da99dcbd1,620680:807f,6c:93f6,6dfc77:f6f8,78:0009171811,65ab78:2d1c1d393a3b1f3c252c23294e6d56572650474c6a9b939a879ca1a3b2b9a5d4d9c9ecf2,790578f479:13241e34,9f9b9e:f9fbfc,76f177:040d,76f977:07081a22192d263538505147435a68,98:0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d#4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e,77:62657f8d7d808c919fa0b0b5bd,75:3a404e4b485b727983,7f:58615f,8a487f:68747179817e,76:cde5,883294:8586878b8a8c8d8f909497959a9b9ca3a4abaaadacafb0b2b4b6b7b8b9babcbdbfc4c8c9cacbcccdced0d1d2d5d6d7d9d8dbdedfe0e2e4e5e7e8ea,98:6f70717273748b8e929599a3a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcfd0d4d6d7dbdcdde0e1e2e3e4#e5e6e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,99:0001020304050607,94:e9ebeeeff3f4f5f7f9fcfdff,95:03020607090a0d0e0f1213141516181b1d1e1f222a2b292c3132343637383c3e3f4235444546494c4e4f525354565758595b5e5f5d61626465666768696a6b6c6f7172733a,77:e7ec,96c979:d5ede3eb,7a065d477a:03021e14,99:08090a0b0c0e0f1112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2f303132333435363738393a3b3c3d3e3f40414243444546474849#4a4b4c4d4e4f50515253565758595a5b5c5d5e5f60616264667378797b7e828389,7a:393751,9ecf99a57a7076:888e9399a4,74:dee0,752c9e:202228292a2b2c3231363837393a3e414244464748494b4c4e5155575a5b5c5e63666768696a6b6c716d73,75:929496a09daca3b3b4b8c4b1b0c3c2d6cde3e8e6e4ebe7,760375:f1fcff,76:1000050c170a25181519,99:8c8e9a9b9c9d9e9fa0a1a2a3a4a6a7a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8#d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9,76:1b3c2220402d303f35433e334d5e545c566b6f,7fca7a:e6787980868895a6a0aca8adb3,88:6469727d7f82a2c6b7bcc9e2cee3e5f1,891a88:fce8fef0,89:2119131b0a342b3641667b,758b80e576:b2b4,77dc80:1214161c20222526272928310b3543464d526971,898398:788083,99:fafbfcfdfeff,9a:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738#393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f50515253545556575859,98:898c8d8f949a9b9e9fa1a2a5a6,86:4d546c6e7f7a7c7ba88d8bac9da7a3aa93a9b6c4b5ceb0bab1afc9cfb4e9f1f2edf3d0,871386:def4dfd8d1,87:0307,86f887:080a0d09233b1e252e1a3e48343129373f82227d7e7b60704c6e8b53637c64596593afa8d2,9a:5a5b5c5d5e5f606162636465666768696a6b7283898d8e949599a6a9aaabacadaeafb2b3b4b5b9bbbdbebfc3c4c6c7c8c9cacdcecfd0d2d4d5d6d7d9dadbdc#dddee0e2e3e4e5e7e8e9eaeceef0f1f2f3f4f5f6f7f8fafcfdfeff,9b:000102040506,87:c68885ad9783abe5acb5b3cbd3bdd1c0cadbeae0ee,88:1613,87fe88:0a1b21393c,7f:36424445,82107a:fafd,7b:080304150a2b0f47382a192e31202524333e1e585a45754c5d606e7b62727190a6a7b8ac9da885aa9ca2abb4d1c1ccdddae5e6ea,7c0c7b:fefc,7c:0f160b,9b:07090a0b0c0d0e1011121415161718191a1b1c1d1e2021222425262728292a2b2c2d2e3031333435363738393a3d3e3f40464a4b4c4e50525355565758595a#5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b,7c:1f2a26384140,81fe82:010204,81ec884482:2122232d2f282b383b33343e44494b4f5a5f68,88:7e8588d8df,895e7f:9d9fa7afb0b2,7c7c65497c:919d9c9ea2b2bcbdc1c7cccdc8c5d7e8,826e66a87f:bfced5e5e1e6e9eef3,7cf87d:77a6ae,7e:479b,9e:b8b4,8d:73849491b1676d,8c:4749,91:4a504e4f64,9b:7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9ba#bbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadb,91:626170696f7d7e7274798c85908d91a2a3aaadaeafb5b4ba,8c559e7e8d:b8eb,8e:055969,8d:b5bfbcbac4d6d7dadececfdbc6ecf7f8e3f9fbe4,8e098dfd8e:141d1f2c2e232f3a4039353d3149414251524a70767c6f74858f94909c9e,8c:78828a859894,659b89:d6dedadc,9b:dcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9c:000102030405060708090a0b0c0d0e0f101112131415161718191a#1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b,89:e5ebef,8a3e8b26975396:e9f3ef,97:0601080f0e2a2d303e,9f:808385868788898a8c,9efe9f:0b0d,96:b9bcbdced2,77bf96e092:8eaec8,93:3e6aca8f,94:3e6b,9c:7f8285868788,7a239c:8b8e90919294959a9b9e9fa0a1a2a3a5a6a7a8a9abadaeb0b1b2b3b4b5b6b7babbbcbdc4c5c6c7cacb3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a#7b7d7e808384898a8c8f93969798999daaacafb9bebfc0c1c2c8c9d1d2dadbe0e1cccdcecfd0d3d4d5d7d8d9dcdddfe2,97:7c85919294afaba3b2b4,9a:b1b0b7,9e589a:b6babcc1c0c5c2cbccd1,9b:45434749484d51,98e899:0d2e5554,9a:dfe1e6efebfbedf9,9b:080f131f23,9e:bdbe,7e3b9e:8287888b92,93d69e:9d9fdbdcdde0dfe2e9e7e5eaef,9f:222c2f39373d3e44,9c:e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9d:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021#22232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142#92$434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081#82838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2#92$a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1#e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9e:000102#92$030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e24272e30343b3c404d5052535456595d5f606162656e6f727475767778797a7b7c7d80#8183848586898a8c8d8e8f90919495969798999a9b9c9ea0a1a2a3a4a5a7a8a9aa#92$abacadaeafb0b1b2b3b5b6b7b9babcbfc0c1c2c3c5c6c7c8cacbccd0d2d3d5d6d7d9dadee1e3e4e6e8ebecedeef0f1f2f3f4f5f6f7f8fafdff,9f:000102030405#060708090a0c0f1112141516181a1b1c1d1e1f21232425262728292a2b2d2e3031#92$3233343536383a3c3f4041424345464748494a4b4c4d4e4f52535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778#797a7b7c7d7e81828d8e8f9091929394959697989c9d9ea1a2a3a4a5,f9:2c7995e7f1#92$,fa:0c0d0e0f111314181f20212324272829,e8:15161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f40414243#4445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364'), + U2Ghash={}, + G2Uhash={}; + !function(data){ + var k=0; + data=data.match(/..../g); + for(var i=0x81;i<=0xfe;i++){ + for(var j=0x40;j<=0xFE;j++){ + U2Ghash[data[k++]]=('%'+i.toString(16)+'%'+j.toString(16)) + .toUpperCase(); + } + } + for(var key in U2Ghash){ + G2Uhash[U2Ghash[key]]=key; + } + }(data); + function isAscii(unicode) { + return ((unicode == 0x20AC) || (unicode <= 0x007F && unicode >= 0x0000)); + } + return{ + encode:function(str){ + return str.replace(/./g,function(a){ + var code=a.charCodeAt(0); + if(isAscii(code)){ + return encodeURIComponent(a); + }else{ + var key=code.toString(16); + if(key.length!=4)key=('000'+key).match(/....$/)[0]; + return U2Ghash[key]||a; + } + }); + }, + decode:function(str){ + return str.replace(/%[0-9A-F]{2}%[0-9A-F]{2}/g,function(a){ + if(a in G2Uhash){ + return String.fromCharCode('0x'+G2Uhash[a]); + }else{ + return a; + } + }).replace(/%[\w]{2}/g,function(a){ + return decodeURIComponent(a); + + }); + } + }; +} \ No newline at end of file diff --git a/香雅情/api/模板.js b/香雅情/api/模板.js new file mode 100644 index 0000000..82b037b --- /dev/null +++ b/香雅情/api/模板.js @@ -0,0 +1,304 @@ +if (typeof Object.assign != 'function') { + Object.assign = function () { + var target = arguments[0]; + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + return target; +}; +} +function getMubans() { + var mubanDict = { // 模板字典 + mxpro: { + title: '', + host: '', + // homeUrl:'/', + url: '/vodshow/fyclass--------fypage---.html', + searchUrl: '/vodsearch/**----------fypage---.html', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: {//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent': 'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_parse: '.navbar-items li:gt(2):lt(8);a&&Text;a&&href;/(\\d+).html', + play_parse: true, + lazy: '', + limit: 6, + 推荐: '.tab-list.active;a.module-poster-item.module-item;.module-poster-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: 'body a.module-poster-item.module-item;a&&title;.lazyload&&data-original;.module-item-note&&Text;a&&href', + 二级: { + "title": "h1&&Text;.module-info-tag&&Text", + "img": ".lazyload&&data-original", + "desc": ".module-info-item:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(3)&&Text", + "content": ".module-info-introduction&&Text", + "tabs": ".module-tab-item", + "lists": ".module-play-list:eq(#id) a" + }, + 搜索: 'body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text', + }, + mxone5: { + title: '', + host: '', + url: '/show/fyclass--------fypage---.html', + searchUrl: '/search/**----------fypage---.html', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + class_parse: '.nav-menu-items&&li;a&&Text;a&&href;.*/(.*?).html', + play_parse: true, + lazy: '', + limit: 6, + 推荐: '.module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: '.module-items .module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href', + 二级: { + "title": "h1&&Text;.tag-link&&Text", + "img": ".module-item-pic&&img&&data-src", + "desc": ".video-info-items:eq(0)&&Text;.video-info-items:eq(1)&&Text;.video-info-items:eq(2)&&Text;.video-info-items:eq(3)&&Text", + "content": ".vod_content&&Text", + "tabs": ".module-tab-item", + "lists": ".module-player-list:eq(#id)&&.scroll-content&&a" + }, + 搜索: '.module-items .module-search-item;a&&title;img&&data-src;.video-serial&&Text;a&&href', + }, + 首图: { + title: '', + host: '', + url: '/vodshow/fyclass--------fypage---/', + searchUrl: '/vodsearch/**----------fypage---.html', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: {//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent': 'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_parse: '.myui-header__menu li.hidden-sm:gt(0):lt(5);a&&Text;a&&href;/(\\d+).html', + play_parse: true, + lazy: '', + limit: 6, + 推荐: 'ul.myui-vodlist.clearfix;li;a&&title;a&&data-original;.pic-text&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: '.myui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href', + 二级: { + "title": ".myui-content__detail .title&&Text;.myui-content__detail p:eq(-2)&&Text", + "img": ".myui-content__thumb .lazyload&&data-original", + "desc": ".myui-content__detail p:eq(0)&&Text;.myui-content__detail p:eq(1)&&Text;.myui-content__detail p:eq(2)&&Text", + "content": ".content&&Text", + "tabs": ".nav-tabs:eq(0) li", + "lists": ".myui-content__list:eq(#id) li" + }, + 搜索: '#searchList li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + }, + 首图2: { + title: '', + host: '', + url: '/list/fyclass-fypage.html', + searchUrl: '/vodsearch/**----------fypage---.html', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: { + 'User-Agent': 'UC_UA', + // "Cookie": "" + }, + // class_parse:'.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html', + class_parse: '.stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html', + play_parse: true, + lazy: '', + limit: 6, + 推荐: 'ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: '.stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href', + 二级: { + "title": ".stui-content__detail .title&&Text;.stui-content__detail p:eq(-2)&&Text", + "img": ".stui-content__thumb .lazyload&&data-original", + "desc": ".stui-content__detail p:eq(0)&&Text;.stui-content__detail p:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text", + "content": ".detail&&Text", + "tabs": ".stui-vodlist__head h3", + "lists": ".stui-content__playlist:eq(#id) li" + }, + 搜索: 'ul.stui-vodlist__media:eq(0) li,ul.stui-vodlist:eq(0) li,#searchList li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + 搜索1: 'ul.stui-vodlist&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + 搜索2: 'ul.stui-vodlist__media&&li;a&&title;.lazyload&&data-original;.text-muted&&Text;a&&href;.text-muted:eq(-1)&&Text', + }, + 默认: { + title: '', + host: '', + url: '/vodshow/fyclass--------fypage---.html', + searchUrl: '/vodsearch/-------------.html?wd=**', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: { + 'User-Agent': 'MOBILE_UA', + }, + play_parse: true, + lazy: '', + limit: 6, + double: true, // 推荐内容是否双层定位 + }, + vfed: { + title: '', + host: '', + url: '/index.php/vod/show/id/fyclass/page/fypage.html', + searchUrl: '/index.php/vod/search/page/fypage/wd/**.html', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: { + 'User-Agent': 'UC_UA', + }, + // class_parse:'.fed-pops-navbar&&ul.fed-part-rows&&a.fed-part-eone:gt(0):lt(5);a&&Text;a&&href;.*/(.*?).html', + class_parse: '.fed-pops-navbar&&ul.fed-part-rows&&a;a&&Text;a&&href;.*/(.*?).html', + play_parse: true, + lazy: '', + limit: 6, + 推荐: 'ul.fed-list-info.fed-part-rows;li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: '.fed-list-info&&li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href', + 二级: { + "title": "h1.fed-part-eone&&Text;.fed-deta-content&&.fed-part-rows&&li&&Text", + "img": ".fed-list-info&&a&&data-original", + "desc": ".fed-deta-content&&.fed-part-rows&&li:eq(1)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(2)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(3)&&Text", + "content": ".fed-part-esan&&Text", + "tabs": ".fed-drop-boxs&&.fed-part-rows&&li", + "lists": ".fed-play-item:eq(#id)&&ul:eq(1)&&li" + }, + 搜索: '.fed-deta-info;h1&&Text;.lazyload&&data-original;.fed-list-remarks&&Text;a&&href;.fed-deta-content&&Text', + }, + 海螺3: { + title: '', + host: '', + searchUrl: '/v_search/**----------fypage---.html', + url: '/vod_____show/fyclass--------fypage---.html', + headers: { + 'User-Agent': 'MOBILE_UA' + }, + timeout: 5000, + class_parse: 'body&&.hl-nav li:gt(0);a&&Text;a&&href;.*/(.*?).html', + cate_exclude: '明星|专题|最新|排行', + limit: 40, + play_parse: true, + lazy: '', + 推荐: '.hl-vod-list;li;a&&title;a&&data-original;.remarks&&Text;a&&href', + double: true, + 一级: '.hl-vod-list&&.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href', + 二级: { + "title": ".hl-infos-title&&Text;.hl-text-conch&&Text", + "img": ".hl-lazy&&data-original", + "desc": ".hl-infos-content&&.hl-text-conch&&Text", + "content": ".hl-content-text&&Text", + "tabs": ".hl-tabs&&a", + "lists": ".hl-plays-list:eq(#id)&&li" + }, + 搜索: '.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + }, + 海螺2: { + title: '', + host: '', + searchUrl: '/index.php/vod/search/page/fypage/wd/**/', + url: '/index.php/vod/show/id/fyclass/page/fypage/', + headers: { + 'User-Agent': 'MOBILE_UA' + }, + timeout: 5000, + class_parse: '#nav-bar li;a&&Text;a&&href;id/(.*?)/', + limit: 40, + play_parse: true, + lazy: '', + 推荐: '.list-a.size;li;a&&title;.lazy&&data-original;.bt&&Text;a&&href', + double: true, + 一级: '.list-a&&li;a&&title;.lazy&&data-original;.list-remarks&&Text;a&&href', + 二级: { + "title": "h2&&Text;.deployment&&Text", + "img": ".lazy&&data-original", + "desc": ".deployment&&Text", + "content": ".ec-show&&Text", + "tabs": "#tag&&a", + "lists": ".play_list_box:eq(#id)&&li" + }, + 搜索: '.search-list;a&&title;.lazy&&data-original;.deployment&&Text;a&&href', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + }, + 短视: { + title: '', + host: '', + // homeUrl:'/', + url: '/channel/fyclass-fypage.html', + searchUrl: '/search.html?wd=**', + searchable: 2,//是否启用全局搜索, + quickSearch: 0,//是否启用快速搜索, + filterable: 0,//是否启用分类筛选, + headers: {//网站的请求头,完整支持所有的,常带ua和cookies + 'User-Agent': 'MOBILE_UA', + // "Cookie": "searchneed=ok" + }, + class_parse: '.menu_bottom ul li;a&&Text;a&&href;.*/(.*?).html', + cate_exclude: '解析|动态', + play_parse: true, + lazy: '', + limit: 6, + 推荐: '.indexShowBox;ul&&li;a&&title;img&&data-src;.s1&&Text;a&&href', + double: true, // 推荐内容是否双层定位 + 一级: '.pic-list&&li;a&&title;img&&data-src;.s1&&Text;a&&href', + 二级: { + "title": "h1&&Text;.content-rt&&p:eq(0)&&Text", + "img": ".img&&img&&data-src", + "desc": ".content-rt&&p:eq(1)&&Text;.content-rt&&p:eq(2)&&Text;.content-rt&&p:eq(3)&&Text;.content-rt&&p:eq(4)&&Text;.content-rt&&p:eq(5)&&Text", + "content": ".zkjj_a&&Text", + "tabs": ".py-tabs&&option", + "lists": ".player:eq(#id) li" + }, + 搜索: '.sr_lists&&ul&&li;h3&&Text;img&&data-src;.int&&p:eq(0)&&Text;a&&href', + }, + 短视2:{ + title: '', + host: '', + class_name:'电影&电视剧&综艺&动漫', + class_url:'1&2&3&4', + searchUrl: '/index.php/ajax/suggest?mid=1&wd=**&limit=50', + searchable: 2, + quickSearch: 0, + headers:{'User-Agent':'MOBILE_UA'}, + url: '/index.php/api/vod#type=fyclass&page=fypage', + filterable:0,//是否启用分类筛选, + filter_url:'', + filter: {}, + filter_def:{}, + detailUrl:'/index.php/vod/detail/id/fyid.html', + play_parse: true, + lazy: '', + limit: 6, + 推荐:'.list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href', + 一级:'js:let body=input.split("#")[1];let t=Math.round(new Date/1e3).toString();let key=md5("DS"+t+"DCC147D11943AF75");let url=input.split("#")[0];body=body+"&time="+t+"&key="+key;print(body);fetch_params.body=body;let html=post(url,fetch_params);let data=JSON.parse(html);VODS=data.list.map(function(it){it.vod_pic=urljoin2(input.split("/i")[0],it.vod_pic);return it});', + 二级:{ + "title":".slide-info-title&&Text;.slide-info:eq(3)--strong&&Text", + "img":".detail-pic&&data-original", + "desc":".fraction&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(2)--strong&&Text;.slide-info:eq(1)--strong&&Text", + "content":"#height_limit&&Text", + "tabs":".anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a", + "tab_text":".swiper-slide&&Text", + "lists":".anthology-list-box:eq(#id) li" + }, + 搜索:'json:list;name;pic;;id', + } + }; + return JSON.parse(JSON.stringify(mubanDict)); +} +var mubanDict = getMubans(); +var muban = getMubans(); +export default {muban,getMubans}; \ No newline at end of file diff --git a/香雅情/js/drpy.js b/香雅情/js/drpy.js new file mode 100644 index 0000000..43d7797 --- /dev/null +++ b/香雅情/js/drpy.js @@ -0,0 +1,37 @@ +var rule = { + title:'drpy', + host:'https://frodo.douban.com', + apidoc:'https://www.doubanapi.com', + homeUrl:'', + searchUrl:'', + searchable:1, + quickSearch:1, + filterable:1, + // 分类链接fypage参数支持1个()表达式 + url:'/?pg=fypage&class=fyclass&douban=$douban', + filter_url:'fl={{fl}}', + 图片来源:'@Referer=https://api.douban.com/@User-Agent=Mozilla/5.0%20(Windows%20NT%2010.0;%20Win64;%20x64)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/113.0.0.0%20Safari/537.36', + headers:{ + "Host": "frodo.douban.com", + // "Host": "api.douban.com", + "Connection": "Keep-Alive", + "Referer": "https://servicewechat.com/wx2f9b06c1de1ccfca/84/page-frame.html", + // "content-type": "application/json", + "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36 MicroMessenger/7.0.9.501 NetType/WIFI MiniProgramEnv/Windows WindowsWechat" + }, + timeout:5000, + class_name:'我的豆瓣&热门电影&热播剧集&热播综艺&电影筛选&电视筛选&电影榜单&电视榜单', + class_url:'interests&hot_gaia&tv_hot&show_hot&movie&tv&rank_list_movie&rank_list_tv', + filter:{'interests': [{'key': 'status', 'name': '状态', 'value': [{'n': '想看', 'v': 'mark'}, {'n': '在看', 'v': 'doing'}, {'n': '看过', 'v': 'done'}]}, {'key': 'subtype_tag', 'name': '形式', 'value': [{'n': '全部', 'v': ''}, {'n': '电影', 'v': 'movie'}, {'n': '电视', 'v': 'tv'}]}, {'key': 'year_tag', 'name': '年代', 'value': [{'n': '全部', 'v': '全部'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}], 'hot_gaia': [{'key': 'sort', 'name': '排序', 'value': [{'n': '热度', 'v': 'recommend'}, {'n': '最新', 'v': 'time'}, {'n': '评分', 'v': 'rank'}]}, {'key': 'area', 'name': '地区', 'value': [{'n': '全部', 'v': '全部'}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}]}], 'tv_hot': [{'key': 'type', 'name': '分类', 'value': [{'n': '综合', 'v': 'tv_hot'}, {'n': '国产剧', 'v': 'tv_domestic'}, {'n': '欧美剧', 'v': 'tv_american'}, {'n': '日剧', 'v': 'tv_japanese'}, {'n': '韩剧', 'v': 'tv_korean'}, {'n': '动画', 'v': 'tv_animation'}]}], 'show_hot': [{'key': 'type', 'name': '分类', 'value': [{'n': '综合', 'v': 'show_hot'}, {'n': '国内', 'v': 'show_domestic'}, {'n': '国外', 'v': 'show_foreign'}]}], 'movie': [{'key': '类型', 'name': '类型', 'value': [{'n': '全部类型', 'v': ''}, {'n': '喜剧', 'v': '喜剧'}, {'n': '爱情', 'v': '爱情'}, {'n': '动作', 'v': '动作'}, {'n': '科幻', 'v': '科幻'}, {'n': '动画', 'v': '动画'}, {'n': '悬疑', 'v': '悬疑'}, {'n': '犯罪', 'v': '犯罪'}, {'n': '惊悚', 'v': '惊悚'}, {'n': '冒险', 'v': '冒险'}, {'n': '音乐', 'v': '音乐'}, {'n': '历史', 'v': '历史'}, {'n': '奇幻', 'v': '奇幻'}, {'n': '恐怖', 'v': '恐怖'}, {'n': '战争', 'v': '战争'}, {'n': '传记', 'v': '传记'}, {'n': '歌舞', 'v': '歌舞'}, {'n': '武侠', 'v': '武侠'}, {'n': '情色', 'v': '情色'}, {'n': '灾难', 'v': '灾难'}, {'n': '西部', 'v': '西部'}, {'n': '纪录片', 'v': '纪录片'}, {'n': '短片', 'v': '短片'}]}, {'key': '地区', 'name': '地区', 'value': [{'n': '全部地区', 'v': ''}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}, {'n': '中国大陆', 'v': '中国大陆'}, {'n': '美国', 'v': '美国'}, {'n': '中国香港', 'v': '中国香港'}, {'n': '中国台湾', 'v': '中国台湾'}, {'n': '英国', 'v': '英国'}, {'n': '法国', 'v': '法国'}, {'n': '德国', 'v': '德国'}, {'n': '意大利', 'v': '意大利'}, {'n': '西班牙', 'v': '西班牙'}, {'n': '印度', 'v': '印度'}, {'n': '泰国', 'v': '泰国'}, {'n': '俄罗斯', 'v': '俄罗斯'}, {'n': '加拿大', 'v': '加拿大'}, {'n': '澳大利亚', 'v': '澳大利亚'}, {'n': '爱尔兰', 'v': '爱尔兰'}, {'n': '瑞典', 'v': '瑞典'}, {'n': '巴西', 'v': '巴西'}, {'n': '丹麦', 'v': '丹麦'}]}, {'key': 'sort', 'name': '排序', 'value': [{'n': '近期热度', 'v': 'T'}, {'n': '首映时间', 'v': 'R'}, {'n': '高分优先', 'v': 'S'}]}, {'key': '年代', 'name': '年代', 'value': [{'n': '全部年代', 'v': ''}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}], 'tv': [{'key': '类型', 'name': '类型', 'value': [{'n': '不限', 'v': ''}, {'n': '电视剧', 'v': '电视剧'}, {'n': '综艺', 'v': '综艺'}]}, {'key': '电视剧形式', 'name': '电视剧形式', 'value': [{'n': '不限', 'v': ''}, {'n': '喜剧', 'v': '喜剧'}, {'n': '爱情', 'v': '爱情'}, {'n': '悬疑', 'v': '悬疑'}, {'n': '动画', 'v': '动画'}, {'n': '武侠', 'v': '武侠'}, {'n': '古装', 'v': '古装'}, {'n': '家庭', 'v': '家庭'}, {'n': '犯罪', 'v': '犯罪'}, {'n': '科幻', 'v': '科幻'}, {'n': '恐怖', 'v': '恐怖'}, {'n': '历史', 'v': '历史'}, {'n': '战争', 'v': '战争'}, {'n': '动作', 'v': '动作'}, {'n': '冒险', 'v': '冒险'}, {'n': '传记', 'v': '传记'}, {'n': '剧情', 'v': '剧情'}, {'n': '奇幻', 'v': '奇幻'}, {'n': '惊悚', 'v': '惊悚'}, {'n': '灾难', 'v': '灾难'}, {'n': '歌舞', 'v': '歌舞'}, {'n': '音乐', 'v': '音乐'}]}, {'key': '综艺形式', 'name': '综艺形式', 'value': [{'n': '不限', 'v': ''}, {'n': '真人秀', 'v': '真人秀'}, {'n': '脱口秀', 'v': '脱口秀'}, {'n': '音乐', 'v': '音乐'}, {'n': '歌舞', 'v': '歌舞'}]}, {'key': '地区', 'name': '地区', 'value': [{'n': '全部地区', 'v': ''}, {'n': '华语', 'v': '华语'}, {'n': '欧美', 'v': '欧美'}, {'n': '国外', 'v': '国外'}, {'n': '韩国', 'v': '韩国'}, {'n': '日本', 'v': '日本'}, {'n': '中国大陆', 'v': '中国大陆'}, {'n': '中国香港', 'v': '中国香港'}, {'n': '美国', 'v': '美国'}, {'n': '英国', 'v': '英国'}, {'n': '泰国', 'v': '泰国'}, {'n': '中国台湾', 'v': '中国台湾'}, {'n': '意大利', 'v': '意大利'}, {'n': '法国', 'v': '法国'}, {'n': '德国', 'v': '德国'}, {'n': '西班牙', 'v': '西班牙'}, {'n': '俄罗斯', 'v': '俄罗斯'}, {'n': '瑞典', 'v': '瑞典'}, {'n': '巴西', 'v': '巴西'}, {'n': '丹麦', 'v': '丹麦'}, {'n': '印度', 'v': '印度'}, {'n': '加拿大', 'v': '加拿大'}, {'n': '爱尔兰', 'v': '爱尔兰'}, {'n': '澳大利亚', 'v': '澳大利亚'}]}, {'key': 'sort', 'name': '排序', 'value': [{'n': '近期热度', 'v': 'T'}, {'n': '首播时间', 'v': 'R'}, {'n': '高分优先', 'v': 'S'}]}, {'key': '年代', 'name': '年代', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2010年代', 'v': '2010年代'}, {'n': '2000年代', 'v': '2000年代'}, {'n': '90年代', 'v': '90年代'}, {'n': '80年代', 'v': '80年代'}, {'n': '70年代', 'v': '70年代'}, {'n': '60年代', 'v': '60年代'}, {'n': '更早', 'v': '更早'}]}, {'key': '平台', 'name': '平台', 'value': [{'n': '全部', 'v': ''}, {'n': '腾讯视频', 'v': '腾讯视频'}, {'n': '爱奇艺', 'v': '爱奇艺'}, {'n': '优酷', 'v': '优酷'}, {'n': '湖南卫视', 'v': '湖南卫视'}, {'n': 'Netflix', 'v': 'Netflix'}, {'n': 'HBO', 'v': 'HBO'}, {'n': 'BBC', 'v': 'BBC'}, {'n': 'NHK', 'v': 'NHK'}, {'n': 'CBS', 'v': 'CBS'}, {'n': 'NBC', 'v': 'NBC'}, {'n': 'tvN', 'v': 'tvN'}]}], 'rank_list_movie': [{'key': '榜单', 'name': '榜单', 'value': [{'n': '实时热门电影', 'v': 'movie_real_time_hotest'}, {'n': '一周口碑电影榜', 'v': 'movie_weekly_best'}, {'n': '豆瓣电影Top250', 'v': 'movie_top250'}]}], 'rank_list_tv': [{'key': '榜单', 'name': '榜单', 'value': [{'n': '实时热门电视', 'v': 'tv_real_time_hotest'}, {'n': '华语口碑剧集榜', 'v': 'tv_chinese_best_weekly'}, {'n': '全球口碑剧集榜', 'v': 'tv_global_best_weekly'}, {'n': '国内口碑综艺榜', 'v': 'show_chinese_best_weekly'}, {'n': '国外口碑综艺榜', 'v': 'show_global_best_weekly'}]}]}, + limit:20, + play_parse:false, + 推荐:'', + 推荐:'js:let d=[];let douban_api_host="http://api.douban.com/api/v2";let miniapp_apikey="0ac44ae016490db2204ce0a042db2916";const count=30;function miniapp_request(path,query){try{let url=douban_api_host+path;query.apikey=miniapp_apikey;fetch_params.headers=oheaders;url=buildUrl(url,query);let html=fetch(url,fetch_params);return JSON.parse(html)}catch(e){print("发生了错误:"+e.message);return{}}}function subject_real_time_hotest(){try{let res=miniapp_request("/subject_collection/subject_real_time_hotest/items",{});let lists=[];let arr=res.subject_collection_items||[];arr.forEach(function(item){if(item.type==="movie"||item.type==="tv"){let rating=item.rating?item.rating.value:"暂无评分";let honnor=(item.honor_infos||[]).map(function(it){return it.title}).join("|");lists.append({vod_id:"msearch:"+TYPE,vod_name:item.title||"",vod_pic:item.pic.normal,vod_remarks:rating+" "+honnor})}});return lists}catch(e){print("发生了错误:"+e.message);return[]}}VODS=subject_real_time_hotest();print(VODS);', + // 手动调用解析请求json的url,此lazy不方便 + lazy:'', + // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + 一级:'', + 一级:'js:let d=[];let douban=input.split("douban=")[1].split("&")[0];let douban_api_host="http://api.douban.com/api/v2";let miniapp_apikey="0ac44ae016490db2204ce0a042db2916";const count=30;function miniapp_request(path,query){try{let url=douban_api_host+path;query.apikey=miniapp_apikey;fetch_params.headers=oheaders;url=buildUrl(url,query);let html=fetch(url,fetch_params);if(/request_error/.test(html)){print(html)}return JSON.parse(html)}catch(e){print("发生了错误:"+e.message);return{}}}function cate_filter(d,douban){douban=douban||"";try{let res={};if(MY_CATE==="interests"){if(douban){let status=MY_FL.status||"mark";let subtype_tag=MY_FL.subtype_tag||"";let year_tag=MY_FL.year_tag||"全部";let path="/user/"+douban+"/interests";res=miniapp_request(path,{type:"movie",status:status,subtype_tag:subtype_tag,year_tag:year_tag,start:(MY_PAGE-1)*count,count:count})}else{return{}}}else if(MY_CATE==="hot_gaia"){let sort=MY_FL.sort||"recommend";let area=MY_FL.area||"全部";let path="/movie/"+MY_CATE;res=miniapp_request(path,{area:area,sort:sort,start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE==="tv_hot"||MY_CATE==="show_hot"){let stype=MY_FL.type||MY_CATE;let path="/subject_collection/"+stype+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else if(MY_CATE.startsWith("rank_list")){let id=MY_CATE==="rank_list_movie"?"movie_real_time_hotest":"tv_real_time_hotest";id=MY_FL.榜单||id;let path="/subject_collection/"+id+"/items";res=miniapp_request(path,{start:(MY_PAGE-1)*count,count:count})}else{let path="/"+MY_CATE+"/recommend";let selected_categories;let tags;let sort;if(Object.keys(MY_FL).length>0){sort=MY_FL.sort||"T";tags=Object.values(MY_FL).join(",");if(MY_CATE==="movie"){selected_categories={"类型":MY_FL.类型||"","地区":MY_FL.地区||""}}else{selected_categories={"类型":MY_FL.类型||"","形式":MY_FL.类型?MY_FL.类型+"地区":"","地区":MY_FL.地区||""}}}else{sort="T";tags="";if(MY_CATE==="movie"){selected_categories={"类型":"","地区":""}}else{selected_categories={"类型":"","形式":"","地区":""}}}let params={tags:tags,sort:sort,refresh:0,selected_categories:stringify(selected_categories),start:(MY_PAGE-1)*count,count:count};res=miniapp_request(path,params)}let result={page:MY_PAGE,pagecount:Math.ceil(res.total/count),limit:count,total:res.total};let items=[];if(/^rank_list|tv_hot|show_hot/.test(MY_CATE)){items=res["subject_collection_items"]}else if(MY_CATE==="interests"){res["interests"].forEach(function(it){items.push(it.subject)})}else{items=res.items}let lists=[];items.forEach(function(item){if(item.type==="movie"||item.type==="tv"){let rating=item.rating?item.rating.value:"";let rat_str=rating||"暂无评分";let title=item.title;let honor=item.honor_infos||[];let honor_str=honor.map(function(it){return it.title}).join("|");let vod_obj={vod_name:title!=="未知电影"?title:"暂不支持展示",vod_pic:item.pic.normal,vod_remarks:rat_str+" "+honor_str};let vod_obj_d={url:item.type+"$"+item.id,title:title!=="未知电影"?title:"暂不支持展示",pic_url:item.pic.normal,desc:rat_str+" "+honor_str};lists.push(vod_obj);d.push(vod_obj_d)}});result.list=lists;return result}catch(e){print(e.message)}return{}}let res=cate_filter(d,douban);setResult2(res);', + 二级:'', + 搜索:'', +} \ No newline at end of file diff --git a/香雅情/js/优酷.js b/香雅情/js/优酷.js new file mode 100644 index 0000000..78a81a0 --- /dev/null +++ b/香雅情/js/优酷.js @@ -0,0 +1,39 @@ +var rule = { + title:'优酷', + host:'https://www.%79%6f%75%6b%75.com', + homeUrl:'', + searchUrl:'https://search.%79%6f%75%6b%75.com/api/search?pg=fypage&keyword=**', + searchable:2, + quickSearch:0, + filterable:1, + multi:1, + // 分类链接fypage参数支持1个()表达式 + url:'/category/data?optionRefresh=1&pageNo=fypage¶ms=fyfilter', + // url:'/category/data?pageNo=fypage¶ms=fyfilter', + // filter_url:'&u=fyarea&s=fyyear={{fl.order}}', + // filter_url:'{{fl|safe}}', + filter_url:'{{fl}}', + // filter_url:'{{fl}}', + // filter_url:'{{fl}}', + filter:{"电视剧": [{"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "内地剧", "v": "中国内地"}, {"n": "港剧", "v": "中国香港"}, {"n": "台剧", "v": "中国台湾"}, {"n": "韩剧", "v": "韩国"}, {"n": "美剧", "v": "美国"}, {"n": "英剧", "v": "英国"}, {"n": "日剧", "v": "日本"}, {"n": "泰剧", "v": "泰国"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "青春", "v": "青春"}, {"n": "古装", "v": "古装"}, {"n": "爱情", "v": "爱情"}, {"n": "都市", "v": "都市"}, {"n": "喜剧", "v": "喜剧,搞笑"}, {"n": "战争", "v": "战争"}, {"n": "军旅", "v": "军旅"}, {"n": "谍战", "v": "谍战"}, {"n": "偶像", "v": "偶像"}, {"n": "警匪", "v": "警匪"}, {"n": "冒险", "v": "冒险"}, {"n": "穿越", "v": "穿越"}, {"n": "仙侠", "v": "仙侠"}, {"n": "武侠", "v": "武侠"}, {"n": "悬疑", "v": "悬疑"}, {"n": "罪案", "v": "罪案"}, {"n": "家庭", "v": "家庭"}, {"n": "历史", "v": "历史"}, {"n": "年代", "v": "年代"}, {"n": "农村", "v": "农村"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014-2011", "v": "2011-2014"}, {"n": "更早", "v": "-2010"}]}, {"key": "status", "name": "全部规格", "value": [{"n": "全部规格", "v": ""}, {"n": "全网独播", "v": "1"}, {"n": "优酷自制", "v": "2"}, {"n": "已完结", "v": "3"}, {"n": "即将上线", "v": "4"}, {"n": "短剧", "v": "5"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "VIP", "v": "2"}, {"n": "付费", "v": "1"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "热度最高", "v": "7"}, {"n": "最新上线", "v": "1"}, {"n": "最好评", "v": "3"}, {"n": "最多播放", "v": "2"}]}], "电影": [{"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "内地", "v": "中国内地"}, {"n": "中国香港", "v": "中国香港"}, {"n": "中国台湾", "v": "中国台湾"}, {"n": "美国", "v": "美国"}, {"n": "印度", "v": "印度"}, {"n": "日韩", "v": "韩国,日本"}, {"n": "泰国", "v": "泰国"}, {"n": "欧洲", "v": "欧洲"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "喜剧", "v": "喜剧,搞笑"}, {"n": "动作", "v": "动作"}, {"n": "怪兽", "v": "怪兽"}, {"n": "战争", "v": "战争"}, {"n": "爱情", "v": "爱情"}, {"n": "悬疑", "v": "悬疑"}, {"n": "武侠", "v": "武侠"}, {"n": "奇幻", "v": "奇幻"}, {"n": "科幻", "v": "科幻"}, {"n": "冒险", "v": "冒险"}, {"n": "警匪", "v": "警匪"}, {"n": "动画", "v": "动画"}, {"n": "惊悚", "v": "惊悚"}, {"n": "犯罪", "v": "犯罪"}, {"n": "恐怖", "v": "恐怖"}, {"n": "剧情", "v": "剧情"}, {"n": "历史", "v": "历史"}, {"n": "纪录片", "v": "纪录片"}, {"n": "传记", "v": "传记"}, {"n": "歌舞", "v": "歌舞"}, {"n": "短片", "v": "短片"}, {"n": "其他", "v": "其他"}]}, {"key": "source", "name": "全部规格", "value": [{"n": "全部规格", "v": ""}, {"n": "院线", "v": "1"}, {"n": "网络电影", "v": "0"}, {"n": "独播", "v": "2"}, {"n": "高清修复", "v": "3"}, {"n": "1080P", "v": "4"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014-2010", "v": "2010-2014"}, {"n": "2009-2000", "v": "2000-2009"}, {"n": "90年代", "v": "1990-1999"}, {"n": "80年代", "v": "1980-1989"}, {"n": "70年代", "v": "1970-1979"}, {"n": "更早", "v": "-1969"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "会员", "v": "2"}, {"n": "点播", "v": "1"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "热度最高", "v": "7"}, {"n": "最多播放", "v": "2"}, {"n": "最新上线", "v": "1"}, {"n": "最好评", "v": "3"}]}, {"key": "tag_label_name", "name": "为你推荐", "value": [{"n": "为你推荐", "v": ""}, {"n": "高分必看", "v": "高分必看"}, {"n": "卖座电影", "v": "卖座电影"}, {"n": "小说改编", "v": "小说改编"}, {"n": "铁血硬汉", "v": "铁血硬汉"}, {"n": "视效大片", "v": "视效大片"}, {"n": "漫画改编", "v": "漫画改编"}, {"n": "绝地求生", "v": "绝地求生"}, {"n": "真人真事改编", "v": "真人真事改编"}, {"n": "范伟", "v": "范伟"}, {"n": "火爆枪战", "v": "火爆枪战"}, {"n": "影史经典", "v": "影史经典"}, {"n": "拯救世界", "v": "拯救世界"}, {"n": "万茜", "v": "万茜"}, {"n": "马思纯", "v": "马思纯"}, {"n": "王俊凯", "v": "王俊凯"}, {"n": "豪华阵容", "v": "豪华阵容"}, {"n": "李玉", "v": "李玉"}, {"n": "无厘头喜剧", "v": "无厘头喜剧"}, {"n": "超能力", "v": "超能力"}, {"n": "欢喜搭档", "v": "欢喜搭档"}]}], "综艺": [{"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "内地", "v": "中国内地"}, {"n": "中国台湾", "v": "中国台湾"}, {"n": "美国", "v": "美国"}, {"n": "英国", "v": "英国"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "偶像", "v": "偶像"}, {"n": "舞蹈", "v": "舞蹈"}, {"n": "音乐", "v": "音乐"}, {"n": "情感", "v": "情感"}, {"n": "喜剧", "v": "喜剧,搞笑"}, {"n": "体育", "v": "体育"}, {"n": "游戏", "v": "游戏"}, {"n": "相声", "v": "相声"}, {"n": "婚恋", "v": "婚恋"}, {"n": "时尚", "v": "时尚"}, {"n": "晚会", "v": "晚会"}, {"n": "明星访谈", "v": "明星访谈"}, {"n": "亲子", "v": "亲子"}, {"n": "生活", "v": "生活"}, {"n": "文化", "v": "文化"}, {"n": "美食", "v": "美食"}, {"n": "旅游", "v": "旅游"}, {"n": "益智", "v": "益智"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014-2011", "v": "2011-2014"}, {"n": "更早", "v": "-2010"}]}, {"key": "status", "name": "全部规格", "value": [{"n": "全部规格", "v": ""}, {"n": "优酷自制", "v": "2"}, {"n": "优酷独播", "v": "1"}, {"n": "电视综艺", "v": "6"}, {"n": "已完结", "v": "3"}, {"n": "即将上线", "v": "4"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "VIP", "v": "2"}, {"n": "付费", "v": "1"}]}, {"key": "sort", "name": "热度最高", "value": [{"n": "热度最高", "v": ""}, {"n": "最新更新", "v": "8"}, {"n": "最近开播", "v": "9"}, {"n": "最多评论", "v": "4"}]}, {"key": "tag_label_name", "name": "为你推荐", "value": [{"n": "为你推荐", "v": ""}, {"n": "舞台竞演", "v": "舞台竞演"}, {"n": "刘雨昕", "v": "刘雨昕"}, {"n": "王一博", "v": "王一博"}, {"n": "韩庚", "v": "韩庚"}, {"n": "李承铉", "v": "李承铉"}, {"n": "户外竞技", "v": "户外竞技"}, {"n": "浙江卫视", "v": "浙江卫视"}, {"n": "东方卫视", "v": "东方卫视"}, {"n": "岳云鹏", "v": "岳云鹏"}, {"n": "王迅", "v": "王迅"}, {"n": "杨迪", "v": "杨迪"}, {"n": "杨超越", "v": "杨超越"}, {"n": "黄明昊", "v": "黄明昊"}, {"n": "郭京飞", "v": "郭京飞"}, {"n": "欧阳娜娜", "v": "欧阳娜娜"}, {"n": "德云社", "v": "德云社"}, {"n": "郑恺", "v": "郑恺"}, {"n": "华少", "v": "华少"}, {"n": "郭德纲", "v": "郭德纲"}, {"n": "贾玲", "v": "贾玲"}]}], "动漫": [{"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}, {"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "内地", "v": "中国内地"}, {"n": "日本", "v": "日本"}, {"n": "美国", "v": "美国"}, {"n": "中国台湾", "v": "中国台湾"}, {"n": "其他", "v": "其他"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "热血", "v": "热血,战斗"}, {"n": "励志", "v": "励志"}, {"n": "玄幻", "v": "玄幻"}, {"n": "古风", "v": "历史,古风"}, {"n": "恋爱", "v": "恋爱"}, {"n": "青春", "v": "青春"}, {"n": "校园", "v": "校园"}, {"n": "运动", "v": "社团,运动"}, {"n": "科幻", "v": "科幻"}, {"n": "冒险", "v": "冒险"}, {"n": "魔法", "v": "魔法"}, {"n": "日常", "v": "日常"}, {"n": "治愈", "v": "治愈"}, {"n": "机战", "v": "机战"}, {"n": "推理", "v": "推理"}, {"n": "都市", "v": "都市"}, {"n": "小说改", "v": "小说改编"}, {"n": "游戏改", "v": "游戏改编"}, {"n": "漫画改", "v": "漫画改编"}, {"n": "动态漫", "v": "动态漫画"}, {"n": "特摄", "v": "特摄"}, {"n": "布袋戏", "v": "布袋戏"}]}, {"key": "completed", "name": "连载情况", "value": [{"n": "连载情况", "v": ""}, {"n": "更新中", "v": "0"}, {"n": "已完结", "v": "1"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "会员", "v": "2"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014", "v": "2014"}, {"n": "2013", "v": "2013"}, {"n": "2012", "v": "2012"}, {"n": "2011", "v": "2011"}, {"n": "00年代", "v": "2000-2010"}, {"n": "更早", "v": "-1999"}]}, {"key": "tag_label_name", "name": "为你推荐", "value": [{"n": "为你推荐", "v": ""}, {"n": "3D动画", "v": "3D动画"}, {"n": "搞笑日常", "v": "搞笑日常"}, {"n": "大男主", "v": "大男主"}, {"n": "高燃", "v": "高燃"}, {"n": "萌系", "v": "萌系"}, {"n": "修真", "v": "修真"}, {"n": "怀旧", "v": "怀旧"}, {"n": "超级英雄", "v": "超级英雄"}, {"n": "水树奈奈", "v": "水树奈奈"}, {"n": "张杰", "v": "张杰"}, {"n": "石田彰", "v": "石田彰"}, {"n": "守护地球", "v": "守护地球"}, {"n": "圆谷", "v": "圆谷"}, {"n": "山新", "v": "山新"}, {"n": "复仇", "v": "复仇"}, {"n": "废柴逆袭", "v": "废柴逆袭"}, {"n": "侦探", "v": "侦探"}, {"n": "无厘头", "v": "无厘头"}, {"n": "青山刚昌", "v": "青山刚昌"}, {"n": "悬疑", "v": "悬疑"}]}], "少儿": [{"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "中国", "v": "中国,香港,台湾"}, {"n": "美国", "v": "美国"}, {"n": "英国", "v": "英国"}, {"n": "其他国家", "v": "其他"}]}, {"key": "show_label_type", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "动画", "v": "动画"}, {"n": "儿歌", "v": "儿歌"}, {"n": "玩具", "v": "玩具"}, {"n": "动画电影", "v": "电影"}, {"n": "绘本故事", "v": "绘本故事"}, {"n": "真人", "v": "真人"}, {"n": "少儿综艺", "v": "少儿综艺"}, {"n": "亲子", "v": "亲子"}, {"n": "探索纪实", "v": "探索纪实"}, {"n": "音频", "v": "音频"}]}, {"key": "child_tags", "name": "全部分类", "value": [{"n": "全部分类", "v": ""}, {"n": "益智", "v": "益智"}, {"n": "冒险", "v": "冒险"}, {"n": "幽默", "v": "幽默"}, {"n": "机甲", "v": "机甲"}, {"n": "公主魔法", "v": "公主,魔法"}, {"n": "交通工具", "v": "交通工具"}, {"n": "恐龙", "v": "恐龙"}, {"n": "动物", "v": "动物"}, {"n": "励志", "v": "励志"}, {"n": "友情", "v": "友情"}, {"n": "战斗", "v": "战斗"}, {"n": "校园", "v": "校园"}, {"n": "正义", "v": "正义"}, {"n": "热血", "v": "热血"}, {"n": "科幻", "v": "科幻"}, {"n": "童话", "v": "童话"}, {"n": "运动", "v": "运动"}, {"n": "专注力", "v": "专注力"}, {"n": "创造力", "v": "创造力"}, {"n": "想象力", "v": "想象力"}, {"n": "科普", "v": "科普"}, {"n": "情商", "v": "情商"}, {"n": "思维逻辑", "v": "思维逻辑"}, {"n": "兴趣培养", "v": "兴趣培养"}, {"n": "语文", "v": "语文"}, {"n": "英语", "v": "英语"}, {"n": "数学", "v": "数学"}, {"n": "课程辅导", "v": "课程辅导"}]}, {"key": "age", "name": "全部年龄", "value": [{"n": "全部年龄", "v": ""}, {"n": "0-2岁", "v": "0-2"}, {"n": "3-4岁", "v": "3-4"}, {"n": "5-6岁", "v": "5-6"}, {"n": "7岁以上", "v": "7-"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "付费", "v": "1"}, {"n": "VIP", "v": "2"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最新上线", "v": "1"}, {"n": "最多播放", "v": "2"}, {"n": "最多评论", "v": "4"}, {"n": "最多收藏", "v": "5"}]}], "纪录片": [{"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "美食", "v": "美食"}, {"n": "自然", "v": "自然"}, {"n": "历史", "v": "历史"}, {"n": "探险", "v": "探险"}, {"n": "军事", "v": "军事"}, {"n": "人物", "v": "人物"}, {"n": "宇宙", "v": "宇宙"}, {"n": "刑侦", "v": "刑侦"}, {"n": "社会", "v": "社会"}, {"n": "科技", "v": "科技"}, {"n": "旅游", "v": "旅游"}]}, {"key": "company", "name": "全部出品", "value": [{"n": "全部出品", "v": ""}, {"n": "BBC", "v": "bbc,british"}, {"n": "央视", "v": "央视,中央电视台,cctv,中国广播电影电视节目交易中心"}, {"n": "国家地理", "v": "国家地理"}, {"n": "Love Nature", "v": "love nature"}, {"n": "LGI", "v": "looking"}, {"n": "A&E", "v": "ae"}, {"n": "OTF", "v": "fence"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014-2011", "v": "2011-2014"}, {"n": "更早", "v": "-2010"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "会员", "v": "2"}]}, {"key": "sort", "name": "热度最高", "value": [{"n": "热度最高", "v": ""}, {"n": "综合排序", "v": "0"}, {"n": "最新上线", "v": "1"}, {"n": "最好评", "v": "3"}, {"n": "最多收藏", "v": "5"}]}], "文化": [{"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "谈话", "v": "谈话"}, {"n": "脱口秀", "v": "脱口秀"}, {"n": "访谈", "v": "访谈"}, {"n": "讲座论坛", "v": "讲座论坛"}, {"n": "戏曲曲艺", "v": "戏曲,曲艺"}, {"n": "舞台剧", "v": "舞台剧"}, {"n": "文学", "v": "文学"}, {"n": "国学", "v": "国学"}, {"n": "艺术", "v": "艺术"}, {"n": "培训课程", "v": "培训课程"}, {"n": "有声书", "v": "有声书"}]}, {"key": "people", "name": "文化大咖", "value": [{"n": "文化大咖", "v": ""}, {"n": "窦文涛", "v": "窦文涛"}, {"n": "马未都", "v": "马未都"}, {"n": "白岩松", "v": "白岩松"}, {"n": "梅毅", "v": "梅毅"}, {"n": "陈鲁豫", "v": "陈鲁豫"}, {"n": "樊登", "v": "樊登"}, {"n": "罗振宇", "v": "罗振宇"}, {"n": "蒋方舟", "v": "蒋方舟"}, {"n": "其他", "v": "其他"}]}, {"key": "year", "name": "全部年份", "value": [{"n": "全部年份", "v": ""}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {"n": "2021", "v": "2021"}, {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, {"n": "2014-2011", "v": "2011-2014"}, {"n": "更早", "v": "-2010"}]}, {"key": "pay_type", "name": "付费类型", "value": [{"n": "付费类型", "v": ""}, {"n": "免费", "v": "0"}, {"n": "会员", "v": "2"}]}, {"key": "sort", "name": "热度最高", "value": [{"n": "热度最高", "v": ""}, {"n": "综合排序", "v": "0"}, {"n": "最新上线", "v": "1"}, {"n": "最好评", "v": "3"}, {"n": "最多收藏", "v": "5"}]}], "亲子": [{"key": "qinzi_genre", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "孕产", "v": "孕产"}, {"n": "育儿知识", "v": "育儿知识,育儿达人,育儿专家,爸爸育儿,隔代育儿,育儿明星"}, {"n": "好物种草", "v": "母婴用品,测评,母婴用品种草"}, {"n": "美食", "v": "儿童美食,辅食,孕期饮食"}, {"n": "手工DIY", "v": "手工diy"}, {"n": "教育观念", "v": "教育观念"}, {"n": "亲子综艺", "v": "亲子综艺"}, {"n": "亲子互动", "v": "亲子旅游,亲子游戏,亲子阅读,玩具,早教,启蒙"}, {"n": "萌娃", "v": "萌娃"}, {"n": "搞笑", "v": "搞笑"}, {"n": "美妆", "v": "美妆"}]}, {"key": "pregnancy_stage", "name": "全部阶段", "value": [{"n": "全部阶段", "v": ""}, {"n": "备孕", "v": "备孕"}, {"n": "孕早期", "v": "孕早"}, {"n": "孕中期", "v": "孕中"}, {"n": "孕晚期", "v": "孕晚"}]}, {"key": "show_label_baby_age", "name": "全部分龄", "value": [{"n": "全部分龄", "v": ""}, {"n": "0-1岁", "v": "0-1"}, {"n": "1-3岁", "v": "1-3"}, {"n": "3-6岁", "v": "3-6"}, {"n": "6岁+", "v": "6-"}]}, {"key": "pay_type", "name": "全部", "value": [{"n": "全部", "v": ""}, {"n": "免费", "v": "0"}, {"n": "会员免费", "v": "2"}]}, {"key": "sort", "name": "热度最高", "value": [{"n": "热度最高", "v": ""}, {"n": "综合排序", "v": "0"}, {"n": "最新上线", "v": "1"}, {"n": "最多播放", "v": "2"}, {"n": "最多评论", "v": "3"}, {"n": "最多收藏", "v": "5"}]}], "教育": [{"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "公开课", "v": "公开课"}, {"n": "名人名嘴", "v": "名人名嘴"}, {"n": "文化", "v": "文化"}, {"n": "艺术", "v": "艺术"}, {"n": "伦理社会", "v": "伦理社会"}, {"n": "理工", "v": "理工"}, {"n": "历史", "v": "历史"}, {"n": "心理学", "v": "心理学"}, {"n": "经济", "v": "经济"}, {"n": "管理学", "v": "管理学"}, {"n": "外语", "v": "外语"}, {"n": "法律", "v": "法律"}, {"n": "计算机", "v": "计算机"}, {"n": "哲学", "v": "哲学"}, {"n": "职业培训", "v": "职业培训"}, {"n": "家庭教育", "v": "家庭教育"}]}, {"key": "company", "name": "全部出品", "value": [{"n": "全部出品", "v": ""}, {"n": "TED", "v": "ted"}, {"n": "耶鲁大学", "v": "耶鲁大学"}, {"n": "哈佛大学", "v": "哈佛大学"}, {"n": "斯坦福大学", "v": "斯坦福大学"}, {"n": "麻省理工学院", "v": "麻省理工学院"}]}, {"key": "pay_type", "name": "全部节目", "value": [{"n": "全部节目", "v": ""}, {"n": "免费", "v": "0"}, {"n": "付费", "v": "1"}, {"n": "VIP", "v": "2"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最多收藏", "v": "5"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}], "搞笑": [{"key": "division", "name": "全部专区", "value": [{"n": "全部专区", "v": ""}, {"n": "1080P", "v": "3"}, {"n": "独播", "v": "6"}, {"n": "免费", "v": "5"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}], "生活": [{"key": "division", "name": "全部专区", "value": [{"n": "全部专区", "v": ""}, {"n": "1080P", "v": "3"}, {"n": "独播", "v": "6"}, {"n": "VIP", "v": "4"}, {"n": "免费", "v": "5"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}], "体育": [{"key": "division", "name": "全部专区", "value": [{"n": "全部专区", "v": ""}, {"n": "1080P", "v": "3"}, {"n": "独播", "v": "6"}, {"n": "VIP", "v": "4"}, {"n": "免费", "v": "5"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "篮球", "v": "篮球"}, {"n": "足球", "v": "足球"}, {"n": "台球", "v": "台球"}, {"n": "CBA", "v": "CBA"}, {"n": "钓鱼", "v": "钓鱼"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}], "音乐": [{"key": "division", "name": "全部专区", "value": [{"n": "全部专区", "v": ""}, {"n": "1080P", "v": "3"}, {"n": "独播", "v": "6"}, {"n": "免费", "v": "5"}]}, {"key": "main_area", "name": "全部地区", "value": [{"n": "全部地区", "v": ""}, {"n": "中国", "v": "中国"}, {"n": "中国台湾", "v": "中国台湾"}, {"n": "中国香港", "v": "中国香港"}, {"n": "美国", "v": "美国"}, {"n": "其他", "v": "其他"}]}, {"key": "music_show_type", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "演唱会", "v": "演唱会"}, {"n": "live现场", "v": "live现场"}, {"n": "颁奖典礼", "v": "颁奖典礼"}, {"n": "舞蹈", "v": "舞蹈"}, {"n": "影视原声", "v": "影视原声"}, {"n": "音乐达人", "v": "音乐达人"}, {"n": "音乐教学", "v": "音乐教学"}, {"n": "音乐纪录片", "v": "音乐纪录片"}, {"n": "音乐mv", "v": "音乐mv"}, {"n": "音乐自制", "v": "音乐自制"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}], "游戏": [{"key": "division", "name": "全部专区", "value": [{"n": "全部专区", "v": ""}, {"n": "1080P", "v": "3"}, {"n": "独播", "v": "6"}, {"n": "VIP", "v": "4"}, {"n": "免费", "v": "5"}]}, {"key": "game_brand", "name": "全部节目", "value": [{"n": "全部节目", "v": ""}, {"n": "王者荣耀", "v": "王者荣耀"}, {"n": "和平精英", "v": "和平精英"}, {"n": "绝地求生", "v": "绝地求生"}, {"n": "迷你世界", "v": "迷你世界"}, {"n": "我的世界", "v": "我的世界"}, {"n": "植物大战僵尸", "v": "植物大战僵尸"}, {"n": "方舟生存进化", "v": "方舟生存进化"}, {"n": "第五人格", "v": "第五人格"}, {"n": "猫和老鼠", "v": "猫和老鼠"}, {"n": "香肠派对", "v": "香肠派对"}, {"n": "穿越火线", "v": "穿越火线"}, {"n": "英雄联盟", "v": "英雄联盟"}]}, {"key": "tags", "name": "全部类型", "value": [{"n": "全部类型", "v": ""}, {"n": "资讯", "v": "资讯"}, {"n": "解说", "v": "解说"}, {"n": "主播", "v": "主播"}, {"n": "沙盒", "v": "沙盒"}, {"n": "益智", "v": "益智"}, {"n": "生存", "v": "生存"}, {"n": "电子竞技", "v": "电子竞技"}, {"n": "单机主机", "v": "单机主机"}, {"n": "真人秀", "v": "真人秀"}, {"n": "动画", "v": "动画"}, {"n": "盘点", "v": "盘点"}, {"n": "游戏文化", "v": "游戏文化"}, {"n": "游戏节目", "v": "游戏节目"}, {"n": "评测", "v": "评测"}, {"n": "射击", "v": "射击"}, {"n": "策略", "v": "策略"}, {"n": "冒险", "v": "冒险"}, {"n": "即时战略", "v": "即时战略"}, {"n": "卡牌", "v": "卡牌"}, {"n": "角色扮演", "v": "角色>扮演"}]}, {"key": "sort", "name": "综合排序", "value": [{"n": "综合排序", "v": ""}, {"n": "最多播放", "v": "2"}, {"n": "最好评", "v": "3"}, {"n": "最新上线", "v": "1"}]}]}, + headers:{ + 'User-Agent':'PC_UA', + 'Cookie':'cna=VvNvGX3e0ywCAavVEXlnA2bg; __ysuid=1626676228345Rl1; __ayft=1652434048647; __arycid=dm-1-00; __arcms=dm-1-00; __ayvstp=85; __arpvid=1667204023100cWWdgM-1667204023112; __ayscnt=10; __aypstp=60; isg=BBwcqxvvk3BxkWQGugbLpUSf7TrOlcC_U7GAj_YdfYfvQbzLHqYGT4Hgp6m5TvgX; tfstk=c3JOByYUH20ilVucLOhh0pCtE40lZfGc-PjLHLLfuX7SWNyAiQvkeMBsIw7PWDC..; l=eBQguS-PjdJFGJT-BOfwourza77OSIRA_uPzaNbMiOCPOb1B5UxfW6yHp4T6C3GVhsGJR3rp2umHBeYBqQd-nxvOF8qmSVDmn', + }, + timeout:5000, + class_name:'电视剧&电影&综艺&动漫&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + class_url:'电视剧&电影&综艺&动漫&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + limit:20, + play_parse:true, + // 手动调用解析请求json的url,此lazy不方便 + // lazy:'js:print(input);fetch_params.headers["user-agent"]=MOBILE_UA;let html=request(input);let rurl=html.match(/window\\.open\\(\'(.*?)\',/)[1];rurl=urlDeal(rurl);input={parse:1,url:rurl};', + lazy:'js:input={parse:1,jx:1,url:input};', + // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + // 一级:'json:data.filterData.listData;title;img;subTitle;videoLink;summary', + 一级:'', + 一级:'js:let d=[];MY_FL.type=MY_CATE;let fl=stringify(MY_FL);fl=encodeUrl(fl);input=input.split("{")[0]+fl;if(MY_PAGE>1){let old_session=getItem("yk_session_"+MY_CATE,"{}");if(MY_PAGE===2){input=input.replace("optionRefresh=1","session="+encodeUrl(old_session))}else{input=input.replace("optionRefresh=1","session="+encodeUrl(old_session))}}let html=fetch(input,fetch_params);try{html=JSON.parse(html);let lists=html.data.filterData.listData;let session=html.data.filterData.session;session=stringify(session);if(session!==getItem("yk_session_"+MY_CATE,"{}")){setItem("yk_session_"+MY_CATE,session)}lists.forEach(function(it){let vid;if(it.videoLink.includes("id_")){vid=it.videoLink.split("id_")[1].split(".html")[0]}else{vid="msearch:"}d.push({title:it.title,img:it.img,desc:it.summary,url:"https://search.youku.com/api/search?appScene=show_episode&showIds="+vid,content:it.subTitle})})}catch(e){log("一级列表解析发生错误:"+e.message)}setResult(d);', + 二级:'', + 二级:'js:var d=[];VOD={};let html=request(input);let json=JSON.parse(html);if(/keyword/.test(input)){input="https://search.youku.com/api/search?appScene=show_episode&showIds="+json.pageComponentList[0].commonData.showId;json=JSON.parse(fetch(MY_URL,fetch_params))}let video_lists=json.serisesList;var name=json.sourceName;if(/优酷/.test(name)&&video_lists.length>0){let ourl="https://v.youku.com/v_show/id_"+video_lists[0].videoId+".html";let _img=video_lists[0].thumbUrl;let html=fetch(ourl,{headers:{Referer:"https://v.youku.com/","User-Agent":PC_UA}});let json=/__INITIAL_DATA__/.test(html)?html.split("window.__INITIAL_DATA__ =")[1].split(";")[0]:"{}";if(json==="{}"){log("触发了优酷人机验证");VOD.vod_remarks=ourl;VOD.vod_pic=_img;VOD.vod_name=video_lists[0].title.replace(/(\\d+)/g,"");VOD.vod_content="触发了优酷人机验证,本次未获取详情,但不影响播放("+ourl+")"}else{try{json=JSON.parse(json);let data=json.data.data;let data_extra=data.data.extra;let img=data_extra.showImgV;let model=json.data.model;let m=model.detail.data.nodes[0].nodes[0].nodes[0].data;let _type=m.showGenre;let _desc=m.updateInfo||m.subtitle;let JJ=m.desc;let _title=m.introTitle;VOD.vod_pic=img;VOD.vod_name=_title;VOD.vod_type=_type;VOD.vod_remarks=_desc;VOD.vod_content=JJ}catch(e){log("海报渲染发生错误:"+e.message);print(json);VOD.vod_remarks=name}}}if(!/优酷/.test(name)){VOD.vod_content="非自家播放源,暂无视频简介及海报";VOD.vod_remarks=name}function adhead(url){return urlencode(url)}play_url=play_url.replace("&play_url=","&type=json&play_url=");video_lists.forEach(function(it){let url="https://v.youku.com/v_show/id_"+it.videoId+".html";if(it.thumbUrl){d.push({desc:it.showVideoStage?it.showVideoStage.replace("期","集"):it.displayName,pic_url:it.thumbUrl,title:it.title,url:play_url+adhead(url)})}else if(name!=="优酷"){d.push({title:it.displayName?it.displayName:it.title,url:play_url+adhead(it.url)})}});VOD.vod_play_from=name;VOD.vod_play_url=d.map(function(it){return it.title+"$"+it.url}).join("#");', + 搜索:'', + 搜索:'js:var d=[];let html=request(input);let json=JSON.parse(html);json.pageComponentList.forEach(function(it){if(it.hasOwnProperty("commonData")){it=it.commonData;d.push({title:it.titleDTO.displayName,img:it.posterDTO.vThumbUrl,desc:it.stripeBottom,content:it.updateNotice+" "+it.feature,url:"https://search.youku.com/api/search?appScene=show_episode&showIds="+it.showId+"&appCaller=h5"})}});setResult(d);', +} \ No newline at end of file diff --git a/香雅情/js/哔哩直播.js b/香雅情/js/哔哩直播.js new file mode 100644 index 0000000..d29c70b --- /dev/null +++ b/香雅情/js/哔哩直播.js @@ -0,0 +1,112 @@ +/** + * 影视TV 弹幕支持 + * https://t.me/fongmi_offical/ + * https://github.com/FongMi/Release/tree/main/apk + * 皮皮虾DMBox 弹幕支持 + * 设置 > 窗口预览 > 开启 + * https://t.me/pipixiawerun + * vod_area:'bililivedanmu' + * Cookie设置 + * Cookie获取方法 https://ghproxy.net/https://raw.githubusercontent.com/UndCover/PyramidStore/main/list.md + * Cookie设置方法1: DR-PY 后台管理界面 + * CMS后台管理 > 设置中心 > 环境变量 > {"bili_cookie":"XXXXXXX","vmid":"XXXXXX"} > 保存 + * Cookie设置方法2: 手动替换Cookie + * 底下代码 headers的 + * "Cookie":"$bili_cookie" + * 手动替换为 + * "Cookie":"将获取的Cookie黏贴在这" + */ + +var rule = { + title:'哔哩直播', + host:'https://api.live.bilibili.com', + homeUrl:'/xlive/web-interface/v1/second/getUserRecommend?page=1&page_size=30&platform=web',//用于"分类获取"和"推荐获取" + url:'/xlive/web-interface/v1/second/getList?platform=web&parent_area_id=fyclass&area_id=fyfilter&sort_type=online&page=fypage', + class_name:'生活&网游&手游&单机游戏&娱乐&电台&虚拟主播&聊天室&知识&赛事&帮我玩&互动玩法', + class_url:'10&2&3&6&1&5&9&14&11&13&301&15', + filterable: 1, + filter_url: '{{fl.area}}', + filter_def:{ + 10:{area:'624'}, + 2:{area:'86'}, + 3:{area:'35'}, + 6:{area:'236'}, + 1:{area:'21'}, + 5:{area:'190'}, + 9:{area:'744'}, + 14:{area:'818'}, + 11:{area:'376'}, + 13:{area:'562'}, + 301:{area:'301000'}, + 15:{area:'814'} + }, + filter: { + "10":[{"key":"area","name":"分区","value":[{"n":"生活分享","v":"646"},{"n":"聊天交友","v":"825"},{"n":"手工绘画","v":"627"},{"n":"情感","v":"623"},{"n":"户外","v":"368"},{"n":"萌宠","v":"369"},{"n":"运动","v":"628"},{"n":"美食","v":"367"},{"n":"时尚","v":"378"},{"n":"电子榨菜","v":"624"},{"n":"沉浸体验","v":"827"}]}], + "2":[{"key":"area","name":"分区","value":[{"n":"英雄联盟","v":"86"},{"n":"无畏契约","v":"329"},{"n":"CS:GO","v":"89"},{"n":"APEX英雄","v":"240"},{"n":"永劫无间","v":"666"},{"n":"穿越火线","v":"88"},{"n":"命运方舟","v":"590"},{"n":"DOTA2","v":"92"},{"n":"吃鸡行动","v":"80"},{"n":"逃离塔科夫","v":"252"},{"n":"传奇","v":"695"},{"n":"DNF","v":"78"},{"n":"卡拉彼丘","v":"782"},{"n":"幕后高手","v":"774"},{"n":"生死狙击2","v":"575"},{"n":"洛奇英雄传","v":"599"},{"n":"最终幻想14","v":"102"},{"n":"重生边缘","v":"809"},{"n":"星际战甲","v":"249"},{"n":"梦三国","v":"710"},{"n":"英魂之刃","v":"690"},{"n":"剑网3","v":"82"},{"n":"从军","v":"829"},{"n":"铁甲雄兵","v":"691"},{"n":"封印者","v":"300"},{"n":"新天龙八部","v":"653"},{"n":"赛尔号","v":"667"},{"n":"造梦西游","v":"668"},{"n":"洛克王国","v":"669"},{"n":"问道","v":"670"},{"n":"诛仙世界","v":"654"},{"n":"大话西游","v":"652"},{"n":"奇迹MU","v":"683"},{"n":"永恒之塔","v":"684"},{"n":"QQ三国","v":"685"},{"n":"人间地狱","v":"677"},{"n":"彩虹岛","v":"686"},{"n":"洛奇","v":"663"},{"n":"跑跑卡丁车","v":"664"},{"n":"星际公民","v":"658"},{"n":"Squad战术小队","v":"659"},{"n":"反恐精英Online","v":"629"},{"n":"风暴奇侠","v":"648"},{"n":"创世战车","v":"705"},{"n":"装甲战争","v":"642"},{"n":"守望先锋","v":"87"},{"n":"阿尔比恩","v":"639"},{"n":"猎杀对决","v":"600"},{"n":"CFHD","v":"472"},{"n":"骑士精神2","v":"650"},{"n":"超击突破","v":"680"},{"n":"武装突袭","v":"634"},{"n":"Wayfinder寻路者","v":"773"},{"n":"300英雄","v":"84"},{"n":"炉石传说","v":"91"},{"n":"剑网3缘起","v":"499"},{"n":"街头篮球","v":"649"},{"n":"综合射击","v":"601"},{"n":"剑灵","v":"505"},{"n":"艾尔之光","v":"651"},{"n":"黑色沙漠","v":"632"},{"n":"天涯明月刀","v":"596"},{"n":"超激斗梦境","v":"519"},{"n":"冒险岛","v":"574"},{"n":"逆战","v":"487"},{"n":"魔兽争霸3","v":"181"},{"n":"QQ飞车","v":"610"},{"n":"魔兽世界","v":"83"},{"n":"FIFAONLINE4","v":"388"},{"n":"NBA2KOL2","v":"581"},{"n":"使命召唤:战区","v":"318"},{"n":"VRChat","v":"656"},{"n":"坦克世界","v":"115"},{"n":"战舰世界","v":"248"},{"n":"战争与抉择","v":"729"},{"n":"战争雷霆","v":"316"},{"n":"战意","v":"383"},{"n":"风暴英雄","v":"114"},{"n":"星际争霸2","v":"93"},{"n":"刀塔自走棋","v":"239"},{"n":"堡垒之夜","v":"164"},{"n":"枪神纪","v":"251"},{"n":"三国杀","v":"81"},{"n":"龙之谷","v":"112"},{"n":"古剑奇谭OL","v":"173"},{"n":"幻想全明星","v":"176"},{"n":"怀旧网游","v":"288"},{"n":"新游前瞻","v":"298"},{"n":"星战前夜:晨曦","v":"331"},{"n":"流放之路","v":"551"},{"n":"FPS沙盒","v":"633"},{"n":"永恒轮回","v":"459"},{"n":"激战2","v":"607"},{"n":"其他网游","v":"107"},{"n":"蓝色协议","v":"760"}]}], + "3":[{"key":"area","name":"分区","value":[{"n":"王者荣耀","v":"35"},{"n":"和平精英","v":"256"},{"n":"原神","v":"321"},{"n":"崩坏:星穹铁道","v":"549"},{"n":"第五人格","v":"163"},{"n":"LOL手游","v":"395"},{"n":"明日方舟","v":"255"},{"n":"黎明觉醒:生机","v":"479"},{"n":"蛋仔派对","v":"571"},{"n":"冒险岛手游","v":"796"},{"n":"元梦之星","v":"822"},{"n":"闪耀!优俊少女","v":"805"},{"n":"斯露德","v":"797"},{"n":"千年之旅","v":"806"},{"n":"白夜极光","v":"781"},{"n":"逆水寒手游","v":"771"},{"n":"率土之滨","v":"807"},{"n":"月圆之夜","v":"215"},{"n":"哈利波特:魔法觉醒","v":"474"},{"n":"七人传奇","v":"823"},{"n":"幻塔","v":"550"},{"n":"星之破晓","v":"799"},{"n":"金铲铲之战","v":"514"},{"n":"少女前线2:追放","v":"832"},{"n":"深空之眼","v":"598"},{"n":"无期迷途","v":"675"},{"n":"晶核","v":"777"},{"n":"星球重启","v":"828"},{"n":"宿命回响:弦上的叹息","v":"826"},{"n":"光遇","v":"687"},{"n":"桃源深处有人家","v":"792"},{"n":"三国志战棋版","v":"756"},{"n":"战火勋章","v":"765"},{"n":"以闪亮之名","v":"755"},{"n":"尘白禁区","v":"778"},{"n":"古魂","v":"759"},{"n":"鬼泣-巅峰之战","v":"470"},{"n":"奇点时代","v":"762"},{"n":"香肠派对","v":"689"},{"n":"猫之城","v":"645"},{"n":"高能英雄","v":"783"},{"n":"使命召唤手游","v":"386"},{"n":"崩坏3","v":"40"},{"n":"银河境界线","v":"793"},{"n":"蔚蓝档案","v":"787"},{"n":"第七史诗","v":"784"},{"n":"游戏王:决斗链接","v":"407"},{"n":"游戏王","v":"303"},{"n":"JJ斗地主","v":"724"},{"n":"阴阳师","v":"36"},{"n":"欢乐斗地主","v":"719"},{"n":"太空行动","v":"791"},{"n":"空之要塞:启航","v":"718"},{"n":"长安幻想","v":"738"},{"n":"火影忍者手游","v":"292"},{"n":"Fate/GO","v":"37"},{"n":"综合棋牌","v":"354"},{"n":"QQ飞车手游","v":"154"},{"n":"决战!平安京","v":"140"},{"n":"狼人杀","v":"41"},{"n":"三国杀移动版","v":"352"},{"n":"碧蓝航线","v":"113"},{"n":"影之诗","v":"156"},{"n":"明日之后","v":"189"},{"n":"重返未来:1999","v":"761"},{"n":"环行旅舍","v":"786"},{"n":"幻世与冒险","v":"813"},{"n":"部落冲突:皇室战争","v":"50"},{"n":"奥比岛手游","v":"661"},{"n":"弹弹堂","v":"734"},{"n":"雀姬","v":"214"},{"n":"公主连结Re:Dive","v":"330"},{"n":"DNF手游","v":"343"},{"n":"FIFA足球世界","v":"641"},{"n":"BanGDream","v":"258"},{"n":"荒野乱斗","v":"469"},{"n":"CF手游","v":"333"},{"n":"战双帕弥什","v":"293"},{"n":"天涯明月刀手游","v":"389"},{"n":"一拳超人:世界","v":"779"},{"n":"解密游戏","v":"42"},{"n":"恋爱养成游戏","v":"576"},{"n":"暗黑破坏神:不朽","v":"492"},{"n":"暗区突围","v":"502"},{"n":"跑跑卡丁车手游","v":"265"},{"n":"非人学园","v":"212"},{"n":"百闻牌","v":"286"},{"n":"猫和老鼠手游","v":"269"},{"n":"坎公骑冠剑","v":"442"},{"n":"忍者必须死3","v":"203"},{"n":"梦幻西游手游","v":"342"},{"n":"航海王热血航线","v":"504"},{"n":"少女前线","v":"39"},{"n":"300大作战","v":"688"},{"n":"少女前线:云图计划","v":"525"},{"n":"漫威超级战争","v":"478"},{"n":"摩尔庄园手游","v":"464"},{"n":"宝可梦大集结","v":"493"},{"n":"小动物之星","v":"473"},{"n":"天地劫:幽城再临","v":"448"},{"n":"漫威对决","v":"511"},{"n":"东方归言录","v":"538"},{"n":"梦幻模拟战","v":"178"},{"n":"时空猎人3","v":"643"},{"n":"重返帝国","v":"613"},{"n":"休闲小游戏","v":"679"},{"n":"其他手游","v":"98"},{"n":"新游评测","v":"274"},{"n":"山海镜花","v":"821"},{"n":"小冰冰传奇","v":"824"}]}], + "6":[{"key":"area","name":"分区","value":[{"n":"主机游戏","v":"236"},{"n":"我的世界","v":"216"},{"n":"独立游戏","v":"283"},{"n":"怀旧游戏","v":"237"},{"n":"猛兽派对","v":"384"},{"n":"赛博朋克2077","v":"402"},{"n":"星空","v":"808"},{"n":"塞尔达传说","v":"308"},{"n":"苍翼:混沌效应","v":"798"},{"n":"命运2","v":"277"},{"n":"收获日3","v":"811"},{"n":"FC24","v":"830"},{"n":"机战佣兵VI境界天火","v":"800"},{"n":"暗黑破坏神Ⅳ","v":"780"},{"n":"匹诺曹的谎言","v":"812"},{"n":"博德之门3","v":"385"},{"n":"绝世好武功","v":"801"},{"n":"恐怖游戏","v":"276"},{"n":"DarkandDarker","v":"795"},{"n":"Warlander","v":"785"},{"n":"FORZA极限竞速","v":"302"},{"n":"边境","v":"763"},{"n":"生化危机","v":"721"},{"n":"最终幻想","v":"328"},{"n":"暗黑破坏神","v":"535"},{"n":"森林之子","v":"751"},{"n":"卧龙:苍天陨落","v":"700"},{"n":"红色警戒2","v":"693"},{"n":"策略游戏","v":"570"},{"n":"禁闭求生","v":"707"},{"n":"战神","v":"579"},{"n":"斯普拉遁3","v":"694"},{"n":"使命召唤19","v":"282"},{"n":"艾尔登法环","v":"555"},{"n":"聚会游戏","v":"636"},{"n":"DreadHunger","v":"591"},{"n":"战地风云","v":"597"},{"n":"糖豆人","v":"357"},{"n":"消逝的光芒2","v":"586"},{"n":"只狼","v":"245"},{"n":"怪物猎人","v":"578"},{"n":"宝可梦集换式卡牌游戏","v":"720"},{"n":"饥荒","v":"218"},{"n":"精灵宝可梦","v":"228"},{"n":"FIFA23","v":"708"},{"n":"全面战争:战锤3","v":"594"},{"n":"NBA2K","v":"362"},{"n":"帝国时代4","v":"548"},{"n":"植物大战僵尸","v":"309"},{"n":"格斗游戏","v":"433"},{"n":"荒野大镖客2","v":"226"},{"n":"重生细胞","v":"426"},{"n":"刺客信条","v":"227"},{"n":"恐鬼症","v":"387"},{"n":"以撒","v":"219"},{"n":"双人成行","v":"446"},{"n":"方舟","v":"295"},{"n":"仁王2","v":"313"},{"n":"鬼泣5","v":"244"},{"n":"枪火重生","v":"364"},{"n":"盗贼之海","v":"341"},{"n":"胡闹厨房","v":"507"},{"n":"体育游戏","v":"500"},{"n":"全境封锁2","v":"243"},{"n":"骑马与砍杀","v":"326"},{"n":"人类一败涂地","v":"270"},{"n":"无主之地3","v":"273"},{"n":"辐射76","v":"220"},{"n":"全面战争","v":"257"},{"n":"文字游戏","v":"583"},{"n":"恋爱模拟游戏","v":"592"},{"n":"泰拉瑞亚","v":"593"},{"n":"游戏速通","v":"678"},{"n":"Roblox","v":"753"},{"n":"雀魂麻将","v":"803"},{"n":"德州电锯","v":"834"},{"n":"其他单机","v":"235"}]}], + "1":[{"key":"area","name":"分区","value":[{"n":"聊天室","v":"740"},{"n":"视频唱见","v":"21"},{"n":"萌宅领域","v":"530"},{"n":"视频聊天","v":"145"},{"n":"舞见","v":"207"}]}], + "5":[{"key":"area","name":"分区","value":[{"n":"唱见电台","v":"190"},{"n":"聊天电台","v":"192"},{"n":"甜宠电台","v":"817"}]}], + "9":[{"key":"area","name":"分区","value":[{"n":"TopStar","v":"743"},{"n":"虚拟Singer","v":"744"},{"n":"虚拟Gamer","v":"745"},{"n":"虚拟声优","v":"746"},{"n":"虚拟日常","v":"371"},{"n":"虚拟APEX","v":"789"},{"n":"虚拟PK","v":"775"}]}], + "14":[{"key":"area","name":"分区","value":[{"n":"交友","v":"818"},{"n":"点唱","v":"819"},{"n":"兴趣","v":"820"}]}], + "11":[{"key":"area","name":"分区","value":[{"n":"社科法律心理","v":"376"},{"n":"人文历史","v":"702"},{"n":"校园学习","v":"372"},{"n":"职场·技能","v":"377"},{"n":"科技","v":"375"},{"n":"科学科普","v":"701"}]}], + "13":[{"key":"area","name":"分区","value":[{"n":"游戏赛事","v":"561"},{"n":"体育赛事","v":"562"},{"n":"赛事综合","v":"563"}]}], + "301":[{"key":"area","name":"分区","value":[{"n":"热门帮玩","v":"301000"},{"n":"手游帮玩","v":"301002"},{"n":"网游帮玩","v":"301003"},{"n":"单机帮玩","v":"301004"}]}], + "15":[{"key":"area","name":"分区","value":[{"n":"兵临城下","v":"814"},{"n":"功夫狂飙","v":"833"},{"n":"竞技玩法","v":"815"},{"n":"休闲玩法","v":"816"}]}] + }, + detailUrl:'https://live.bilibili.com/fyid',//二级详情拼接链接(json格式用) + // detailUrl:'https://api.live.bilibili.com/xlive/web-room/v1/playUrl/playUrl?cid=fyid&platform=h5&otype=json&quality=0',//二级详情拼接链接(json格式用) + // searchUrl:'/x/web-interface/search/type?__refresh__=true&page=fypage&page_size=42&order=online&platform=pc&highlight=1&single_column=0&keyword=**&search_type=live&dynamic_offset=0&preload=true', + searchUrl:'https://api.bilibili.com/x/web-interface/search/type?search_type=live&keyword=**&page=fypage', + searchable:2, + quickSearch:0, + headers:{ + "User-Agent":"PC_UA", + "Referer": "https://www.bilibili.com", + // "Cookie":"$bili_cookie" + "Cookie":"https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt" + }, + timeout:5000, + limit:8, + play_parse:true, + // play_json:[{re:'*', json:{jx:0, parse:1,header:JSON.stringify({"user-agent":"Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36"})}}], + // play_json:[{re:'*', json:{jx:0, parse:1,header:JSON.stringify({"user-agent":"uc_ua"})}}], + // play_json:0, + lazy:`js: + let ids = input.split('_'); + let dan = 'https://api.bilibili.com/x/v1/dm/list.so?oid=' + ids[1]; + let result = {}; + let iurl = 'https://api.live.bilibili.com/room/v1/Room/playUrl?cid=' + ids[1] + '&' + ids[0]; + let html = request(iurl); + let jRoot = JSON.parse(html); + let jo = jRoot['data']; + let ja = jo['durl']; + let purl = ''; + if (ja.length > 0) { + purl = ja[0]['url'] + } + result['parse'] = 0; + result['playUrl'] = ''; + result['url'] = unescape(purl); + result['header'] = { + Referer: 'https://live.bilibili.com', + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36' + }; + result['danmaku'] = dan; + if (/h5/.test(ids[0])) { + result['contentType'] = ''; + input = result + } else { + result['contentType'] = 'video/x-flv'; + input = result + } + `, + double:false, + 推荐:'*', + 一级:'json:data.list;title;system_cover;uname;roomid', + // 二级:'*', + 二级:"js:let aid=input.match(/\\/(\\d+)/)[1];log(aid);let html=request('https://api.live.bilibili.com/room/v1/Room/get_info?room_id='+aid);let jo=JSON.parse(html).data;let title=jo['title'];let pic=jo['keyframe'];let desc=jo['description'];let dire=jo['uid'];let typeName=jo['area_name'];let remark='在线人数:'+jo['online'];let vod={vod_id:aid,vod_name:title,vod_pic:pic,type_name:typeName,vod_area:'bililivedanmu',vod_remarks:remark,vod_actor:'直播间id-'+aid,vod_director:dire,vod_content:desc};vod['vod_play_from']='B站';vod['vod_play_url']='flv线路原画$platform=web&quality=4_'+aid+'#flv线路高清$platform=web&quality=3_'+aid+'#h5线路原画$platform=h5&quality=4_'+aid+'#h5线路高清$platform=h5&quality=3_'+aid;VOD=vod;", + // 搜索:'json:data.result.live_room;title;cover;uname;roomid', + 搜索:'js:let html=request(input);let msg=JSON.parse(html).message;if(msg!=="0"){VODS=[{vod_name:KEY+"➢"+msg,vod_id:"no_data",vod_remarks:"别点,缺少bili_cookie",vod_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"}]}else{let videos=[];let vodList=JSON.parse(html).data.result.live_room;vodList.forEach(function(vod){let aid=vod["roomid"];let title="直播间:"+vod["title"].replace(\'\',"").replace("","");let img="https:"+vod["user_cover"];let remark=vod["watched_show"]["text_small"]+" "+vod["uname"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})});VODS=videos}', + // 预处理:'if(rule_fetch_params.headers.Cookie.startsWith("http")){rule_fetch_params.headers.Cookie=fetch(rule_fetch_params.headers.Cookie);setItem(RULE_CK,cookie)};log(rule_fetch_params.headers.Cookie)', +} \ No newline at end of file diff --git a/香雅情/js/奇珍异兽.js b/香雅情/js/奇珍异兽.js new file mode 100644 index 0000000..c67ae3d --- /dev/null +++ b/香雅情/js/奇珍异兽.js @@ -0,0 +1,39 @@ +var rule = { + title:'奇珍异兽', + host:'https://www.iqiyi.com', + homeUrl:'', + // detailUrl:'https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid=fyid&size=2000&page=1', + detailUrl:'https://pcw-api.iqiyi.com/video/video/videoinfowithuser/fyid?agent_type=1&authcookie=&subkey=fyid&subscribe=1', + searchUrl:'https://search.video.iqiyi.com/o?if=html5&key=**&pageNum=fypage&pos=1&pageSize=24&site=iqiyi', + searchable:2, + multi:1, + filterable:1, + filter:{'1': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '华语', 'v': 1}, {'n': '香港地区', 'v': 28997}, {'n': '美国', 'v': 2}, {'n': '欧洲', 'v': 3}, {'n': '韩国', 'v': 4}, {'n': '日本', 'v': 308}, {'n': '泰国', 'v': 1115}, {'n': '印度', 'v': 28999}, {'n': '其它', 'v': 5}]}, {'key': '18001', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 8}, {'n': '爱情', 'v': 6}, {'n': '动作', 'v': 11}, {'n': '枪战', 'v': 131}, {'n': '犯罪', 'v': 291}, {'n': '惊悚', 'v': 128}, {'n': '恐怖', 'v': 10}, {'n': '悬疑', 'v': 289}, {'n': '动画', 'v': 12}, {'n': '家庭', 'v': 27356}, {'n': '奇幻', 'v': 1284}, {'n': '魔幻', 'v': 129}, {'n': '科幻', 'v': 9}, {'n': '战争', 'v': 7}, {'n': '青春', 'v': 130}]}, {'key': '27396', 'name': '规格', 'value': [{'n': '全部', 'v': ''}, {'n': '巨制', 'v': 27397}, {'n': '院线', 'v': 27815}, {'n': '独播', 'v': 30149}, {'n': '网络电影', 'v': 27401}]}], '2': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 15}, {'n': '港剧', 'v': 16}, {'n': '韩剧', 'v': 17}, {'n': '美剧', 'v': 18}, {'n': '日剧', 'v': 309}, {'n': '泰剧', 'v': 1114}, {'n': '台湾地区', 'v': 1117}, {'n': '英剧', 'v': 28916}, {'n': '其它', 'v': 19}]}, {'key': '18003', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '自制', 'v': 11992}, {'n': '古装', 'v': 24}, {'n': '言情', 'v': 20}, {'n': '武侠', 'v': 23}, {'n': '偶像', 'v': 30}, {'n': '家庭', 'v': 1654}, {'n': '青春', 'v': 1653}, {'n': '都市', 'v': 24064}, {'n': '喜剧', 'v': 135}, {'n': '战争', 'v': 27916}, {'n': '军旅', 'v': 1655}, {'n': '谍战', 'v': 290}, {'n': '悬疑', 'v': 32}, {'n': '罪案', 'v': 149}, {'n': '穿越', 'v': 148}, {'n': '宫廷', 'v': 139}, {'n': '历史', 'v': 21}, {'n': '神话', 'v': 145}, {'n': '科幻', 'v': 34}, {'n': '年代', 'v': 27}, {'n': '农村', 'v': 29}, {'n': '商战', 'v': 140}, {'n': '剧情', 'v': 24063}, {'n': '奇幻', 'v': 27881}, {'n': '网剧', 'v': 24065}, {'n': '竖短片', 'v': 32839}]}], '3': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '国内', 'v': 20323}, {'n': '国外', 'v': 20324}]}, {'key': '18004', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '人文', 'v': 70}, {'n': '美食', 'v': 33908}, {'n': '医疗', 'v': 33924}, {'n': '自然', 'v': 33933}, {'n': '萌宠', 'v': 33945}, {'n': '财经', 'v': 33953}, {'n': '罪案', 'v': 33960}, {'n': '竞技', 'v': 33967}, {'n': '灾难', 'v': 33974}, {'n': '军事', 'v': 72}, {'n': '历史', 'v': 74}, {'n': '探险', 'v': 73}, {'n': '社会', 'v': 71}, {'n': '科技', 'v': 28119}, {'n': '旅游', 'v': 310}]}, {'key': '28467', 'name': '出品方', 'value': [{'n': '全部', 'v': ''}, {'n': 'BBC', 'v': 28468}, {'n': '美国历史频道', 'v': 28470}, {'n': '探索频道', 'v': 28471}, {'n': '央视记录', 'v': 28472}, {'n': '北京纪实频道', 'v': 28473}, {'n': '上海纪实频道', 'v': 28474}, {'n': '朗思文化', 'v': 28476}, {'n': 'CNEX', 'v': 28477}, {'n': '五星传奇', 'v': 28478}, {'n': 'IMG', 'v': 28479}, {'n': 'NHK', 'v': 28480}, {'n': '爱奇艺出品', 'v': 31283}, {'n': 'Netflix', 'v': 31286}]}, {'key': '29076', 'name': '片种', 'value': [{'n': '全部', 'v': ''}, {'n': '纪录电影', 'v': 29077}, {'n': '系列纪录片', 'v': 29078}, {'n': '网络纪录片', 'v': 29082}, {'n': '纪实栏目', 'v': 29083}]}, {'key': '31294', 'name': '时长', 'value': [{'n': '全部', 'v': ''}, {'n': '微纪录', 'v': 29079}, {'n': '长纪录', 'v': 29080}, {'n': '短纪录', 'v': 29081}]}], '4': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '中国大陆', 'v': 37}, {'n': '日本', 'v': 38}, {'n': '韩国', 'v': 1106}, {'n': '欧美', 'v': 30218}, {'n': '其它', 'v': 40}]}, {'key': '30219', 'name': '版本', 'value': [{'n': '全部', 'v': ''}, {'n': '动画', 'v': 30220}, {'n': '特摄', 'v': 30223}, {'n': '布袋戏', 'v': 30224}, {'n': '特别篇', 'v': 32782}, {'n': '动态漫画', 'v': 32783}, {'n': '动画电影', 'v': 32784}, {'n': '竖版视频', 'v': 32785}, {'n': '轻动画', 'v': 33482}, {'n': '短剧', 'v': 33483}]}, {'key': '30225', 'name': '风格', 'value': [{'n': '全部', 'v': ''}, {'n': '搞笑', 'v': 30230}, {'n': '热血', 'v': 30232}, {'n': '催泪', 'v': 30233}, {'n': '治愈', 'v': 30234}, {'n': '励志', 'v': 30237}, {'n': '机战', 'v': 30241}, {'n': '恋爱', 'v': 30243}, {'n': '科幻', 'v': 30245}, {'n': '奇幻', 'v': 30247}, {'n': '推理', 'v': 30248}, {'n': '校园', 'v': 30249}, {'n': '日常', 'v': 30252}, {'n': '历史', 'v': 30254}, {'n': '美食', 'v': 30255}, {'n': '职场', 'v': 30256}, {'n': '偶像', 'v': 30258}, {'n': '泡面', 'v': 30265}, {'n': '冒险', 'v': 30267}, {'n': '竞技', 'v': 30268}, {'n': '合家欢', 'v': 30270}, {'n': '武侠', 'v': 32792}, {'n': '玄幻', 'v': 32793}]}, {'key': '32795', 'name': '新类型', 'value': [{'n': '全部', 'v': ''}, {'n': '轻小说改编', 'v': 32796}, {'n': '漫画改编', 'v': 32797}, {'n': '游戏改编', 'v': 32798}, {'n': '原创', 'v': 32799}]}], '6': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 151}, {'n': '港台', 'v': 152}, {'n': '韩国', 'v': 33306}, {'n': '欧美', 'v': 154}, {'n': '其它', 'v': 1113}]}, {'key': '18014', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '播报', 'v': 155}, {'n': '访谈', 'v': 156}, {'n': '游戏', 'v': 158}, {'n': '晚会', 'v': 292}, {'n': '曲艺', 'v': 293}, {'n': '脱口秀', 'v': 2118}, {'n': '真人秀', 'v': 2224}, {'n': '竞技', 'v': 30278}, {'n': '爱奇艺出品', 'v': 30279}, {'n': '竞演', 'v': 33860}]}, {'key': '33162', 'name': '题材', 'value': [{'n': '全部', 'v': ''}, {'n': '音乐', 'v': 33163}, {'n': '舞蹈', 'v': 33172}, {'n': '文化', 'v': 33173}, {'n': '美食', 'v': 33182}, {'n': '伦理', 'v': 33184}, {'n': '相亲', 'v': 33193}, {'n': '纪实', 'v': 33195}, {'n': '生活', 'v': 33196}, {'n': '亲子', 'v': 33197}, {'n': '少儿', 'v': 33198}, {'n': '财经', 'v': 33199}, {'n': '健康', 'v': 33200}, {'n': '时尚', 'v': 33203}, {'n': '旅游', 'v': 33205}, {'n': '教育', 'v': 33206}, {'n': '其它', 'v': 33220}, {'n': '爱情', 'v': 33316}, {'n': '搞笑', 'v': 33317}, {'n': '益智', 'v': 33318}, {'n': '职场', 'v': 33319}, {'n': '语言', 'v': 33530}, {'n': '辩论', 'v': 33531}, {'n': '演讲', 'v': 33843}]}], '5': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 221}, {'n': '港台', 'v': 220}, {'n': '欧美', 'v': 219}, {'n': '日韩', 'v': 218}, {'n': '拉美', 'v': 217}, {'n': '亚洲地区', 'v': 216}, {'n': '非洲', 'v': 215}]}, {'key': '18009', 'name': '语种', 'value': [{'n': '全部', 'v': ''}, {'n': '普通话', 'v': 91}, {'n': '粤语', 'v': 92}, {'n': '闽南语', 'v': 93}, {'n': '英语', 'v': 94}, {'n': '日语', 'v': 95}, {'n': '韩语', 'v': 96}, {'n': '其它', 'v': 97}]}, {'key': '23554', 'name': '音乐类型', 'value': [{'n': '全部', 'v': ''}, {'n': '单曲MV', 'v': 23556}, {'n': '单曲现场', 'v': 23557}, {'n': '演唱会', 'v': 23558}, {'n': '新闻', 'v': 23559}, {'n': '访谈', 'v': 23560}, {'n': '音乐记录', 'v': 23561}, {'n': '音乐周边', 'v': 23562}, {'n': '音乐节目', 'v': 23563}, {'n': '影视原声', 'v': 23564}, {'n': '音乐短片', 'v': 23565}, {'n': '其他', 'v': 23566}]}], '16': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', 'v': ''}, {'n': '2023', 'v': 2023}, {'n': '2022', 'v': 2022}, {'n': '2021', 'v': 2021}, {'n': '2020', 'v': 2020}, {'n': '2019', 'v': 2019}, {'n': '2018', 'v': 2018}, {'n': '2017', 'v': 2017}, {'n': '2016-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': '18061', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 1296}, {'n': '爱情', 'v': 1297}, {'n': '动作', 'v': 1298}, {'n': '奇幻', 'v': 1299}, {'n': '惊悚', 'v': 1300}, {'n': '悬疑', 'v': 1301}, {'n': '青春', 'v': 1302}]}]}, + // url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&is_purchase=&mode=24&page_id=fypage&ret_num=48&three_category_id=', + url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&page_id=fypage&ret_num=48', + filter_url:'is_purchase={{fl.is_purchase}}&mode={{fl.mode}}&three_category_id={{fl.three_category_id}}&market_release_date_level={{fl.year}}', + // url:'https://pcw-api.iqiyi.com/search/video/videolists?channel_id=fyclass&pageNum=fypage&pageSize=24&data_type=1&site=iqiyi', + headers:{ + 'User-Agent':'MOBILE_UA' + }, + timeout:5000, + class_name:'电影&电视剧&纪录片&动漫&综艺&音乐&网络电影', + class_url:'1&2&3&4&6&5&16', + limit:20, + // play_parse:true, + // 手动调用解析请求json的url,此lazy不方便 + // lazy:'js:input="https://cache.json.icu/home/api?type=ys&uid=292796&key=fnoryABDEFJNPQV269&url="+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input', + // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + // 一级:'json:.data.list;.name;.imageUrl;.latestOrder;.albumId', + 推荐:'', + // 推荐:'js:let d=[];fetch_params.headers["user-agent"]=PC_UA;pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd;let html=fetch(HOST,fetch_params);let lists=pdfa(html,".qy-mod-li");lists.forEach(function(it){try{let title=pdfh(it,"p.sub&&title");let desc=pdfh(it,".qy-mod-label&&Text");let pic_url=pd(it,"img&&src");d.push({title:title,desc:desc,img:pic_url})}catch(e){}});res=setResult(d);', + 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=request(input);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);', + // 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=fetch(input,fetch_params);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);', + // 一级:'json:.data.list;.name;.imageUrl;.playUrl;.latestOrder', + // 二级:{is_json:1,"title":"data.title;data.moviecategory[0]+data.moviecategory[1]","img":"data.cdncover","desc":"data.area[0];data.director[0]","content":"data.description","tabs":"data.playlink_sites;data.playlinksdetail.#idv.quality","lists":"data.playlinksdetail.#idv.default_url"}, + // 二级:{is_json:1,"title":"data.name+data.subtitle;data.latestOrder","img":"data.imageUrl","desc":"data.categories;data.areas","content":"data.description","tabs":"data.name","lists":"data.playlinksdetail.#idv.default_url"}, + 二级:'', + 二级:'js:let d=[];let html=request(input);let json=JSON.parse(html).data;VOD={vod_id:"",vod_url:input,vod_name:"",type_name:"",vod_actor:"",vod_year:"",vod_director:"",vod_area:"",vod_content:"",vod_remarks:"",vod_pic:""};VOD.vod_name=json.name;try{if(json.latestOrder){VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+"\\n更新至:第"+json.latestOrder+"集(期)/共"+json.videoCount+"集(期)"}else{VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+json.period}}catch(e){VOD.vod_remarks=json.subtitle}VOD.vod_area=(json.focus||"")+"\\n资费:"+(json.payMark===1?"VIP":"免费")+"\\n地区:"+(json.areas||"");let vsize="579_772";try{vsize=json.imageSize[12]}catch(e){}VOD.vod_pic=json.imageUrl.replace(".jpg","_"+vsize+".jpg?caplist=jpg,webp");VOD.type_name=json.categories.map(function(it){return it.name}).join(",");if(json.people.main_charactor){let vod_actors=[];json.people.main_charactor.forEach(function(it){vod_actors.push(it.name)});VOD.vod_actor=vod_actors.join(",")}VOD.vod_content=json.description;let playlists=[];if(json.channelId===1||json.channelId===5){playlists=[{playUrl:json.playUrl,imageUrl:json.imageUrl,shortTitle:json.shortTitle,focus:json.focus,period:json.period}]}else{if(json.channelId===6){let qs=json.period.split("-")[0];let listUrl="https://pcw-api.iqiyi.com/album/source/svlistinfo?cid=6&sourceid="+json.albumId+"&timelist="+qs;let playData=JSON.parse(request(listUrl)).data[qs];playData.forEach(function(it){playlists.push({playUrl:it.playUrl,imageUrl:it.imageUrl,shortTitle:it.shortTitle,focus:it.focus,period:it.period})})}else{let listUrl="https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid="+json.albumId+"&size=200&page=1";let data=JSON.parse(request(listUrl)).data;let total=data.total;playlists=data.epsodelist;if(total>200){for(let i=2;i200){for(let i=2;i0?json.data.list[0].url:json.data.series[0].url;if(!/^http/.test(ourl)){ourl=host+ourl}fetch_params.headers["User-Agent"]=MOBILE_UA;html=request(ourl);if(html.includes("window.location =")){print("开始获取ourl");ourl=pdfh(html,"meta[http-equiv=refresh]&&content").split("url=")[1];print("获取到ourl:"+ourl);html=request(ourl)}try{let details=pdfh(html,".m-details&&Html").replace(/h1>/,"h6>").replace(/div/g,"br");print(details);let actor="",director="",time="";if(/播出时间/.test(details)){actor=pdfh(html,"p:eq(5)&&Text").substr(0,25);director=pdfh(html,"p:eq(4)&&Text");time=pdfh(html,"p:eq(3)&&Text")}else{actor=pdfh(html,"p:eq(4)&&Text").substr(0,25);director=pdfh(html,"p:eq(3)&&Text");time="已完结"}let _img=pd(html,".video-img&&img&&src");let JJ=pdfh(html,".desc&&Text").split("简介:")[1];let _desc=time;VOD.vod_name=pdfh(html,".vt-txt&&Text");VOD.type_name=pdfh(html,"p:eq(0)&&Text").substr(0,6);VOD.vod_area=pdfh(html,"p:eq(1)&&Text");VOD.vod_actor=actor;VOD.vod_director=director;VOD.vod_remarks=_desc;VOD.vod_pic=_img;VOD.vod_content=JJ}catch(e){log("获取影片信息发生错误:"+e.message)}function getRjpg(imgUrl,xs){xs=xs||3;let picSize=/jpg_/.test(imgUrl)?imgUrl.split("jpg_")[1].split(".")[0]:false;let rjpg=false;if(picSize){let a=parseInt(picSize.split("x")[0])*xs;let b=parseInt(picSize.split("x")[1])*xs;rjpg=a+"x"+b+".jpg"}let img=/jpg_/.test(imgUrl)&&rjpg?imgUrl.replace(imgUrl.split("jpg_")[1],rjpg):imgUrl;return img}if(json.data.total===1&&json.data.list.length===1){let data=json.data.list[0];let url="https://www.mgtv.com"+data.url;d.push({title:data.t4,desc:data.t2,pic_url:getRjpg(data.img),url:url})}else if(json.data.list.length>1){for(let i=1;i<=json.data.total_page;i++){if(i>1){json=JSON.parse(fetch(input.replace("page=1","page="+i),{}))}json.data.list.forEach(function(data){let url="https://www.mgtv.com"+data.url;if(data.isIntact=="1"){d.push({title:data.t4,desc:data.t2,pic_url:getRjpg(data.img),url:url})}})}}else{print(input+"暂无片源")}VOD.vod_play_from="mgtv";VOD.vod_play_url=d.map(function(it){return it.title+"$"+it.url}).join("#");setResult(d);', + 搜索:'', + 搜索:'js:fetch_params.headers.Referer="https://www.mgtv.com";fetch_params.headers["User-Agent"]=UA;let d=[];let html=request(input);let json=JSON.parse(html);json.data.contents.forEach(function(data){if(data.data.sourceList||data.data.yearList){let list=data.data.sourceList?data.data.sourceList:data.data.yearList[0].sourceList;let desc="";list.forEach(function(it){desc+=it.name+"\\t"});if(list[0].source==="imgo"){let img=data.data.pic?data.data.pic:data.data.yearList[0].pic;d.push({title:data.data.title?data.data.title:data.data.yearList[0].title,img:img,content:data.data.story?data.data.story:data.data.yearList[0].story,desc:data.data.playTime,url:list[0].vid})}}});setResult(d);', +} \ No newline at end of file diff --git a/香雅情/js/腾云驾雾.js b/香雅情/js/腾云驾雾.js new file mode 100644 index 0000000..aca6734 --- /dev/null +++ b/香雅情/js/腾云驾雾.js @@ -0,0 +1,39 @@ +var rule = { + title:'腾云驾雾', + host:'https://v.%71%71.com', + // homeUrl:'/channel/choice?listpage=1&channel=choice&sort=18&_all=1', + homeUrl:'/x/bu/pagesheet/list?_all=1&append=1&channel=choice&listpage=1&offset=0&pagesize=21&iarea=-1&sort=18', + detailUrl:'https://node.video.%71%71.com/x/api/float_vinfo2?cid=fyid', + // searchUrl:'https://node.video.%71%71.com/x/api/msearch?keyWord=**', + searchUrl:'/x/search/?q=**&stag=fypage', + // searchUrl:'http://s.video.qq.com/smartbox?plat=2&ver=0&num=29&otype=json&query=**', + searchable:2, + filterable:1, + multi:1, + // url:'/channel/fyclass?listpage=fypage&channel=fyclass&sort=18&_all=1', + url:'/x/bu/pagesheet/list?_all=1&append=1&channel=fyclass&listpage=1&offset=((fypage-1)*21)&pagesize=21&iarea=-1', + filter_url:'sort={{fl.sort or 18}}&year={{fl.year}}&pay={{fl.pay}}', + filter:{'choice': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'tv': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'movie': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'variety': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'cartoon': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'child': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}], 'doco': [{'key': 'sort', 'name': '排序', 'value': [{'n': '最热', 'v': '18'}, {'n': '最新', 'v': '19'}, {'n': '好评', 'v': '16'}, {'n': '高分好评', 'v': '21'}]}, {'key': 'pay', 'name': '资费', 'value': [{'n': '全部', 'v': '-1'}, {'n': '免费', 'v': '867'}, {'n': '会员', 'v': '6'}]}, {'key': 'year', 'name': '年代', 'value': [{'n': '全部', 'v': '-1'}, {'n': '2023', 'v': '2023'}, {'n': '2022', 'v': '2022'}, {'n': '2021', 'v': '2021'}, {'n': '2020', 'v': '2020'}, {'n': '2019', 'v': '2019'}, {'n': '2018', 'v': '2018'}, {'n': '2017', 'v': '2017'}, {'n': '2016', 'v': '2016'}, {'n': '2015', 'v': '2015'}]}]}, + headers:{ + 'User-Agent':'PC_UA' + }, + timeout:5000, + // class_parse:'.site_channel a;a&&Text;a&&href;channel/(.*)', + cate_exclude:'会员|游戏|全部', + class_name:'精选&电视剧&电影&综艺&动漫&少儿&纪录片', + class_url:'choice&tv&movie&variety&cartoon&child&doco', + limit:20, + // play_parse:true, + // 手动调用解析请求json的url,此lazy不方便 + lazy:'js:input="https://cache.json.icu/home/api?type=ys&uid=292796&key=fnoryABDEFJNPQV269&url="+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input', + 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + 一级:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + // 二级:{is_json:1,"title":"data.title;data.moviecategory[0]+data.moviecategory[1]","img":"data.cdncover","desc":"data.area[0];data.director[0]","content":"data.description","tabs":"data.playlink_sites;data.playlinksdetail.#idv.quality","lists":"data.playlinksdetail.#idv.default_url"}, + // 二级:{is_json:1,"title":"data.title;data.moviecategory[0]+data.moviecategory[1]","img":"data.cdncover","desc":"data.area[0];data.director[0]","content":"data.description","tabs":"data.playlink_sites","lists":"data.playlinksdetail.#idv.default_url"}, + 二级:'', + 二级:'js:VOD={};let d=[];let video_list=[];let video_lists=[];let list=[];let QZOutputJson;let html=fetch(input,fetch_params);let sourceId=/get_playsource/.test(input)?input.match(/id=(\\d*?)&/)[1]:input.split("cid=")[1];let cid=sourceId;let detailUrl="https://v.%71%71.com/detail/m/"+cid+".html";log("详情页:"+detailUrl);var pdfh=jsp.pdfh;var pd=jsp.pd;try{let json=JSON.parse(html);VOD={vod_url:input,vod_name:json.c.title,type_name:json.typ.join(","),vod_actor:json.nam.join(","),vod_year:json.c.year,vod_content:json.c.description,vod_remarks:json.rec,vod_pic:urljoin2(input,json.c.pic)}}catch(e){log("解析片名海报等基础信息发生错误:"+e.message)}if(/get_playsource/.test(input)){eval(html);let indexList=QZOutputJson.PlaylistItem.indexList;indexList.forEach(function(it){let dataUrl="https://s.video.qq.com/get_playsource?id="+sourceId+"&plat=2&type=4&data_type=3&range="+it+"&video_type=10&plname=qq&otype=json";eval(fetch(dataUrl,fetch_params));let vdata=QZOutputJson.PlaylistItem.videoPlayList;vdata.forEach(function(item){d.push({title:item.title,pic_url:item.pic,desc:item.episode_number+"\\t\\t\\t播放量:"+item.thirdLine,url:item.playUrl})});video_lists=video_lists.concat(vdata)})}else{let json=JSON.parse(html);video_lists=json.c.video_ids;let url="https://v.qq.com/x/cover/"+sourceId+".html";if(video_lists.length===1){let vid=video_lists[0];url="https://v.qq.com/x/cover/"+cid+"/"+vid+".html";d.push({title:"在线播放",url:url})}else if(video_lists.length>1){for(let i=0;i1?it1.category_map[1]:""})})})}}let yg=d.filter(function(it){return it.type&&it.type!=="正片"});let zp=d.filter(function(it){return!(it.type&&it.type!=="正片")});VOD.vod_play_from=yg.length<1?"qq":"qq$$$qq 预告及花絮";VOD.vod_play_url=yg.length<1?d.map(function(it){return it.title+"$"+it.url}).join("#"):[zp,yg].map(function(it){return it.map(function(its){return its.title+"$"+its.url}).join("#")}).join("$$$");', + // 二级:'js:VOD={};let d=[];let video_list=[];let video_lists=[];let list=[];let QZOutputJson;let html=fetch(input,fetch_params);let sourceId=/get_playsource/.test(input)?input.match(/id=(\\d*?)&/)[1]:input.split("cid=")[1];let cid=sourceId;let detailUrl="https://v.%71%71.com/detail/m/"+cid+".html";log("详情页:"+detailUrl);var pdfh=jsp.pdfh;var pd=jsp.pd;try{let json=JSON.parse(html);VOD={vod_url:input,vod_name:json.c.title,type_name:json.typ.join(","),vod_actor:json.nam.join(","),vod_year:json.c.year,vod_content:json.c.description,vod_remarks:json.rec,vod_pic:urljoin2(input,json.c.pic)}}catch(e){log("解析片名海报等基础信息发生错误:"+e.message)}if(/get_playsource/.test(input)){eval(html);let indexList=QZOutputJson.PlaylistItem.indexList;indexList.forEach(function(it){let dataUrl="https://s.video.qq.com/get_playsource?id="+sourceId+"&plat=2&type=4&data_type=3&range="+it+"&video_type=10&plname=qq&otype=json";eval(fetch(dataUrl,fetch_params));let vdata=QZOutputJson.PlaylistItem.videoPlayList;vdata.forEach(function(item){d.push({title:item.title,pic_url:item.pic,desc:item.episode_number+"\\t\\t\\t播放量:"+item.thirdLine,url:item.playUrl})});video_lists=video_lists.concat(vdata)})}else{let json=JSON.parse(html);video_lists=json.c.video_ids;let url="https://v.qq.com/x/cover/"+sourceId+".html";if(json.c.type===10){let dataUrl="https://s.video.qq.com/get_playsource?id="+json.c.column_id+"&plat=2&type=2&data_type=3&video_type=8&plname=qq&otype=json";let o_html=fetch(dataUrl,fetch_params);eval(o_html);video_lists=[];let indexList=QZOutputJson.PlaylistItem.indexList;indexList.forEach(function(it){let dataUrl="https://s.video.qq.com/get_playsource?id="+json.c.column_id+"&plat=2&type=4&data_type=3&range="+it+"&video_type=10&plname=qq&otype=json";eval(fetch(dataUrl,fetch_params));let vdata=QZOutputJson.PlaylistItem.videoPlayList;vdata.forEach(function(item){d.push({title:item.title,pic_url:item.pic,desc:item.episode_number+"\\t\\t\\t播放量:"+item.thirdLine,url:item.playUrl})});video_lists=video_lists.concat(vdata)})}else if(video_lists.length===1){d.push({title:"在线播放",url:url})}else if(video_lists.length>1){for(let i=0;i1?it1.category_map[1]:""})})})}}let yg=d.filter(function(it){return it.type&&it.type!=="正片"});let zp=d.filter(function(it){return!(it.type&&it.type!=="正片")});VOD.vod_play_from=yg.length<1?"qq":"qq$$$qq 预告及花絮";VOD.vod_play_url=yg.length<1?d.map(function(it){return it.title+"$"+it.url}).join("#"):[zp,yg].map(function(it){return it.map(function(its){return its.title+"$"+its.url}).join("#")}).join("$$$");', + // 搜索:'json:uiData;data[0].title;data[0].posterPic;.titleMarkLabelList[1].primeText;data[0].id;data[0].publishDate', + 搜索:'js:let d=[];pdfa=jsp.pdfa;pdfh=jsp.pdfh;pd=jsp.pd;let html=request(input);let baseList=pdfa(html,"body&&.result_item_v");baseList.forEach(function(it){let longText=pdfh(it,".result_title&&Text");let shortText=pdfh(it,".sub&&Text");let fromTag=pdfh(it,".result_source&&Text");let content=pdfh(it,".desc_text&&Text");let url=pdfh(it,".result_item_v&&r-data");let img=pd(it,".figure_pic&&src");url="https://node.video.qq.com/x/api/float_vinfo2?cid="+url.match(/.*\\/(.*?)\\.html/)[1];log(shortText+"|"+url);if(fromTag.match(/腾讯/)){d.push({title:longText.split(shortText)[0],img:img,url:url,content:content,desc:"⭐"+longText.split(shortText)[1]+"-"+shortText})}});setResult(d);', + // 搜索:'json:item;word;dc;class;id;sn', +} \ No newline at end of file diff --git a/香雅情/js/虎牙直播.js b/香雅情/js/虎牙直播.js new file mode 100644 index 0000000..84fdf48 --- /dev/null +++ b/香雅情/js/虎牙直播.js @@ -0,0 +1,98 @@ +var rule = { + title:'虎牙直播', + host:'https://www.huya.com', + homeUrl:'/cache.php?m=LiveList&do=getLiveListByPage&gameId=2168&tagAll=0&page=1',//用于"分类获取"和"推荐获取" + url:'/cache.php?m=LiveList&do=getLiveListByPage&gameId=fyfilter&tagAll=0&page=fypage', + class_name:'娱乐&网游&单机&手游', + class_url:'8&1&2&3', + detailUrl:'https://m.huya.com/fyid',//二级详情拼接链接(json格式用) + filterable: 1, + filter_url: '{{fl.cateId}}', + filter_def:{ + 8:{cateId:'2135'}, + 1:{cateId:'1'}, + 2:{cateId:'1732'}, + 3:{cateId:'2336'} + }, + filter:{ + 8:[{"key":"cateId","name":"分类","value":[{"n":"星秀","v":"1663"},{"n":"户外","v":"2165"},{"n":"一起看","v":"2135"},{"n":"二次元","v":"2633"},{"n":"虚拟偶像","v":"6055"},{"n":"旅游","v":"6791"},{"n":"放映厅","v":"6245"},{"n":"娱乐天地","v":"100022"},{"n":"交友","v":"4079"},{"n":"组队","v":"5367"},{"n":"吃喝玩乐","v":"100044"},{"n":"原创","v":"6861"},{"n":"虎牙文化","v":"4089"},{"n":"体育","v":"2356"},{"n":"虎牙地方","v":"5123"},{"n":"颜值","v":"2168"},{"n":"科技","v":"2408"},{"n":"音乐","v":"3793"},{"n":"趣分享","v":"5883"},{"n":"一起买","v":"7759"},{"n":"派对","v":"7785"}]}], + 1:[{"key":"cateId","name":"分类","value":[{"n":"英雄联盟","v":"1"},{"n":"CS2","v":"862"},{"n":"穿越火线","v":"4"},{"n":"lol云顶之弈","v":"5485"},{"n":"无畏契约","v":"5937"},{"n":"CFHD","v":"6079"},{"n":"逆战","v":"135"},{"n":"炉石传说","v":"393"},{"n":"DOTA2","v":"7"},{"n":"地下城与勇士","v":"2"},{"n":"魔兽世界","v":"8"},{"n":"坦克世界","v":"802"},{"n":"DOTA1","v":"6"},{"n":"梦三国","v":"489"},{"n":"魔兽争霸3","v":"4615"},{"n":"问道","v":"107"},{"n":"命运方舟","v":"3058"},{"n":"QQ飞车","v":"9"},{"n":"星际争霸","v":"5"},{"n":"网游竞技","v":"100023"},{"n":"射击综合游戏","v":"100141"},{"n":"暴雪专区","v":"100043"},{"n":"彩虹岛Online","v":"683"},{"n":"剑灵","v":"897"},{"n":"军事游戏","v":"100133"},{"n":"冒险岛","v":"2243"},{"n":"暗黑破坏神","v":"1123"},{"n":"诛仙3","v":"1646"},{"n":"热血江湖","v":"387"},{"n":"英魂之刃","v":"1830"},{"n":"武林外传一世琴缘","v":"1661"},{"n":"起凡:群雄逐鹿","v":"1612"},{"n":"神武4电脑版","v":"3227"},{"n":"龙之谷","v":"15"},{"n":"炉石战棋","v":"5751"},{"n":"御龙在天","v":"675"},{"n":"逆水寒","v":"2952"},{"n":"千年3","v":"878"},{"n":"永恒之塔","v":"446"},{"n":"体育游戏","v":"100135"},{"n":"寻仙","v":"734"},{"n":"战舰世界","v":"1947"},{"n":"QQ三国","v":"1090"},{"n":"流放之路","v":"427"},{"n":"反恐精英Online","v":"1918"},{"n":"反恐行动online","v":"861"},{"n":"征途","v":"2715"},{"n":"战争雷霆","v":"624"},{"n":"丝路传说2","v":"1026"},{"n":"星际战甲","v":"627"},{"n":"NBA2KOL系列","v":"3959"},{"n":"九阴真经","v":"1009"},{"n":"跑跑卡丁车","v":"162"},{"n":"诛仙世界","v":"7749"},{"n":"QQ华夏","v":"1878"},{"n":"天涯明月刀","v":"1219"},{"n":"大话西游:归来","v":"8239"},{"n":"荒野行动PC版","v":"3185"},{"n":"新剑侠情缘","v":"586"},{"n":"剑网3","v":"900"},{"n":"生死狙击2","v":"6091"},{"n":"全球使命","v":"939"},{"n":"梦想世界3","v":"486"},{"n":"枪神纪","v":"496"},{"n":"新天龙八部","v":"5671"},{"n":"铁甲雄兵","v":"2765"},{"n":"神泣","v":"2531"},{"n":"斗战神","v":"591"},{"n":"造梦西游OL","v":"6815"},{"n":"天堂","v":"1966"},{"n":"大话西游2","v":"2975"},{"n":"使命召唤:战区","v":"5911"},{"n":"希望OL","v":"1161"},{"n":"极光世界 弑神传","v":"514"},{"n":"守望先锋归来","v":"2174"},{"n":"QQ自由幻想","v":"1862"},{"n":"命运2","v":"2942"},{"n":"奇迹世界2","v":"766"},{"n":"坦克大战","v":"4359"},{"n":"生死狙击","v":"2471"},{"n":"天翼决","v":"779"},{"n":"QQ幻想","v":"2419"},{"n":"新飞飞(FlyFF)","v":"1582"},{"n":"刀剑英雄","v":"915"},{"n":"FIFA Online系列","v":"100079"},{"n":"全球使命3","v":"2953"},{"n":"完美端游系列","v":"3034"},{"n":"战意","v":"2599"},{"n":"泡泡堂","v":"440"},{"n":"赛尔号","v":"2755"},{"n":"大唐无双零","v":"1584"},{"n":"QQ炫舞","v":"2440"},{"n":"007:传奇","v":"1135"},{"n":"天下","v":"1597"},{"n":"天谕","v":"1899"},{"n":"新倩女幽魂","v":"1579"},{"n":"传世无双","v":"984"},{"n":"剑侠世界","v":"903"},{"n":"Warhaven","v":"9053"},{"n":"诺亚传说","v":"190"},{"n":"新挑战","v":"583"},{"n":"超激斗梦境","v":"5691"},{"n":"QQ音速","v":"1085"},{"n":"征途2","v":"677"},{"n":"征程","v":"678"},{"n":"蜀门","v":"4711"},{"n":"完美世界:诸神之战","v":"7217"},{"n":"战之刃:幸存者","v":"8627"},{"n":"黎明之光","v":"41"},{"n":"天命西游","v":"1086"},{"n":"炫舞时代","v":"3353"},{"n":"荣誉空间","v":"225"},{"n":"卡拉彼丘","v":"9073"},{"n":"成吉思汗怀旧版","v":"640"},{"n":"英雄年代3","v":"1232"},{"n":"天书奇谈","v":"2225"},{"n":"劲舞团","v":"2420"},{"n":"远征Online梦想版","v":"142"},{"n":"奇迹:传奇","v":"3917"},{"n":"封印者","v":"2294"},{"n":"上古世纪","v":"1046"},{"n":"梦幻诛仙2","v":"488"},{"n":"TERA Online","v":"1072"},{"n":"倚天Ⅱ","v":"959"},{"n":"街头篮球","v":"206"},{"n":"永恒轮回:无限","v":"7847"},{"n":"火线精英","v":"2550"},{"n":"忍者村大战2","v":"2369"},{"n":"领地人生","v":"2282"},{"n":"仙侠世界","v":"995"},{"n":"洛奇英雄传","v":"432"},{"n":"KARDS","v":"8261"},{"n":"无限法则","v":"3189"},{"n":"全面战争:竞技场","v":"5901"},{"n":"自由篮球","v":"243"},{"n":"FC Online4","v":"3683"},{"n":"战地之王","v":"618"},{"n":"古剑奇谭OL","v":"1892"},{"n":"QQ仙侠传","v":"2291"},{"n":"300英雄","v":"1132"}]}], + 2:[{"key":"cateId","name":"分类","value":[{"n":"天天吃鸡","v":"2793"},{"n":"永劫无间","v":"6219"},{"n":"主机游戏","v":"100032"},{"n":"猛兽派对","v":"6165"},{"n":"互动点播","v":"5907"},{"n":"我的世界","v":"1732"},{"n":"方舟","v":"1997"},{"n":"单机热游","v":"100002"},{"n":"怀旧游戏","v":"100125"},{"n":"逃离塔科夫","v":"3493"},{"n":"俄罗斯钓鱼4","v":"5495"},{"n":"部落:上升","v":"1318"},{"n":"Dark and Darker","v":"7905"},{"n":"The Front","v":"9497"},{"n":"Apex英雄","v":"5011"},{"n":"生化危机4重制版","v":"8013"},{"n":"DayZ独立版","v":"1125"},{"n":"星空","v":"7857"},{"n":"互动剧游","v":"6919"},{"n":"艾尔登法环","v":"5801"},{"n":"恐惧之间","v":"6679"},{"n":"SCUM","v":"4245"},{"n":"Dread Hunger","v":"7601"},{"n":"塞尔达传说:王国之泪","v":"7883"},{"n":"欧洲卡车模拟","v":"475"},{"n":"洛克王国","v":"2864"},{"n":"卧龙:苍天陨落","v":"7859"},{"n":"无人深空","v":"2566"},{"n":"帝国神话","v":"6821"},{"n":"饥荒","v":"74"},{"n":"森林之子","v":"7943"},{"n":"星球大战系列","v":"554"},{"n":"极限竞速:地平线","v":"2634"},{"n":"最终幻想16","v":"7869"},{"n":"Among Us","v":"6163"},{"n":"怪物猎人:崛起","v":"6479"},{"n":"怪物猎人物语","v":"7101"},{"n":"骑马与砍杀系列","v":"4783"},{"n":"荒野大镖客2","v":"4319"},{"n":"太荒初境","v":"7685"},{"n":"罗布乐思","v":"5771"},{"n":"只狼:影逝二度","v":"4505"},{"n":"双人成行","v":"6737"},{"n":"重生边缘","v":"6201"},{"n":"海贼王 寻秘世界","v":"5097"},{"n":"战神:诸神黄昏","v":"7771"},{"n":"恐鬼症","v":"6205"},{"n":"鬼谷八荒","v":"6571"},{"n":"霍格沃茨之遗","v":"7881"},{"n":"全面战争","v":"3521"},{"n":"仁王2","v":"5795"},{"n":"奥拉星","v":"2846"},{"n":"甜蜜之家","v":"6739"},{"n":"仙剑奇侠传七","v":"6509"},{"n":"消逝的光芒2","v":"7581"},{"n":"渡神记","v":"6231"},{"n":"归家异途","v":"2949"},{"n":"博德之门3","v":"6147"},{"n":"看门狗:军团","v":"6155"},{"n":"使命召唤系列","v":"100137"},{"n":"育碧游戏","v":"100139"},{"n":"帝国时代4","v":"4835"},{"n":"英灵神殿","v":"6609"},{"n":"蛮荒志异:起源","v":"9709"},{"n":"岛","v":"3019"},{"n":"沙盒与副本","v":"9151"},{"n":"扫雷","v":"2349"},{"n":"街机游戏","v":"5999"},{"n":"幽灵线:东京","v":"7669"},{"n":"怪物猎人世界","v":"3519"},{"n":"盗贼之海","v":"3641"},{"n":"纸人","v":"5257"},{"n":"黑色像素人","v":"28"},{"n":"对马岛之魂","v":"6039"},{"n":"瑞奇与叮当","v":"2455"},{"n":"港诡实录","v":"5853"},{"n":"剑士","v":"1467"},{"n":"魔法门之英雄无敌系列","v":"2096"},{"n":"星露谷物语","v":"2443"},{"n":"仙剑奇侠传四","v":"1659"},{"n":"伤害世界","v":"2337"},{"n":"禁闭求生","v":"6065"},{"n":"真三国无双","v":"1599"},{"n":"恐怖黎明","v":"3435"},{"n":"其他单机","v":"3069"},{"n":"幽灵行动:荒野","v":"2794"},{"n":"边缘","v":"151"},{"n":"阿凡达","v":"106"},{"n":"全面战争:三国","v":"3004"},{"n":"黎明之星","v":"40"},{"n":"翼星求生","v":"7463"},{"n":"黎明传说","v":"39"},{"n":"恶魔之魂","v":"6151"},{"n":"艾兰岛","v":"3855"},{"n":"龙与地下城:秘影历代记HD","v":"17"},{"n":"龙与地下城:匕首谷","v":"18"},{"n":"沙石镇时光","v":"7687"},{"n":"三国志曹操传","v":"2592"},{"n":"FIFA足球","v":"1888"},{"n":"最终幻想7:重制版","v":"5809"},{"n":"四海兄弟","v":"5995"},{"n":"最终幻想:起源","v":"7653"},{"n":"摔跤城大乱斗","v":"7773"},{"n":"音乐游戏","v":"2761"},{"n":"精灵与萤火意志","v":"5895"},{"n":"桥梁建造师","v":"3275"},{"n":"哈迪斯","v":"6153"},{"n":"小缇娜的奇幻之地","v":"7647"},{"n":"宝可梦:剑盾","v":"5715"},{"n":"边境","v":"4779"},{"n":"人类一败涂地","v":"3289"},{"n":"糖豆人:终极淘汰赛","v":"6083"},{"n":"精灵宝可梦Let's Go","v":"4375"},{"n":"战锤40K:暗潮","v":"3016"},{"n":"石油骚动","v":"2585"},{"n":"紫塞秋风","v":"6045"},{"n":"阿尔比恩","v":"8115"},{"n":"猎人:荒野的召唤","v":"2906"},{"n":"FIFA 23","v":"7789"},{"n":"都市:天际线","v":"2201"},{"n":"乐高大电影:游戏版","v":"1439"},{"n":"全面战争:阿提拉","v":"2383"},{"n":"斩妖行","v":"6105"},{"n":"马里奥赛车8","v":"5947"},{"n":"复仇者联盟","v":"6121"},{"n":"霓虹深渊","v":"5743"}]}], + 3:[{"key":"cateId","name":"分类","value":[{"n":"王者荣耀","v":"2336"},{"n":"和平精英","v":"3203"},{"n":"英雄联盟手游","v":"6203"},{"n":"CF手游","v":"2413"},{"n":"金铲铲之战","v":"7185"},{"n":"三国杀","v":"1669"},{"n":"原神","v":"5489"},{"n":"棋牌桌游","v":"100036"},{"n":"综合手游","v":"100029"},{"n":"劲乐幻想","v":"7691"},{"n":"新游广场","v":"100052"},{"n":"崩坏:星穹铁道","v":"7349"},{"n":"火影忍者手游","v":"2429"},{"n":"第五人格","v":"3115"},{"n":"问道手游","v":"2477"},{"n":"暗区突围","v":"7209"},{"n":"QQ飞车手游","v":"2928"},{"n":"球球大作战","v":"2411"},{"n":"明日之后","v":"3483"},{"n":"皇室战争","v":"2439"},{"n":"COD手游","v":"4769"},{"n":"手游休闲","v":"100004"},{"n":"二次元手游","v":"100091"},{"n":"摸了个鱼","v":"9283"},{"n":"MMORPG","v":"100273"},{"n":"动作游戏","v":"100197"},{"n":"战争冲突","v":"7449"},{"n":"王者模拟战","v":"5699"},{"n":"逆水寒手游","v":"7725"},{"n":"幻塔","v":"6437"},{"n":"欢乐斗地主","v":"1749"},{"n":"神武4手游","v":"3135"},{"n":"阴阳师","v":"2598"},{"n":"DNF手游","v":"4921"},{"n":"欢乐麻将","v":"1751"},{"n":"英雄联盟电竞经理","v":"7177"},{"n":"狼人杀手游","v":"100049"},{"n":"新天龙八部手游","v":"6945"},{"n":"中国象棋","v":"1671"},{"n":"天天象棋","v":"4997"},{"n":"传奇世界3D","v":"3961"},{"n":"御龙在天手游","v":"2568"},{"n":"高能英雄","v":"8359"},{"n":"天龙八部手游","v":"2852"},{"n":"三国志战略版","v":"5619"},{"n":"忍者必须死3","v":"4041"},{"n":"SKY光遇","v":"3719"},{"n":"虎牙领主争霸","v":"7529"},{"n":"云上城之歌","v":"5977"},{"n":"晶核","v":"7279"},{"n":"仙境传说RO","v":"2675"},{"n":"天天狼人","v":"2774"},{"n":"JJ棋牌","v":"3841"},{"n":"奇迹MU:觉醒","v":"3116"},{"n":"指尖四川麻将","v":"7215"},{"n":"部落冲突","v":"1797"},{"n":"新剑侠情缘手游","v":"6259"},{"n":"萌宠远征","v":"9385"},{"n":"暗黑破坏神:不朽","v":"6385"},{"n":"英雄杀","v":"2688"},{"n":"热血江湖手游","v":"2817"},{"n":"蛋仔派对","v":"6909"},{"n":"完美世界手游","v":"4237"},{"n":"巅峰战舰","v":"2502"},{"n":"狼人杀","v":"2785"},{"n":"斗罗大陆:魂师对决","v":"6745"},{"n":"武侠乂手游","v":"4929"},{"n":"诛仙手游","v":"2647"},{"n":"斗破苍穹手游","v":"4337"},{"n":"迷你世界","v":"2683"},{"n":"风云","v":"3061"},{"n":"妄想山海","v":"6007"},{"n":"曙光英雄","v":"6169"},{"n":"三国战纪2","v":"6049"},{"n":"梦幻新诛仙","v":"5975"},{"n":"黎明觉醒:生机","v":"6131"},{"n":"远征","v":"7837"},{"n":"航海王:燃烧意志","v":"3943"},{"n":"火炬之光:无限","v":"6399"},{"n":"巅峰极速","v":"6979"},{"n":"圣境之塔","v":"7055"},{"n":"魔力宝贝","v":"2891"},{"n":"香肠派对","v":"3639"},{"n":"创造与魔法","v":"2931"},{"n":"JJ斗地主","v":"6271"},{"n":"永恒纪元:戒","v":"2646"},{"n":"天涯明月刀手游","v":"5115"},{"n":"狼人杀官方","v":"3679"},{"n":"混沌起源","v":"5985"},{"n":"多多自走棋","v":"5133"},{"n":"梦幻诛仙手游","v":"2672"},{"n":"鸿图之下","v":"6027"},{"n":"新笑傲江湖","v":"5669"},{"n":"凡人修仙传:人界篇","v":"8297"},{"n":"多乐棋牌","v":"6209"},{"n":"口袋觉醒","v":"5953"},{"n":"跑跑卡丁车手游","v":"2620"},{"n":"奶块","v":"2775"},{"n":"月圆之夜","v":"4339"},{"n":"率土之滨","v":"2691"},{"n":"征途2手游","v":"2811"},{"n":"英魂之刃口袋版","v":"2760"},{"n":"精灵盛典:黎明","v":"6123"},{"n":"方舟手游","v":"4035"},{"n":"掼蛋","v":"6225"},{"n":"绝世仙王","v":"6619"},{"n":"流星群侠传","v":"3927"},{"n":"寻仙手游","v":"2979"},{"n":"一梦江湖","v":"3082"},{"n":"Lost Light(萤火突击国际服)","v":"6859"},{"n":"弹幕云游戏","v":"7001"},{"n":"猎魂觉醒","v":"3071"},{"n":"冒险岛:枫之传说","v":"8005"},{"n":"征途手游","v":"2556"},{"n":"海岛奇兵","v":"2624"},{"n":"倩女幽魂手游","v":"2503"},{"n":"超凡先锋","v":"6507"},{"n":"龙之谷2手游","v":"2736"},{"n":"崩坏3","v":"2639"},{"n":"猫和老鼠","v":"2758"},{"n":"七人传奇:光与暗之交战","v":"8125"},{"n":"JJ麻将","v":"9487"},{"n":"拉轰西游","v":"9543"},{"n":"三国战纪","v":"6047"},{"n":"自由幻想手游","v":"4015"},{"n":"秦时明月世界","v":"5279"},{"n":"新斗罗大陆","v":"6657"},{"n":"新神魔大陆","v":"5939"},{"n":"逃跑吧!少年","v":"4137"},{"n":"太古神王2","v":"6649"},{"n":"剑侠世界3","v":"7183"},{"n":"天天吃鸡手机版","v":"4341"},{"n":"时空猎人3","v":"6411"},{"n":"合金弹头:觉醒","v":"6931"},{"n":"明日方舟","v":"4925"},{"n":"原始征途","v":"7713"},{"n":"奇迹:最强者","v":"3215"},{"n":"天天酷跑","v":"1715"},{"n":"FC 足球世界","v":"3873"},{"n":"万国觉醒","v":"6159"},{"n":"机动都市阿尔法","v":"5411"},{"n":"航海王热血航线","v":"6181"},{"n":"幻世九歌","v":"7199"},{"n":"植物大战僵尸","v":"485"},{"n":"无悔华夏","v":"7063"},{"n":"时空猎人","v":"1742"},{"n":"荒野乱斗","v":"4613"},{"n":"拳皇98终极之战OL","v":"2687"},{"n":"蛇蛇争霸","v":"2680"},{"n":"王牌竞速","v":"6463"},{"n":"重返帝国","v":"6955"},{"n":"吞噬星空:黎明","v":"6651"},{"n":"口袋妖怪","v":"2541"},{"n":"QQ炫舞手游","v":"2991"},{"n":"一拳超人:最强之男","v":"4629"},{"n":"荣耀新三国","v":"6943"},{"n":"少年三国志2","v":"6125"},{"n":"我的起源","v":"5365"},{"n":"决战平安京","v":"3064"},{"n":"剑灵2","v":"7223"},{"n":"开心消消乐","v":"1712"},{"n":"小小蚁国","v":"7803"},{"n":"最强NBA","v":"2988"},{"n":"剑侠情缘手游","v":"2621"},{"n":"长安幻想","v":"6727"},{"n":"我叫MT4","v":"4087"},{"n":"全明星街球派对","v":"8401"},{"n":"大话西游手游","v":"2626"},{"n":"荣耀大天使","v":"6477"},{"n":"镇魂街:天生为王","v":"6557"},{"n":"摩尔庄园","v":"5981"},{"n":"游戏王:决斗链接","v":"4451"},{"n":"剑侠世界2手游","v":"3150"},{"n":"青云诀2","v":"6009"},{"n":"战地无疆","v":"7909"},{"n":"一念逍遥","v":"6419"},{"n":"永劫无间手游","v":"7579"},{"n":"尘白禁区","v":"7297"},{"n":"元梦之星","v":"9521"},{"n":"不良人3","v":"5891"},{"n":"剑灵:革命","v":"4545"},{"n":"魔力宝贝:旅人","v":"7573"},{"n":"米加小镇","v":"7269"},{"n":"龙武手游","v":"5219"},{"n":"斗罗大陆2:绝世唐门","v":"6581"},{"n":"西行纪燃魂","v":"8303"},{"n":"坦克世界闪击战","v":"4977"},{"n":"军棋","v":"2561"},{"n":"饥荒:新家","v":"6491"},{"n":"拳皇命运","v":"3379"},{"n":"实况足球","v":"3741"},{"n":"战舰世界闪击战","v":"4101"},{"n":"时空召唤","v":"2551"},{"n":"王牌战争:文明重启","v":"5479"},{"n":"雀魂麻将","v":"7107"},{"n":"欢乐升级","v":"3925"},{"n":"绿色征途","v":"4227"},{"n":"弹弹堂手游","v":"2857"},{"n":"太极熊猫3:猎龙","v":"2778"},{"n":"哈利波特:魔法觉醒","v":"5835"},{"n":"天地劫:幽城再临","v":"5987"},{"n":"热血街篮","v":"5859"},{"n":"神雕侠侣手游","v":"1781"},{"n":"山海镜花","v":"5089"},{"n":"三国志战棋版","v":"7937"},{"n":"神雕侠侣2","v":"4209"},{"n":"仙魔决","v":"1674"},{"n":"王者荣耀星之破晓","v":"7927"},{"n":"我在江湖之神魔道","v":"7699"},{"n":"梦幻模拟战","v":"3481"},{"n":"单机手游","v":"2777"},{"n":"斗罗大陆-斗神再临","v":"6631"},{"n":"未来之役","v":"6831"},{"n":"风云岛行动","v":"4695"},{"n":"新游推荐","v":"3160"},{"n":"火影忍者OL","v":"3901"},{"n":"九灵神域","v":"7719"},{"n":"武动乾坤","v":"3829"},{"n":"秦时明月2","v":"1784"},{"n":"文明与征服","v":"7071"},{"n":"战双:帕弥什","v":"4133"},{"n":"大航海时代:海上霸主","v":"6929"},{"n":"剑网1:归来","v":"7361"},{"n":"绝区零","v":"7711"},{"n":"黑色沙漠手游","v":"7287"},{"n":"虎牙吃鸡","v":"7465"},{"n":"一剑斩仙","v":"6843"},{"n":"传奇天下","v":"6927"},{"n":"斗斗堂","v":"7133"},{"n":"斗罗大陆","v":"6119"},{"n":"天谕手游","v":"5925"},{"n":"坎公骑冠剑","v":"6641"},{"n":"最终幻想觉醒","v":"2721"},{"n":"神将三国","v":"6621"},{"n":"灌篮高手正版授权手游","v":"5399"},{"n":"剑与家园","v":"2838"},{"n":"极无双2","v":"7825"},{"n":"光明大陆","v":"2832"},{"n":"荒野行动","v":"3084"},{"n":"战斗法则","v":"9513"},{"n":"疯狂原始人","v":"4619"},{"n":"逆战手游","v":"7575"},{"n":"石器时代:觉醒","v":"9159"}]}] + }, + searchUrl:'https://search.cdn.huya.com/?m=Search&do=getSearchContent&q=**&uid=0&v=4&typ=-5&livestate=0&rows=40&start=0', + searchable:2, + quickSearch:0, + headers:{ + 'User-Agent':'MOBILE_UA' + }, + timeout:5000, + limit:8, + play_parse:true, + lazy:`js: + let rid = input.match(/\\/ (\\d + ) / )[1]; + function getRealUrl(live_url) { + let [i, b] = live_url.split('?'); + let r = i.split('/').pop(); + let s = r.replace(/\.(flv|m3u8)/, ''); + let c_tmp = b.split('&').filter(n => n); + let n = {}; + let c_tmp2 = []; + c_tmp.forEach(function(tmp, index) { + if (index < 3) { + n[tmp.split('=')[0]] = tmp.split('=')[1] + } else { + c_tmp2.push(tmp) + } + }); + let tmp2 = c_tmp2.join('&'); + n[tmp2.split('=')[0]] = tmp2.split('=')[1]; + let fm = decodeURIComponent(n.fm).split('&')[0]; + let u = base64Decode(fm); + let p = u.split('_')[0]; + let f = new Date().getTime() + '0000'; + let ll = n.wsTime; + let t = '0'; + let h = [p, t, s, f, ll].join('_'); + let m = md5(h); + return (i + '?wsSecret=' + m + '&wsTime=' + ll + '&u=' + t + '&seqid=' + f + '&' + c_tmp2.pop()).replace('hls', 'flv').replace('m3u8', 'flv') + } + let purl = JSON.parse(request('https://mp.huya.com/cache.php?m=Live&do=profileRoom&roomid=' + rid)).data.stream.flv.multiLine[0].url; + input = { + jx: 0, + url: getRealUrl(purl), + parse: 0, + header: JSON.stringify({ + 'user-agent': 'Mozilla/5.0' + }) + } + `, + 推荐:`js: + let d = []; + let jo = JSON.parse(request(input)).data.datas; + jo.forEach(it => { + d.push({ + url: it.profileRoom, + title: it.introduction, + img: it.screenshot, + desc: '👁' + it.totalCount + ' 🆙' + it.nick, + }) + }); + setResult(d); + `, + 一级:`js: + let d = []; + let jo = JSON.parse(request(input)).data.datas; + jo.forEach(it => { + d.push({ + url: it.profileRoom, + title: it.introduction, + img: it.screenshot, + desc: '👁' + it.totalCount + ' 🆙' + it.nick, + }) + }); + setResult(d); + `, + 二级:'*', + 搜索:'json:response.3.docs;game_roomName;game_screenshot;game_nick;room_id', +} \ No newline at end of file diff --git a/香雅情/json/Bili.json b/香雅情/json/Bili.json new file mode 100644 index 0000000..e605bab --- /dev/null +++ b/香雅情/json/Bili.json @@ -0,0 +1,1550 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "搞笑", + "type_id": "搞笑" + }, + { + "type_name": "鬼畜", + "type_id": "鬼畜" + }, + { + "type_name": "Sports", + "type_id": "球星" + }, + { + "type_name": "戏曲", + "type_id": "戏曲" + }, + { + "type_name": "演唱会", + "type_id": "演唱会" + }, + { + "type_name": "动物世界", + "type_id": "动物世界" + }, + { + "type_name": "假窗白噪音", + "type_id": "窗白噪音" + }, + { + "type_name": "相声小品", + "type_id": "相声小品" + }, + { + "type_name": "儿童", + "type_id": "儿童" + }, + {"type_name":"经典合集","type_id":"经典无损音乐合集"}, + {"type_name":"粤语","type_id":"粤语歌曲超清"}, + {"type_name":"热榜","type_id":"2022年热们歌曲"}, + {"type_name":"经典","type_id":"经典老歌"}, + {"type_name":"古风","type_id":"古风歌曲"}, + {"type_name":"闽南","type_id":"闽南语歌曲"}, + {"type_name":"舞曲","type_id":"DJ歌曲"}, + {"type_name":"翻唱","type_id":"网红翻唱歌曲"}, + {"type_name":"音乐","type_id":"音乐 4k"}, + +{"type_name":"阿黛尔","type_id":"阿黛尔演唱会超清超清"}, +{"type_name":"Blackpink","type_id":"blackpink演唱会超清"}, +{"type_name":"Beyond","type_id":"beyond演唱会超清"}, +{"type_name":"坂井泉水","type_id":"坂井泉水演唱会超清"}, +{"type_name":"宝丽金","type_id":"宝丽金演唱会超清"}, +{"type_name":"布兰妮","type_id":"布兰妮演唱会超清"}, +{"type_name":"陈瑞","type_id":"陈瑞演唱会超清"}, +{"type_name":"陈奕迅","type_id":"陈奕迅演唱会超清"}, +{"type_name":"崔健","type_id":"催件演唱会超清"}, +{"type_name":"Coldplay","type_id":"coldplay演唱会超清"}, +{"type_name":"陈慧娴","type_id":"陈慧娴演唱会超清"}, +{"type_name":"陈百强","type_id":"陈百强演唱会超清"}, +{"type_name":"陈淑桦","type_id":"陈淑桦演唱会超清"}, +{"type_name":"陈慧琳","type_id":"陈慧琳演唱会超清"}, +{"type_name":"邓丽君","type_id":"邓丽君演唱会超清"}, +{"type_name":"邓紫棋","type_id":"邓紫棋演唱会超清"}, +{"type_name":"刀郎","type_id":"刀郎演唱会超清"}, +{"type_name":"达明一派","type_id":"刘以达歌曲"}, +{"type_name":"费玉清","type_id":"费玉清演唱会超清"}, +{"type_name":"谷村新司","type_id":"谷村新司演唱会超清"}, +{"type_name":"郭富城","type_id":"郭富城演唱会超清"}, +{"type_name":"邰正宵","type_id":"邰正宵演唱会超清"}, +{"type_name":"关淑怡","type_id":"关淑怡演唱会超清"}, +{"type_name":"黄凯芹","type_id":"黄凯芹演唱会超清"}, +{"type_name":"黑豹乐队","type_id":"H黑豹乐队"}, +{"type_name":"降央卓玛","type_id":"降央卓玛演唱会超清"}, +{"type_name":"江慧","type_id":"江慧歌曲"}, +{"type_name":"吉永小百合","type_id":"吉永小百合歌曲"}, +{"type_name":"金庸","type_id":"金庸影视歌曲"}, +{"type_name":"刘德华","type_id":"刘德华演唱会超清"}, +{"type_name":"Lady Gaga","type_id":"Lady Gaga演唱会超清"}, +{"type_name":"龙飘飘","type_id":"龙飘飘演唱会超清"}, +{"type_name":"罗百吉","type_id":"罗百吉演唱会超清"}, +{"type_name":"罗大佑","type_id":"罗大佑演唱会超清"}, +{"type_name":"林志炫","type_id":"林志炫演唱会超清"}, +{"type_name":"林忆莲","type_id":"林忆莲演唱会超清"}, +{"type_name":"李知恩","type_id":"李知恩演唱会超清"}, +{"type_name":"梁静茹","type_id":"梁静茹演唱会超清"}, +{"type_name":"冷漠","type_id":"冷漠演唱会超清"}, +{"type_name":"李克勤","type_id":"李克勤演唱会超清"}, +{"type_name":"林子祥","type_id":"林子祥演唱会超清"}, +{"type_name":"黎明","type_id":"黎明演唱会超清"}, +{"type_name":"刘若英","type_id":"刘若英演唱会超清"}, +{"type_name":"McHotdog","type_id":"MC Hotdog演唱会超清"}, +{"type_name":"莫文蔚","type_id":"莫文蔚演唱会超清"}, +{"type_name":"孟庭苇","type_id":"孟庭苇演唱会超清"}, +{"type_name":"麦当娜","type_id":"麦当娜演唱会超清"}, +{"type_name":"迈克杰克逊","type_id":"迈克杰克逊演唱会超清"}, +{"type_name":"雅尼紫禁城","type_id":"雅尼紫禁城演唱会超清"}, +{"type_name":"潘越云","type_id":"潘越云演唱会超清"}, +{"type_name":"潘美辰","type_id":"潘美辰演唱会超清"}, +{"type_name":"齐秦","type_id":"齐秦演唱会超清"}, +{"type_name":"祁美云","type_id":"祁美云演唱会超清"}, +{"type_name":"任贤齐","type_id":"任贤齐演唱会超清"}, +{"type_name":"苏慧伦","type_id":"苏慧伦演唱会超清"}, +{"type_name":"唐朝乐队","type_id":"唐朝乐队"}, +{"type_name":"童安格","type_id":"童安格演唱会超清"}, +{"type_name":"TFBOYS","type_id":"TFBOYS演唱会超清"}, +{"type_name":"太极乐队","type_id":"太极乐队演唱会超清"}, +{"type_name":"唐朝摇滚","type_id":"唐朝摇滚演唱会超清"}, +{"type_name":"谭咏麟","type_id":"谭咏麟演唱会超清"}, +{"type_name":"王琪","type_id":"王琪歌曲"}, +{"type_name":"伍珂玥","type_id":"伍珂玥演唱会超清"}, +{"type_name":"王杰","type_id":"王杰演唱会超清"}, +{"type_name":"伍佰","type_id":"伍佰演唱会超清"}, +{"type_name":"温兆伦","type_id":"温兆伦演唱会超清"}, +{"type_name":"王菲","type_id":"王菲演唱会超清"}, +{"type_name":"熊天平","type_id":"熊天平演唱会超清"}, +{"type_name":"徐小凤","type_id":"徐小凤演唱会超清"}, +{"type_name":"席琳迪翁","type_id":"席琳迪翁演唱会超清"}, +{"type_name":"许嵩","type_id":"黄许嵩演唱会超清"}, +{"type_name":"许美静","type_id":"许美静演唱会超清"}, +{"type_name":"许冠杰","type_id":"许冠杰演唱会超清"}, +{"type_name":"小虎队","type_id":"小虎队演唱会超清"}, +{"type_name":"许巍","type_id":"许巍演唱会超清"}, +{"type_name":"叶启田","type_id":"叶启田演唱会超清"}, +{"type_name":"叶玉卿","type_id":"叶玉卿演唱会超清"}, +{"type_name":"杨千嬅","type_id":"杨千嬅演唱会超清"}, +{"type_name":"左麟右李","type_id":"左麟右李演唱会超清"}, +{"type_name":"赵传","type_id":"赵传演唱会超清"}, +{"type_name":"周华健","type_id":"周华健演唱会超清"}, +{"type_name":"周启生","type_id":"周启生演唱会超清"}, +{"type_name":"张信哲","type_id":"张信哲演唱会超清"}, +{"type_name":"周慧敏","type_id":"周慧敏演唱会超清"}, +{"type_name":"张碧晨","type_id":"张碧晨演唱会超清"}, +{"type_name":"中岛美雪","type_id":"中岛美雪演唱会超清"}, +{"type_name":"张学友","type_id":"张学友演唱会超清"}, +{"type_name":"猪哥亮","type_id":"猪哥亮歌曲"}, +{"type_name":"周杰伦","type_id":"周杰伦演唱会超清"}, +{"type_name":"周深","type_id":"周深演唱会超清"}, +{"type_name":"张蔷","type_id":"张蔷演唱会超清"}, +{"type_name":"张帝","type_id":"张帝演唱会超清"}, +{"type_name":"张国荣","type_id":"张国荣演唱会超清"}, +{"type_name":"郑钧","type_id":"郑钧演唱会超清"}, +{"type_name":"张楚","type_id":"张楚演唱会超清"}, +{"type_name":"张真","type_id":"张真演唱会超清"}, +{"type_name":"赵传","type_id":"赵传演唱会超清"}, +{"type_name":"周传雄","type_id":"周传雄演唱会超清"} + + ], + "filter": { + "搞笑": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "鬼畜": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "球星": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "球星" + }, + { + "n": "梅西", + "v": "梅西" + }, + { + "n": "C罗", + "v": "C罗" + }, + { + "n": "天下足球", + "v": "天下足球" + }, + { + "n": "罗纳尔多", + "v": "罗纳尔多" + }, + { + "n": "亨利", + "v": "亨利" + }, + { + "n": "小罗", + "v": "小罗" + }, + { + "n": "齐达内", + "v": "齐达内" + }, + { + "n": "贝克汉姆", + "v": "贝克汉姆" + }, + { + "n": "内马尔", + "v": "内马尔" + }, + { + "n": "德布劳内", + "v": "德布劳内" + }, + { + "n": "欧冠", + "v": "欧冠" + }, + { + "n": "世界杯", + "v": "世界杯" + }, + { + "n": "西甲", + "v": "西甲" + }, + { + "n": "英超", + "v": "英超" + }, + { + "n": "意甲", + "v": "意甲" + }, + { + "n": "德甲", + "v": "德甲" + }, + { + "n": "国米", + "v": "国米" + }, + { + "n": "皇马", + "v": "皇马" + }, + { + "n": "巴萨", + "v": "巴萨" + }, + { + "n": "巴黎圣日耳曼", + "v": "巴黎圣日耳曼" + }, + { + "n": "曼联", + "v": "曼联" + }, + { + "n": "曼城", + "v": "曼城" + }, + { + "n": "NBA", + "v": "NBA" + }, + { + "n": "詹姆斯", + "v": "詹姆斯" + }, + { + "n": "库里", + "v": "库里" + }, + { + "n": "杜兰特", + "v": "杜兰特" + }, + { + "n": "UFC", + "v": "UFC" + }, + { + "n": "斯诺克", + "v": "斯诺克" + }, + { + "n": "网球", + "v": "网球" + }, + { + "n": "F1", + "v": "F1" + }, + { + "n": "高尔夫", + "v": "高尔夫" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "相声小品": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "相声小品" + }, + { + "n": "单口相声", + "v": "单口相声" + }, + { + "n": "群口相声", + "v": "群口相声" + }, + { + "n": "德云社", + "v": "德云社" + }, + { + "n": "青曲社", + "v": "青曲社" + }, + { + "n": "郭德纲", + "v": "郭德纲" + }, + { + "n": "岳云鹏", + "v": "岳云鹏" + }, + { + "n": "曹云金", + "v": "曹云金" + }, + { + "n": "评书", + "v": "评书" + }, + { + "n": "小曲", + "v": "小曲" + }, + { + "n": "二人转", + "v": "二人转" + }, + { + "n": "春晚小品", + "v": "春晚小品" + }, + { + "n": "赵本山", + "v": "赵本山" + }, + { + "n": "陈佩斯", + "v": "陈佩斯" + }, + { + "n": "冯巩", + "v": "冯巩" + }, + { + "n": "宋小宝", + "v": "宋小宝" + }, + { + "n": "赵丽蓉", + "v": "赵丽蓉" + }, + { + "n": "郭达", + "v": "郭达" + }, + { + "n": "潘长江", + "v": "潘长江" + }, + { + "n": "郭冬临", + "v": "郭冬临" + }, + { + "n": "严顺开", + "v": "严顺开" + }, + { + "n": "文松", + "v": "文松" + }, + { + "n": "开心麻花", + "v": "开心麻花" + }, + { + "n": "屌丝男士", + "v": "屌丝男士" + }, + { + "n": "喜剧综艺", + "v": "喜剧综艺" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "儿童" + }, + { + "n": "教育", + "v": "儿童教育" + }, + { + "n": "歌曲", + "v": "儿童歌曲" + }, + { + "n": "舞蹈", + "v": "儿童舞蹈" + }, + { + "n": "成语故事", + "v": "儿童成语故事" + }, + { + "n": "音乐", + "v": "儿童音乐" + }, + { + "n": "儿童MV", + "v": "儿童MV" + }, + { + "n": "贝乐虎", + "v": "贝乐虎" + }, + { + "n": "宝宝巴士", + "v": "宝宝巴士" + }, + { + "n": "儿童好声音", + "v": "儿童好声音" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "动物世界": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "戏曲": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "戏曲" + }, + { + "n": "京剧", + "v": "京剧" + }, + { + "n": "越剧", + "v": "越剧" + }, + { + "n": "黄梅戏", + "v": "黄梅戏" + }, + { + "n": "评剧", + "v": "评剧" + }, + { + "n": "豫剧", + "v": "豫剧" + }, + { + "n": "昆曲", + "v": "昆曲" + }, + { + "n": "高腔", + "v": "高腔" + }, + { + "n": "梆子腔", + "v": "梆子腔" + }, + { + "n": "河北梆子", + "v": "河北梆子" + }, + { + "n": "晋剧", + "v": "晋剧" + }, + { + "n": "蒲剧", + "v": "蒲剧" + }, + { + "n": "雁剧", + "v": "雁剧" + }, + { + "n": "上党梆子", + "v": "上党梆子" + }, + { + "n": "秦腔", + "v": "秦腔" + }, + { + "n": "武安平调", + "v": "武安平调" + }, + { + "n": "二人台", + "v": "二人台" + }, + { + "n": "吉剧", + "v": "吉剧" + }, + { + "n": "龙江剧", + "v": "龙江剧" + }, + { + "n": "越调", + "v": "越调" + }, + { + "n": "河南曲剧", + "v": "河南曲剧" + }, + { + "n": "山东梆子", + "v": "山东梆子" + }, + { + "n": "淮剧", + "v": "淮剧" + }, + { + "n": "沪剧", + "v": "沪剧" + }, + { + "n": "滑稽戏", + "v": "滑稽戏" + }, + { + "n": "婺剧", + "v": "婺剧" + }, + { + "n": "绍剧", + "v": "绍剧" + }, + { + "n": "徽剧", + "v": "徽剧" + }, + { + "n": "闽剧", + "v": "闽剧" + }, + { + "n": "莆仙戏", + "v": "莆仙戏" + }, + { + "n": "梨园戏", + "v": "梨园戏" + }, + { + "n": "高甲戏", + "v": "高甲戏" + }, + { + "n": "赣剧", + "v": "赣剧" + }, + { + "n": "采茶戏", + "v": "采茶戏" + }, + { + "n": "汉剧", + "v": "汉剧" + }, + { + "n": "湘剧", + "v": "湘剧" + }, + { + "n": "祁剧", + "v": "祁剧" + }, + { + "n": "湖南花鼓戏", + "v": "湖南花鼓戏" + }, + { + "n": "粤剧", + "v": "粤剧" + }, + { + "n": "潮剧", + "v": "潮剧" + }, + { + "n": "桂剧", + "v": "桂剧" + }, + { + "n": "彩调", + "v": "彩调" + }, + { + "n": "壮剧", + "v": "壮剧" + }, + { + "n": "川剧", + "v": "川剧" + }, + { + "n": "黔剧", + "v": "黔剧" + }, + { + "n": "滇剧", + "v": "滇剧" + }, + { + "n": "傣剧", + "v": "傣剧" + }, + { + "n": "藏剧", + "v": "藏剧" + }, + { + "n": "皮影戏", + "v": "皮影戏" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "窗白噪音": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "演唱会": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "演唱会" + }, + { + "n": "周杰伦", + "v": "周杰伦" + }, + { + "n": "陈奕迅", + "v": "陈奕迅" + }, + { + "n": "Beyond", + "v": "Beyond" + }, + { + "n": "刘德华", + "v": "刘德华" + }, + { + "n": "郭富城", + "v": "郭富城" + }, + { + "n": "张学友", + "v": "张学友" + }, + { + "n": "黎明", + "v": "黎明" + }, + { + "n": "李宗盛", + "v": "李宗盛" + }, + { + "n": "邓丽君", + "v": "邓丽君" + }, + { + "n": "朴树", + "v": "朴树" + }, + { + "n": "林子祥", + "v": "林子祥" + }, + { + "n": "任贤齐", + "v": "任贤齐" + }, + { + "n": "张信哲", + "v": "张信哲" + }, + { + "n": "孙楠", + "v": "孙楠" + }, + { + "n": "张宇", + "v": "张宇" + }, + { + "n": "周华健", + "v": "周华健" + }, + { + "n": "蔡依林", + "v": "蔡依林" + }, + { + "n": "薛之谦", + "v": "薛之谦" + }, + { + "n": "洛天依", + "v": "洛天依" + }, + { + "n": "初音未来", + "v": "初音未来" + }, + { + "n": "许嵩", + "v": "许嵩" + }, + { + "n": "戴佩妮", + "v": "戴佩妮" + }, + { + "n": "邓紫棋", + "v": "邓紫棋" + }, + { + "n": "张韶涵", + "v": "张韶涵" + }, + { + "n": "蔡健雅", + "v": "蔡健雅" + }, + { + "n": "莫文蔚", + "v": "莫文蔚" + }, + { + "n": "刘若英", + "v": "刘若英" + }, + { + "n": "周深", + "v": "周深" + }, + { + "n": "毛不易", + "v": "毛不易" + }, + { + "n": "汪苏泷", + "v": "汪苏泷" + }, + { + "n": "李宇春", + "v": "李宇春" + }, + { + "n": "徐佳莹", + "v": "徐佳莹" + }, + { + "n": "杨宗纬", + "v": "杨宗纬" + }, + { + "n": "胡彦斌", + "v": "胡彦斌" + }, + { + "n": "杨千嬅", + "v": "杨千嬅" + }, + { + "n": "张靓颖", + "v": "张靓颖" + }, + { + "n": "李荣浩", + "v": "李荣浩" + }, + { + "n": "杨丞琳", + "v": "杨丞琳" + }, + { + "n": "林志炫", + "v": "林志炫" + }, + { + "n": "陶喆", + "v": "陶喆" + }, + { + "n": "胡夏", + "v": "胡夏" + }, + { + "n": "李玉刚", + "v": "李玉刚" + }, + { + "n": "弦子", + "v": "弦子" + }, + { + "n": "陈小春", + "v": "陈小春" + }, + { + "n": "萧亚轩", + "v": "萧亚轩" + }, + { + "n": "鹿晗", + "v": "鹿晗" + }, + { + "n": "纵贯线", + "v": "纵贯线" + }, + { + "n": "许巍", + "v": "许巍" + }, + { + "n": "林俊杰", + "v": "林俊杰" + }, + { + "n": "赵雷", + "v": "赵雷" + }, + { + "n": "谭咏麟", + "v": "谭咏麟" + }, + { + "n": "凤凰传奇", + "v": "凤凰传奇" + }, + { + "n": "容祖儿", + "v": "容祖儿" + }, + { + "n": "周传雄", + "v": "周传雄" + }, + { + "n": "SHE", + "v": "SHE" + }, + { + "n": "苏打绿", + "v": "苏打绿" + }, + { + "n": "五月天", + "v": "五月天" + }, + { + "n": "张国荣", + "v": "张国荣" + }, + { + "n": "梅艳芳", + "v": "梅艳芳" + }, + { + "n": "孙燕姿", + "v": "孙燕姿" + }, + { + "n": "李健", + "v": "李健" + }, + { + "n": "华晨宇", + "v": "华晨宇" + }, + { + "n": "袁娅维", + "v": "袁娅维" + }, + { + "n": "大张伟", + "v": "大张伟" + }, + { + "n": "TFBOYS", + "v": "TFBOYS" + }, + { + "n": "王俊凯", + "v": "王俊凯" + }, + { + "n": "易烊千玺", + "v": "易烊千玺" + }, + { + "n": "王源", + "v": "王源" + }, + { + "n": "田馥甄", + "v": "田馥甄" + }, + { + "n": "小虎队", + "v": "小虎队" + }, + { + "n": "张杰", + "v": "张杰" + }, + { + "n": "王菲", + "v": "王菲" + }, + { + "n": "伍佰", + "v": "伍佰" + }, + { + "n": "刀郎", + "v": "刀郎" + }, + { + "n": "草蜢", + "v": "草蜢" + }, + { + "n": "潘玮柏", + "v": "潘玮柏" + }, + { + "n": "梁静茹", + "v": "梁静茹" + }, + { + "n": "林宥嘉", + "v": "林宥嘉" + }, + { + "n": "蔡徐坤", + "v": "蔡徐坤" + }, + { + "n": "周慧敏", + "v": "周慧敏" + }, + { + "n": "李圣杰", + "v": "李圣杰" + }, + { + "n": "张惠妹", + "v": "张惠妹" + }, + { + "n": "萧敬腾", + "v": "萧敬腾" + }, + { + "n": "周笔畅", + "v": "周笔畅" + }, + { + "n": "焦迈奇", + "v": "焦迈奇" + }, + { + "n": "尤长靖", + "v": "尤长靖" + }, + { + "n": "郑中基", + "v": "郑中基" + }, + { + "n": "谭维维", + "v": "谭维维" + }, + { + "n": "陈慧娴", + "v": "陈慧娴" + }, + { + "n": "张艺兴", + "v": "张艺兴" + }, + { + "n": "王嘉尔", + "v": "王嘉尔" + }, + { + "n": "刘宪华", + "v": "刘宪华" + }, + { + "n": "张敬轩", + "v": "张敬轩" + }, + { + "n": "李克勤", + "v": "李克勤" + }, + { + "n": "阿杜", + "v": "阿杜" + }, + { + "n": "郭静", + "v": "郭静" + }, + { + "n": "崔健", + "v": "崔健" + }, + { + "n": "庾澄庆", + "v": "庾澄庆" + }, + { + "n": "汪峰", + "v": "汪峰" + }, + { + "n": "那英", + "v": "那英" + }, + { + "n": "杨坤", + "v": "杨坤" + }, + { + "n": "叶倩文", + "v": "叶倩文" + }, + { + "n": "王心凌", + "v": "王心凌" + }, + { + "n": "张震岳", + "v": "张震岳" + }, + { + "n": "韩红", + "v": "韩红" + }, + { + "n": "齐秦", + "v": "齐秦" + }, + { + "n": "张雨生", + "v": "张雨生" + }, + { + "n": "黄品源", + "v": "黄品源" + }, + { + "n": "林忆莲", + "v": "林忆莲" + }, + { + "n": "丁当", + "v": "丁当" + }, + { + "n": "郑智化", + "v": "郑智化" + }, + { + "n": "李玟", + "v": "李玟" + }, + { + "n": "谢霆锋", + "v": "谢霆锋" + }, + { + "n": "黄小琥", + "v": "黄小琥" + }, + { + "n": "徐小凤", + "v": "徐小凤" + }, + { + "n": "任嘉伦", + "v": "任嘉伦" + }, + { + "n": "卓依婷", + "v": "卓依婷" + }, + { + "n": "逃跑计划", + "v": "逃跑计划" + }, + { + "n": "青鸟飞鱼", + "v": "青鸟飞鱼" + }, + { + "n": "飞儿乐队", + "v": "飞儿乐队" + }, + { + "n": "花儿乐队", + "v": "花儿乐队" + }, + { + "n": "南拳妈妈", + "v": "南拳妈妈" + }, + { + "n": "水木年华", + "v": "水木年华" + }, + { + "n": "动力火车", + "v": "动力火车" + }, + { + "n": "筷子兄弟", + "v": "筷子兄弟" + }, + { + "n": "鹿先森乐队", + "v": "鹿先森乐队" + }, + { + "n": "信乐队", + "v": "信乐队" + }, + { + "n": "旅行团乐队", + "v": "旅行团乐队" + }, + { + "n": "By2", + "v": "By2" + }, + { + "n": "郁可唯", + "v": "郁可唯" + }, + { + "n": "宋亚森", + "v": "宋亚森" + }, + { + "n": "费玉清", + "v": "费玉清" + }, + { + "n": "费翔", + "v": "费翔" + }, + { + "n": "金志文", + "v": "金志文" + }, + { + "n": "黄家强", + "v": "黄家强" + }, + { + "n": "方大同", + "v": "方大同" + }, + { + "n": "吴克群", + "v": "吴克群" + }, + { + "n": "罗大佑", + "v": "罗大佑" + }, + { + "n": "光良", + "v": "光良" + }, + { + "n": "田震", + "v": "田震" + }, + { + "n": "凤飞飞", + "v": "凤飞飞" + }, + { + "n": "谭晶", + "v": "谭晶" + }, + { + "n": "王杰", + "v": "王杰" + }, + { + "n": "羽泉", + "v": "羽泉" + }, + { + "n": "金池", + "v": "金池" + }, + { + "n": "屠洪刚", + "v": "屠洪刚" + }, + { + "n": "戴荃", + "v": "戴荃" + }, + { + "n": "郭采洁", + "v": "郭采洁" + }, + { + "n": "罗志祥", + "v": "罗志祥" + }, + { + "n": "王力宏", + "v": "王力宏" + }, + { + "n": "林肯公园", + "v": "林肯公园" + }, + { + "n": "迈克尔杰克逊", + "v": "迈克尔杰克逊" + }, + { + "n": "泰勒·斯威夫特", + "v": "泰勒·斯威夫特" + }, + { + "n": "阿黛尔", + "v": "阿黛尔" + }, + { + "n": "BIGBANG", + "v": "BIGBANG" + }, + { + "n": "LadyGaga", + "v": "LadyGaga" + }, + { + "n": "贾斯丁比伯", + "v": "贾斯丁比伯" + }, + { + "n": "中岛美雪", + "v": "中岛美雪" + }, + { + "n": "仓木麻衣", + "v": "仓木麻衣" + }, + { + "n": "后街男孩", + "v": "后街男孩" + }, + { + "n": "布兰妮", + "v": "布兰妮" + }, + { + "n": "夜愿乐队", + "v": "夜愿乐队" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/香雅情/json/Bili短剧.json b/香雅情/json/Bili短剧.json new file mode 100644 index 0000000..7358f8d --- /dev/null +++ b/香雅情/json/Bili短剧.json @@ -0,0 +1,71 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "短剧", + "type_id": "短剧" + }, + { + "type_name": "沙雕动画", + "type_id": "沙雕动画" + } + ], + "filter": { + "短剧": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "沙雕动画": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/香雅情/json/七新影视.json b/香雅情/json/七新影视.json new file mode 100644 index 0000000..c802b95 --- /dev/null +++ b/香雅情/json/七新影视.json @@ -0,0 +1,81 @@ +{ + "规则名": "七新影视", + "规则作者": "", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "http://www.7xdy.com", + "首页列表数组规则": "body&&.stui-vodlist:has(h4)", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.7xdy.com/{cateId}/index{catePg}.html[firstPage=http://www.7xdy.com/{cateId}/index.html]", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "dianyingpian&dianshiju&zongyi&dongman", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "动作片&爱情片&科幻片&恐怖片&战争片&喜剧片&一直播&剧情片||国产剧&港台剧&欧美剧&日韩剧", + "筛选子分类替换词": "dongzuopian&aiqingpian&kehuanpian&kongbupian&zhanzhengpian&xijupian&jilupian&juqingpian||guocanju&gangtaiju&oumeiju&rihanju", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".stui-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h4&&a&&Text", + "分类片单链接": "h4&&a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.7xdy.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "http://www.7xdy.com/search.php?page=1&searchword={wd}&searchtype=", + "POST请求数据": "searchword={wd}", + "搜索截取模式": "1", + "搜索列表数组规则": ".stui-vodlist__media&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": "h3&&a&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.7xdy.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "0", + "类型详情": "类型:&&", + "年代详情": "年份:&&", + "地区详情": "地区:&&", + "演员详情": "主演:&&

", + "简介详情": "简介:&&

", + "线路列表数组规则": "body&&#playlist", + "线路标题": "h3&&Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "1", + "选集链接加前缀": "http://www.7xdy.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/云盘资源.json b/香雅情/json/云盘资源.json new file mode 100644 index 0000000..ab0a022 --- /dev/null +++ b/香雅情/json/云盘资源.json @@ -0,0 +1,21 @@ +{ + "搜索请求头参数": "User-Agent$MOBILE_UA#Referer$https://res.yunpan.win/", + "搜索链接": "https://res.yunpan.win/?PageIndex={SearchPg}&PageSize=12&Keyword={wd}&Type=&Tag=", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": "body&&.card", + "搜索片单是否Jsoup写法": "0", + "搜索片单图片": "img src=\"&&\"", + "搜索片单标题": "alt=\"&&\"", + "搜索片单链接": "window.open('&&')", + "搜索片单副标题": "", + "搜索片单链接加前缀": "", + "搜索片单链接加后缀": "", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "", + "简介详情": "", + "链接是否直接播放": "1" +} \ No newline at end of file diff --git a/香雅情/json/兔小贝.json b/香雅情/json/兔小贝.json new file mode 100644 index 0000000..ead838c --- /dev/null +++ b/香雅情/json/兔小贝.json @@ -0,0 +1,53 @@ +{ + "规则名": "兔小贝", + "规则作者": "香雅情", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "分类起始页码": "1", + "分类链接": "https://www.tuxiaobei.com/list/mip-data?typeId={cateId}&page={catePg}&callback=jsonp", + "分类名称": "儿歌&故事&国学&启蒙", + "分类名称替换词": "2&3&4&25", + "筛选数据": {}, + "筛选子分类名称": "", + "筛选子分类替换词": "", + "分类截取模式": "0", + "分类Json数据二次截取": "jsonp(&&);", + "分类列表数组规则": "data.items", + "分类片单是否Jsoup写法": "0", + "分类片单标题": "name", + "分类片单链接": "video_id", + "分类片单图片": "image", + "分类片单副标题": "duration_string", + "分类片单链接加前缀": "https://www.tuxiaobei.com/play/", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "https://www.tuxiaobei.com/search/index?key={wd}", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".list-con&&.items", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "mip-img&&src", + "搜索片单标题": ".title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".time&&Text", + "搜索片单链接加前缀": "https://www.tuxiaobei.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "2", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "", + "线路列表数组规则": "", + "线路标题": "", + "播放列表数组规则": "body", + "选集列表数组规则": ".video", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "'立即播放'", + "选集链接": "mip-search-video&&video-src", + "是否反转选集序列": "0", + "选集链接加前缀": "", + "选集链接加后缀": "", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/兔小贝2.json b/香雅情/json/兔小贝2.json new file mode 100644 index 0000000..1d6d2fe --- /dev/null +++ b/香雅情/json/兔小贝2.json @@ -0,0 +1,52 @@ +{ + "规则名": "兔小贝", + "规则作者": "香雅情", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "分类起始页码": "1", + "分类链接": "https://www.tuxiaobei.com/subject/{cateId}", + "分类名称": "兔小贝原创儿歌&睡前儿歌&Everybody动起来&爸爸妈妈小时候的儿歌&宝宝吃饭香&乖宝宝不哭闹&好宝宝爱上学&欢快儿歌&经典儿歌&快乐的节日&快乐的童年&流行儿歌&美丽四季&男孩最爱&女孩最爱&我爱爸爸妈妈&我的动物朋友&我的祖国和我&舞蹈音乐&英文儿歌&粤语儿歌&早教好习惯&放暑假啦&我能照顾好自己&画一个梦&哆啦A梦的神奇口袋&你是我的小天使&最动听的笑声&许个愿吧&阳光下的我们&智慧成语故事&名人成语故事&励志成语故事&神话成语故事&古诗启蒙&三字经&弟子规&千字文&十万个为什么&神奇的大自然&英语宝典&数学课堂&动物奇缘&安全教育", + "分类名称替换词": "17&16&1&2&3&4&5&6&9&10&11&12&13&14&15&19&20&21&22&23&24&25&56&57&58&59&60&61&62&63&89&90&88&87&39&43&46&48&54&55&50&51&53&84", + "筛选数据": {}, + "筛选子分类名称": "", + "筛选子分类替换词": "", + "分类截取模式": "1", + "分类列表数组规则": ".list-con&&.items", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "mip-img&&src", + "分类片单副标题": ".time&&Text", + "分类片单链接加前缀": "https://www.tuxiaobei.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "https://www.tuxiaobei.com/search/index?key={wd}", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".list-con&&.items", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "mip-img&&src", + "搜索片单标题": ".title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".time&&Text", + "搜索片单链接加前缀": "https://www.tuxiaobei.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "2", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "", + "线路列表数组规则": "", + "线路标题": "", + "播放列表数组规则": "body", + "选集列表数组规则": ".video", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "'立即播放'", + "选集链接": "mip-search-video&&video-src", + "是否反转选集序列": "0", + "选集链接加前缀": "", + "选集链接加后缀": "", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/农民影视.json b/香雅情/json/农民影视.json new file mode 100644 index 0000000..9801748 --- /dev/null +++ b/香雅情/json/农民影视.json @@ -0,0 +1,72 @@ +{ + "规则名": "农民影视", + "规则作者": "香雅情", + "请求头参数": "User-Agent$手机#Referer$https://www.wwgz.cn", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.wwgz.cn", + "首页列表数组规则": "body&&.globalPicList", + "首页片单列表数组规则": "li:has(img)", + "首页片单是否Jsoup写法": "1", + "首页片单标题": ".sTit&&Text", + "首页片单链接": "a&&href", + "首页片单图片": "img&&data-echo||data-src||src", + "首页片单副标题": ".sBottom&&Text", + "首页片单链接加前缀": "https://www.wwgz.cn", + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://www.wwgz.cn/vod-list-id-{cateId}-pg-{catePg}-order--by-{by}-class--year-{year}-letter--area-{area}-lang-.html", + "分类名称": "电影&电视剧&综艺&动漫&短剧", + "分类名称替换词": "1&2&3&4&26", + "筛选数据": "ext", + "筛选子分类名称": "动作片&喜剧片&爱情片&科幻片&恐怖片&剧情片&战争片&惊悚片&奇幻片||国产剧&港台泰&日韩剧&欧美剧||空||动漫剧&动漫片", + "筛选子分类替换词": "5&6&7&8&9&10&11&16&17||12&13&14&15||空||18&19", + "筛选地区名称": "大陆&香港&台湾&美国&韩国&日本&泰国&新加坡&马来西亚&印度&英国&法国&加拿大&西班牙&俄罗斯&其它", + "筛选地区替换词": "*", + "分类截取模式": "1", + "分类列表数组规则": ".globalPicList&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".sTit&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "img&&data-echo||data-src||src", + "分类片单副标题": ".sBottom&&Text", + "分类片单链接加前缀": "https://www.wwgz.cn", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Referer$https://www.wwgz.cn", + "search_url": "https://v.nmvod.cn/index.php?m=vod-search;post", + "sea_PtBody": "wd={wd}", + "search_mode": "1", + "sea_arr_rule": "#data_list&&li", + "sea_is_jsoup": "1", + "sea_pic": ".lazyload&&data-src", + "sea_title": ".sTit&&Text", + "sea_url": "a&&href", + "搜索片单副标题": ".sDes,-1&&Text", + "搜索片单链接加前缀": "https://www.wwgz.cn", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "1", + "类型详情": ".type-title&&Text", + "年代详情": "body&&span:contains(年代:)&&Text!年代:", + "地区详情": "", + "演员详情": "body&&.sDes:contains(主演:)&&Text!主演:", + "简介详情": ".detail-con&&p&&Text!简介:", + "线路列表数组规则": "#leftTabBox&&ul&&li", + "线路标题": "Text[替换:默认=>农民专线]", + "播放列表数组规则": "#leftTabBox&&.numList", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "1", + "选集链接加前缀": "https://www.wwgz.cn", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#item/video#video_mp4#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/初中课堂.json b/香雅情/json/初中课堂.json new file mode 100644 index 0000000..cf60a90 --- /dev/null +++ b/香雅情/json/初中课堂.json @@ -0,0 +1,1205 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "7年级语文", + "type_id": "7年级语文" + }, + { + "type_name": "7年级数学", + "type_id": "7年级数学" + }, + { + "type_name": "7年级英语", + "type_id": "7年级英语" + }, + { + "type_name": "7年级历史", + "type_id": "7年级历史" + }, + { + "type_name": "7年级地理", + "type_id": "7年级地理" + }, + { + "type_name": "7年级生物", + "type_id": "7年级生物" + }, + { + "type_name": "7年级物理", + "type_id": "7年级物理" + }, + { + "type_name": "7年级化学", + "type_id": "7年级化学" + }, + { + "type_name": "8年级语文", + "type_id": "8年级语文" + }, + { + "type_name": "8年级数学", + "type_id": "8年级数学" + }, + { + "type_name": "8年级英语", + "type_id": "8年级英语" + }, + { + "type_name": "8年级历史", + "type_id": "8年级历史" + }, + { + "type_name": "8年级地理", + "type_id": "8年级地理" + }, + { + "type_name": "8年级生物", + "type_id": "8年级生物" + }, + { + "type_name": "8年级物理", + "type_id": "8年级物理" + }, + { + "type_name": "8年级化学", + "type_id": "8年级化学" + } + ], + "filter": { + "7年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级语文" + }, + { + "n": "人教版", + "v": "人教版7年级语文" + }, + { + "n": "北师大版", + "v": "北师大版7年级语文" + }, + { + "n": "苏教版", + "v": "苏教版7年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级英语" + }, + { + "n": "人教版", + "v": "人教版7年级英语" + }, + { + "n": "北师大版", + "v": "北师大版7年级英语" + }, + { + "n": "苏教版", + "v": "苏教版7年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级数学" + }, + { + "n": "人教版", + "v": "人教版7年级数学" + }, + { + "n": "北师大版", + "v": "北师大版7年级数学" + }, + { + "n": "苏教版", + "v": "苏教版7年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级化学" + }, + { + "n": "人教版", + "v": "人教版7年级化学" + }, + { + "n": "北师大版", + "v": "北师大版7年级化学" + }, + { + "n": "苏教版", + "v": "苏教版7年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级物理" + }, + { + "n": "人教版", + "v": "人教版7年级物理" + }, + { + "n": "北师大版", + "v": "北师大版7年级物理" + }, + { + "n": "苏教版", + "v": "苏教版7年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级生物" + }, + { + "n": "人教版", + "v": "人教版7年级生物" + }, + { + "n": "北师大版", + "v": "北师大版7年级生物" + }, + { + "n": "苏教版", + "v": "苏教版7年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级历史" + }, + { + "n": "人教版", + "v": "人教版7年级历史" + }, + { + "n": "北师大版", + "v": "北师大版7年级历史" + }, + { + "n": "苏教版", + "v": "苏教版7年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级语文" + }, + { + "n": "人教版", + "v": "人教版8年级语文" + }, + { + "n": "北师大版", + "v": "北师大版8年级语文" + }, + { + "n": "苏教版", + "v": "苏教版8年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级英语" + }, + { + "n": "人教版", + "v": "人教版8年级英语" + }, + { + "n": "北师大版", + "v": "北师大版8年级英语" + }, + { + "n": "苏教版", + "v": "苏教版8年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级数学" + }, + { + "n": "人教版", + "v": "人教版8年级数学" + }, + { + "n": "北师大版", + "v": "北师大版8年级数学" + }, + { + "n": "苏教版", + "v": "苏教版8年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级化学" + }, + { + "n": "人教版", + "v": "人教版8年级化学" + }, + { + "n": "北师大版", + "v": "北师大版8年级化学" + }, + { + "n": "苏教版", + "v": "苏教版8年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级物理" + }, + { + "n": "人教版", + "v": "人教版8年级物理" + }, + { + "n": "北师大版", + "v": "北师大版8年级物理" + }, + { + "n": "苏教版", + "v": "苏教版8年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级生物" + }, + { + "n": "人教版", + "v": "人教版8年级生物" + }, + { + "n": "北师大版", + "v": "北师大版8年级生物" + }, + { + "n": "苏教版", + "v": "苏教版8年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级历史" + }, + { + "n": "人教版", + "v": "人教版8年级历史" + }, + { + "n": "北师大版", + "v": "北师大版8年级历史" + }, + { + "n": "苏教版", + "v": "苏教版8年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级语文" + }, + { + "n": "人教版", + "v": "人教版9年级语文" + }, + { + "n": "北师大版", + "v": "北师大版9年级语文" + }, + { + "n": "苏教版", + "v": "苏教版9年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级英语" + }, + { + "n": "人教版", + "v": "人教版9年级英语" + }, + { + "n": "北师大版", + "v": "北师大版9年级英语" + }, + { + "n": "苏教版", + "v": "苏教版9年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级数学" + }, + { + "n": "人教版", + "v": "人教版9年级数学" + }, + { + "n": "北师大版", + "v": "北师大版9年级数学" + }, + { + "n": "苏教版", + "v": "苏教版9年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级化学" + }, + { + "n": "人教版", + "v": "人教版9年级化学" + }, + { + "n": "北师大版", + "v": "北师大版9年级化学" + }, + { + "n": "苏教版", + "v": "苏教版9年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级物理" + }, + { + "n": "人教版", + "v": "人教版9年级物理" + }, + { + "n": "北师大版", + "v": "北师大版9年级物理" + }, + { + "n": "苏教版", + "v": "苏教版9年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级生物" + }, + { + "n": "人教版", + "v": "人教版9年级生物" + }, + { + "n": "北师大版", + "v": "北师大版9年级生物" + }, + { + "n": "苏教版", + "v": "苏教版9年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级历史" + }, + { + "n": "人教版", + "v": "人教版9年级历史" + }, + { + "n": "北师大版", + "v": "北师大版9年级历史" + }, + { + "n": "苏教版", + "v": "苏教版9年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/香雅情/json/可可影视.json b/香雅情/json/可可影视.json new file mode 100644 index 0000000..7090b39 --- /dev/null +++ b/香雅情/json/可可影视.json @@ -0,0 +1,82 @@ +{ + "规则名": "可可影视", + //"DEBUG":"1", + "规则作者": "香雅情", + "请求头参数": "MOBILE_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "否", + "是否开启获取首页数据": "是", + "首页推荐链接": "https://www.keke1.app", + "首页列表数组规则": "body&&.module-v-box", + "首页片单列表数组规则": ".module-item", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://www.keke1.app/show/{cateId}-----{by}-{catePg}.html", + "分类名称": "电影&电视剧&综艺&动漫&短剧", + "分类名称替换词": "1&2&4&3&6", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "综合&最新&最热&评分", + "筛选排序替换词": "1&2&3&4", + "分类截取模式": "1", + "分类列表数组规则": ".module-v-box&&.module-item", + "分类片单是否Jsoup写法": "是", + "分类片单标题": ".v-item-title,-1&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "'https://vres.miximixi.me'+.lazyload&&data-original", + "分类片单副标题": ".v-item-bottom&&Text", + "分类片单链接加前缀": "https://www.keke1.app", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$MOBILE_UA", + "搜索链接": "https://www.keke1.app/search?k={wd}&page=1", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".search-result-list&&.search-result-item", + "搜索片单是否Jsoup写法": "是", + "搜索片单图片": "'https://vres.miximixi.me'+.lazyload&&data-original", + "搜索片单标题": ".title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": "", + "搜索片单链接加前缀": "https://www.keke1.app", + "搜索片单链接加后缀": "", + "链接是否直接播放": "否", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "是", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "body&&.detail-info-row:contains(演员:)&&Text!演员:", + "简介详情": ".detail-desc&&Text", + "线路列表数组规则": ".source-box&&.swiper-slide", + "线路标题": "span&&Text[不包含:高峰不卡]", + "播放列表数组规则": ".episode-box-main&&.episode-list", + "选集列表数组规则": "a", + "选集标题链接是否Jsoup写法": "是", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "否", + "选集链接加前缀": "https://www.keke1.app", + "选集链接加后缀": "", + "分析MacPlayer": "", + "是否开启手动嗅探": "否", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/哔嘀影视.json b/香雅情/json/哔嘀影视.json new file mode 100644 index 0000000..f630852 --- /dev/null +++ b/香雅情/json/哔嘀影视.json @@ -0,0 +1,93 @@ +{ + "规则名": "哔嘀影视", + "规则作者": "", + "请求头参数": "User-Agent$电脑#Referer$https://www.yjys05.com", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.yjys05.com", + "首页列表数组规则": "body", + "首页片单列表数组规则": ".card-link", + "首页片单是否Jsoup写法": "1", + //首页片单标题 + "首页片单标题": "h3&&Text", + //首页推荐片单链接 + "首页片单链接": "a&&href", + //首页推荐片单图片,支持自定义图片链接 + "首页片单图片": "img&&data-src", + //首页推荐片单副标题 + "首页片单副标题":".badge||.ribbon&&Text", + //首页推荐片单链接补前缀 + "首页片单链接加前缀": "https://www.yjys05.com", + //首页推荐片单链接补后缀 + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://www.yjys05.com/s/{cateId}/{catePg}?type={class}&year={year}&order={by}", + "分类名称": "不限&动作&爱情&喜剧&科幻&恐怖&战争&武侠&魔幻&剧情&动画&惊悚&3D&灾难&悬疑&警匪&文艺&青春&冒险&犯罪&纪录&古装&奇幻&国语&综艺&历史&运动&原创压制&美剧&韩剧&国产电视剧&日剧&英剧&德剧&俄剧&巴剧&加剧&西剧&意大利剧&泰剧&港台剧&法剧&澳剧", + "分类名称替换词": "all&dongzuo&aiqing&xiju&kehuan&kongbu&zhanzheng&wuxia&mohuan&juqing&donghua&jingsong&3D&zainan&xuanyi&jingfei&wenyi&qingchun&maoxian&fanzui&jilu&guzhuang&qihuan&guoyu&zongyi&lishi&yundong&yuanchuang&meiju&hanju&guoju&riju&yingju&deju&eju&baju&jiaju&spanish&yidaliju&taiju&gangtaiju&faju&aoju", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "全部&电影&电视剧", + "筛选类型替换词": "&0&1", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "2023&2022&2021&2020&2019&2018&2017&2016&2015&2014&2013&2012&2011&2010&2009&2008&2007&2006&2005&2004&2003&2002&2001", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "更新时间&豆瓣评分", + "筛选排序替换词": "0&1", + "分类截取模式": "1", + "分类列表数组规则": ".row-cards&&.card", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h3&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "img&&data-src||src", + "分类片单副标题": ".badge||p&&Text", + "分类片单链接加前缀": "https://www.yjys05.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Referer$https://cn.bing.com/", + "搜索链接": "https://cn.bing.com/search?q=site:www.yjys05.com/ {wd}&qs=ds&form=QBRE", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": "ol#b_results&&li.b_algo", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "", + "搜索片单标题": "h2&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": "", + "搜索片单链接加前缀": "", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "div.mb-2&&p,5&&Text!制片国家/地区:", + "演员详情": "div.mb-2&&p,3&&Text!主演:", + "简介详情": "#synopsis&&Text!剧情简介", + "线路列表数组规则": "body&&.card:has(#download-list)||.card:has(#torrent-list)||.card:has(#play-list)", + "线路标题": "h3&&Text", + "播放列表数组规则": "body&&#download-list||#torrent-list||#play-list", + "选集列表数组规则": "a:not([href^=http])", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "https://www.yjys05.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos#item/video#video_mp4", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/小学课堂.json b/香雅情/json/小学课堂.json new file mode 100644 index 0000000..ff02e39 --- /dev/null +++ b/香雅情/json/小学课堂.json @@ -0,0 +1,1051 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "1年级语文", + "type_id": "1年级语文" + }, + { + "type_name": "1年级数学", + "type_id": "1年级数学" + }, + { + "type_name": "1年级英语", + "type_id": "1年级英语" + }, + { + "type_name": "2年级语文", + "type_id": "2年级语文" + }, + { + "type_name": "2年级数学", + "type_id": "2年级数学" + }, + { + "type_name": "2年级英语", + "type_id": "2年级英语" + }, + { + "type_name": "3年级语文", + "type_id": "3年级语文" + }, + { + "type_name": "3年级数学", + "type_id": "3年级数学" + }, + { + "type_name": "3年级英语", + "type_id": "3年级英语" + }, + { + "type_name": "4年级语文", + "type_id": "4年级语文" + }, + { + "type_name": "4年级数学", + "type_id": "4年级数学" + }, + { + "type_name": "4年级英语", + "type_id": "4年级英语" + }, + { + "type_name": "5年级语文", + "type_id": "5年级语文" + }, + { + "type_name": "5年级数学", + "type_id": "5年级数学" + }, + { + "type_name": "5年级英语", + "type_id": "5年级英语" + }, + { + "type_name": "6年级语文", + "type_id": "6年级语文" + }, + { + "type_name": "6年级数学", + "type_id": "6年级数学" + }, + { + "type_name": "6年级英语", + "type_id": "6年级英语" + } + ], + "filter": { + "1年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级语文" + }, + { + "n": "人教版", + "v": "人教版1年级语文" + }, + { + "n": "北师大版", + "v": "北师大版1年级语文" + }, + { + "n": "苏教版", + "v": "苏教版1年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "1年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级英语" + }, + { + "n": "人教版", + "v": "人教版1年级英语" + }, + { + "n": "北师大版", + "v": "北师大版1年级英语" + }, + { + "n": "苏教版", + "v": "苏教版1年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "1年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级数学" + }, + { + "n": "人教版", + "v": "人教版1年级数学" + }, + { + "n": "北师大版", + "v": "北师大版1年级数学" + }, + { + "n": "苏教版", + "v": "苏教版1年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级语文" + }, + { + "n": "人教版", + "v": "人教版2年级语文" + }, + { + "n": "北师大版", + "v": "北师大版2年级语文" + }, + { + "n": "苏教版", + "v": "苏教版2年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级英语" + }, + { + "n": "人教版", + "v": "人教版2年级英语" + }, + { + "n": "北师大版", + "v": "北师大版2年级英语" + }, + { + "n": "苏教版", + "v": "苏教版2年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级数学" + }, + { + "n": "人教版", + "v": "人教版2年级数学" + }, + { + "n": "北师大版", + "v": "北师大版2年级数学" + }, + { + "n": "苏教版", + "v": "苏教版2年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级语文" + }, + { + "n": "人教版", + "v": "人教版3年级语文" + }, + { + "n": "北师大版", + "v": "北师大版3年级语文" + }, + { + "n": "苏教版", + "v": "苏教版3年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级英语" + }, + { + "n": "人教版", + "v": "人教版3年级英语" + }, + { + "n": "北师大版", + "v": "北师大版3年级英语" + }, + { + "n": "苏教版", + "v": "苏教版3年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级数学" + }, + { + "n": "人教版", + "v": "人教版3年级数学" + }, + { + "n": "北师大版", + "v": "北师大版3年级数学" + }, + { + "n": "苏教版", + "v": "苏教版3年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级语文" + }, + { + "n": "人教版", + "v": "人教版4年级语文" + }, + { + "n": "北师大版", + "v": "北师大版4年级语文" + }, + { + "n": "苏教版", + "v": "苏教版4年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级英语" + }, + { + "n": "人教版", + "v": "人教版4年级英语" + }, + { + "n": "北师大版", + "v": "北师大版4年级英语" + }, + { + "n": "苏教版", + "v": "苏教版4年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级数学" + }, + { + "n": "人教版", + "v": "人教版4年级数学" + }, + { + "n": "北师大版", + "v": "北师大版4年级数学" + }, + { + "n": "苏教版", + "v": "苏教版4年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级语文" + }, + { + "n": "人教版", + "v": "人教版5年级语文" + }, + { + "n": "北师大版", + "v": "北师大版5年级语文" + }, + { + "n": "苏教版", + "v": "苏教版5年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级英语" + }, + { + "n": "人教版", + "v": "人教版5年级英语" + }, + { + "n": "北师大版", + "v": "北师大版5年级英语" + }, + { + "n": "苏教版", + "v": "苏教版5年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级数学" + }, + { + "n": "人教版", + "v": "人教版5年级数学" + }, + { + "n": "北师大版", + "v": "北师大版5年级数学" + }, + { + "n": "苏教版", + "v": "苏教版5年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级语文" + }, + { + "n": "人教版", + "v": "人教版6年级语文" + }, + { + "n": "北师大版", + "v": "北师大版6年级语文" + }, + { + "n": "苏教版", + "v": "苏教版6年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级英语" + }, + { + "n": "人教版", + "v": "人教版6年级英语" + }, + { + "n": "北师大版", + "v": "北师大版6年级英语" + }, + { + "n": "苏教版", + "v": "苏教版6年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级数学" + }, + { + "n": "人教版", + "v": "人教版6年级数学" + }, + { + "n": "北师大版", + "v": "北师大版6年级数学" + }, + { + "n": "苏教版", + "v": "苏教版6年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/香雅情/json/少儿教育.json b/香雅情/json/少儿教育.json new file mode 100644 index 0000000..d6717fc --- /dev/null +++ b/香雅情/json/少儿教育.json @@ -0,0 +1,41 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "儿童", + "type_id": "3-6岁益智动画合集" + }, + { + "type_name": "宝宝巴士", + "type_id": "宝宝巴士动画合集" + }, + { + "type_name": "悟空识字", + "type_id": "识字认字动画合集" + }, + { + "type_name": "少儿", + "type_id": "CCTV14少儿频道合集" + }, + { + "type_name": "学而思", + "type_id": "学而思课程" + }, + { + "type_name": "小学", + "type_id": "小学六年辅导课程" + }, + { + "type_name": "初中", + "type_id": "初中三年辅导课程" + }, + { + "type_name": "高中", + "type_id": "高中三年辅导课程" + }, + { + "type_name": "教育", + "type_id": "十二年教育课程" + } + ] +} \ No newline at end of file diff --git a/香雅情/json/幼儿乐园.json b/香雅情/json/幼儿乐园.json new file mode 100644 index 0000000..ecffd02 --- /dev/null +++ b/香雅情/json/幼儿乐园.json @@ -0,0 +1,61 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "儿童早教", + "type_id": "儿童早教" + }, + { + "type_name": "儿童启蒙故事", + "type_id": "儿童启蒙故事" + }, + { + "type_name": "儿童英语启蒙", + "type_id": "儿童英语启蒙" + }, + { + "type_name": "儿童歌曲", + "type_id": "儿童歌曲" + }, + { + "type_name": "儿童绘画", + "type_id": "儿童绘画" + }, + { + "type_name": "睡前故事", + "type_id": "睡前故事" + }, + { + "type_name": "儿童动画", + "type_id": "儿童动画" + }, + { + "type_name": "儿童音乐", + "type_id": "儿童音乐" + }, + { + "type_name": "儿童安全教育", + "type_id": "儿童安全教育" + }, + { + "type_name": "贝瓦儿歌", + "type_id": "贝瓦儿歌" + }, + { + "type_name": "悟空识字", + "type_id": "悟空识字" + }, + { + "type_name": "宝宝巴士", + "type_id": "宝宝巴士" + }, + { + "type_name": "儿歌多多", + "type_id": "儿歌多多" + }, + { + "type_name": "学而思", + "type_id": "学而思" + } + ] +} \ No newline at end of file diff --git a/香雅情/json/影搜.json b/香雅情/json/影搜.json new file mode 100644 index 0000000..bedb5df --- /dev/null +++ b/香雅情/json/影搜.json @@ -0,0 +1,13 @@ +{"搜索请求头参数": "User-Agent$PC_UA#Referer$https://yingso.fun/", +"搜索链接": "https://ys.api.yingso.fun/v3/ali/search;post", +"POST请求数据": "{\"pageNum\":1,\"pageSize\":30,\"title\":\"{wd}\",\"root\":1,\"cat\":\"all\"}", +"搜索截取模式": "0", +"搜索列表数组规则": "data", +"搜索片单是否Jsoup写法": "1", +"搜索片单图片": "", +"搜索片单标题": "title", +"搜索片单链接": "key", +"搜索片单副标题": "", +"搜索片单链接加前缀": "https://www.aliyundrive.com/s/", +"搜索片单链接加后缀": "" +} \ No newline at end of file diff --git a/香雅情/json/播视童趣.json b/香雅情/json/播视童趣.json new file mode 100644 index 0000000..9aeb060 --- /dev/null +++ b/香雅情/json/播视童趣.json @@ -0,0 +1,70 @@ +{ + "规则名": "播视童趣", + "规则作者": "香雅情", + "请求头参数": "电脑", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.boosj.com/baby/", + "首页列表数组规则": "body&&.pub-hotplay-main||.pub-child-dance||.pub-toy-play||.pub-describe-story||.pub-child-song||.pub-child-eduction", + "首页片单列表数组规则": "a:has(img)", + "首页片单是否Jsoup写法": "1", + "首页片单标题": "img&&alt", + "首页片单链接": "a&&href", + "首页片单图片": "img&&src", + "首页片单副标题": "", + "首页片单链接加前缀": "", + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://www.boosj.com/search_res_3362__{cateId}_{catePg}_.html", + "分类名称": "全部&辅食&动画&儿童舞蹈&少儿英语&儿童歌曲&才艺&播视自制&故事&亲子教育&美术&其他&儿童游戏&识物&绘本&古诗&科普&儿童玩具&播视童趣儿童玩具", + "分类名称替换词": "&28&582&3364&3366&3367&3622&3782&3822&3842&4402&4583&4762&4842&4843&4844&4845&5102&5142", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "", + "筛选排序替换词": "", + "分类截取模式": "1", + "分类列表数组规则": "body&&.bj-col4:has(img)", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "a&&title", + "分类片单链接": "a&&href", + "分类片单图片": "img&&data-original", + "分类片单副标题": "", + "分类片单链接加前缀": "", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "{wd}", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": "", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "", + "搜索片单标题": "", + "搜索片单链接": "", + "搜索片单副标题": "", + "搜索片单链接加前缀": "", + "搜索片单链接加后缀": "", + "链接是否直接播放": "1", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/河马短剧.json b/香雅情/json/河马短剧.json new file mode 100644 index 0000000..0412b66 --- /dev/null +++ b/香雅情/json/河马短剧.json @@ -0,0 +1,81 @@ +{ + "规则名": "河马短剧", + "规则作者": "香雅情", + "请求头参数": "MOBILE_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "否", + "是否开启获取首页数据": "否", + "首页推荐链接": "https://www.kuaikaw.cn", + "首页列表数组规则": "body&&.module-items", + "首页片单列表数组规则": ".module-item:lt(12)", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://www.kuaikaw.cn/browse/{cateId}/{catePg}[firstPage=https://www.kuaikaw.cn/browse/{cateId}]", + "分类名称": "全部", + "分类名称替换词": "0", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "全部&民国&萌宝&动漫&超能&甜宠&豪门恩怨&长生&神医&寻亲&抗战谍战&电视剧&奇幻&闪婚&职场商战&权谋&高手下山&神话&时空之旅&欢喜冤家&都市&体育&家庭&喜剧&都市修仙&神豪&科幻&致富&奇幻脑洞&强者回归&励志&复仇&电影&马甲&亲情&小人物&无敌&现实&重生&穿越&年代&悬疑&婚姻&家国情仇&虐恋&古装&仙侠&玄幻仙侠&传承觉醒&功夫武打&戏曲歌舞&情感&逆袭&战争", + "筛选子分类替换词": "0&590-839&589&1115&442&462&585&1073&438&1125&1093&1092-1097&715&713&943&840-1101&474&1094&718&717&1129&1128&714-1126&917&1124&475&1130&918&721&476&1076-1100&416-463&1091-1096&719&835-837&472&1074&441-469&439-465&916&716-722&445-470&1127&915&466&444-468&1102&720&473&1095&1098&838&417-464&1099", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".BrowseList_listBox__MyeBa&&.BrowseList_listItem__h7lD4", + "分类片单是否Jsoup写法": "是", + "分类片单标题": "img&&alt", + "分类片单链接": "a&&href", + "分类片单图片": "img&&src", + "分类片单副标题": ".BrowseList_lastChapter__dkL54&&Text", + "分类片单链接加前缀": "https://www.kuaikaw.cn", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$MOBILE_UA", + "搜索链接": "https://www.kuaikaw.cn/search/{SearchPg}?searchValue={wd}", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".search_searchList__AvbeR&&.MTagBookList_tagBookItem__C_038", + "搜索片单是否Jsoup写法": "是", + "搜索片单图片": "img&&src", + "搜索片单标题": "img&&alt", + "搜索片单链接": "a&&href", + "搜索片单副标题": "", + "搜索片单链接加前缀": "https://www.kuaikaw.cn", + "搜索片单链接加后缀": "", + "链接是否直接播放": "否", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "是", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "", + "简介详情": ".introduction_introBox__t4Bbz&&Text", + "线路列表数组规则": "", + "线路标题": "Text", + "播放列表数组规则": "body&&.CatalogList_swiperBox__5kdPs", + "选集列表数组规则": "a:not(:has(img))", + "选集标题链接是否Jsoup写法": "是", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "否", + "选集链接加前缀": "https://www.kuaikaw.cn", + "选集链接加后缀": "", + "分析MacPlayer": "否", + "是否开启手动嗅探": "否", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/爱你短剧.json b/香雅情/json/爱你短剧.json new file mode 100644 index 0000000..c7948e9 --- /dev/null +++ b/香雅情/json/爱你短剧.json @@ -0,0 +1,81 @@ +{ + "规则名": "爱你短剧", + "规则作者": "香雅情", + "请求头参数": "MOBILE_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "否", + "是否开启获取首页数据": "是", + "首页推荐链接": "https://ainidj.com/", + "首页列表数组规则": "body&&.module-items", + "首页片单列表数组规则": ".module-item:lt(12)", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://ainidj.com/vodshwo/{cateId}--------{catePg}---.html", + "分类名称": "穿越&战神&重生&爱情&萌娃&神医&古代&玄幻&言情", + "分类名称替换词": "fenle&fenlei2&fenlei3&fenlei4&guda&shenyi&gudai&xuanhuan&yanqing", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".module-items&&.module-item", + "分类片单是否Jsoup写法": "是", + "分类片单标题": ".video-name&&Text", + "分类片单链接": "a&&href", + "分类片单图片": ".lazy&&data-src", + "分类片单副标题": ".module-item-text&&Text", + "分类片单链接加前缀": "https://ainidj.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$MOBILE_UA", + "搜索链接": "https://ainidj.com/vodsearch/{wd}----------{SearchPg}---.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".module-items&&.module-search-item", + "搜索片单是否Jsoup写法": "是", + "搜索片单图片": ".lazyload&&data-src", + "搜索片单标题": ".video-info&&h3&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".video-serial&&Text", + "搜索片单链接加前缀": "https://ainidj.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "否", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "是", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "", + "简介详情": ".video-info-main&&.video-info-content&&Text", + "线路列表数组规则": ".module-tab-items&&.module-tab-item", + "线路标题": "Text", + "播放列表数组规则": "body&&.module-player-list", + "选集列表数组规则": ".scroll-content&&a", + "选集标题链接是否Jsoup写法": "是", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "否", + "选集链接加前缀": "https://ainidj.com", + "选集链接加后缀": "", + "分析MacPlayer": "否", + "是否开启手动嗅探": "否", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/玩偶哥哥.json b/香雅情/json/玩偶哥哥.json new file mode 100644 index 0000000..dfc2f5b --- /dev/null +++ b/香雅情/json/玩偶哥哥.json @@ -0,0 +1,84 @@ +{ + "规则名": "玩偶哥哥", + //"DEBUG":"1", + "规则作者": "香雅情", + "请求头参数": "MOBILE_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "否", + "是否开启获取首页数据": "是", + "首页推荐链接": "https://www.wogg.net", + "首页列表数组规则": "body&&.module-items", + "首页片单列表数组规则": ".module-item:not(:matches(饭太硬|公众号))", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + //"分类链接": "https://www.wogg.net/index.php/vodshow/{cateId}--{by}------{catePg}---{year}.html", + "分类链接": "https://www.wogg.net/vodshow/{cateId}--{by}------{catePg}---{year}.html", + "分类名称": "电影&电视剧&综艺&动漫&短剧&音乐空间", + "分类名称替换词": "1&2&4&3&6&5", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".module-items&&.module-item:not(:matches(饭太硬|公众号))", + "分类片单是否Jsoup写法": "是", + "分类片单标题": "a&&title", + "分类片单链接": "a&&href", + "分类片单图片": ".module-item-pic&&img&&data-src", + "分类片单副标题": ".module-item-text&&Text", + "分类片单链接加前缀": "https://www.wogg.net", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$MOBILE_UA", + //"搜索链接": "https://www.wogg.net/index.php/vodsearch/{wd}----------{SearchPg}---.html", + "搜索链接": "https://www.wogg.net/vodsearch/{wd}----------{SearchPg}---.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".module-items&&.module-search-item", + "搜索片单是否Jsoup写法": "是", + "搜索片单图片": ".lazyload&&data-src", + "搜索片单标题": "h3&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".video-info&&a&&Text", + "搜索片单链接加前缀": "https://www.wogg.net", + "搜索片单链接加后缀": "", + "链接是否直接播放": "否", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "是", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": ".video-info-main&&.video-info-actor,1&&Text", + "简介详情": ".video-info-content&&p,-1&&Text", + "线路列表数组规则": ".module-player-tab&&.module-tab-item", + "线路标题": "span&&Text", + "播放列表数组规则": "body&&.module-player-list", + "选集列表数组规则": ".module-row-one:matches(https://www.ali(pan|yundrive).com/s/)", + "选集标题链接是否Jsoup写法": "是", + "选集标题": "h4&&Text", + "选集链接": ".btn-down&&a&&href", + "是否反转选集序列": "否", + "选集链接加前缀": "", + "选集链接加后缀": "", + "分析MacPlayer": "", + "是否开启手动嗅探": "否", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/短剧屋.json b/香雅情/json/短剧屋.json new file mode 100644 index 0000000..0a1bf24 --- /dev/null +++ b/香雅情/json/短剧屋.json @@ -0,0 +1,81 @@ +{ + "规则名": "短剧屋", + "规则作者": "", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "http://www.metaysw.com", + "首页列表数组规则": "body&&.vod-vodlist", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.metaysw.com/type/{cateId}-{catePg}.html", + "分类名称": "短剧", + "分类名称替换词": "lianxuju", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".vod-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".vod-vodlist__title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.metaysw.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "http://www.metaysw.com/search/page/{SearchPg}/wd/{wd}.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".vod-vodlist&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": ".vod-vodlist__title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.metaysw.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": ".vod-content__detail&&p,2&&Text!主演:", + "简介详情": "", + "线路列表数组规则": ".dropdown-menu&&li", + "线路标题": "a&&Text", + "播放列表数组规则": "body&&.vod-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://www.metaysw.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/虎牙直播.json b/香雅情/json/虎牙直播.json new file mode 100644 index 0000000..bb6e416 --- /dev/null +++ b/香雅情/json/虎牙直播.json @@ -0,0 +1,53 @@ +{ + "规则名": "虎牙直播", + "规则作者": "香雅情", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "clan://XYQTVBox/虎牙主播.html", + "首页列表数组规则": "body&&.list", + "首页片单列表数组规则": "a", + "首页片单是否Jsoup写法": "1", + "首页片单标题": "a&&Text", + "首页片单链接": "a&&href", + "首页片单图片": "a&&data-original", + "首页片单副标题": "a&&desc", + "首页片单链接加前缀": "http://lxajh.top/tv/huya.php?id=", + "首页片单链接加后缀": "#GD线路$https://www.goodiptv.club/huya/'input'", + "分类起始页码": "1", + "分类链接": "https://live.cdn.huya.com/liveHttpUI/getLiveList?iGid={cateId}&iPageNo={catePg}&iPageSize=120", + "分类名称": "热门&网游&单机&娱乐&手游", + "分类名称替换词": "2336&1&7771&1663&3203", + "筛选数据": "ext", + "筛选子分类名称": "王者荣耀&云梦之星&绝地求生&英雄联盟&星秀&吃喝玩乐&主机游戏&和平精英&穿越火线&颜值&二次元&地下城与勇士&暴雪专区&一起看&我的世界||英雄联盟&lol云顶之弈&守望先锋归来&超击突破&穿越火线&地下城与勇士&炉石传说&魔兽世界&DOTA2&CS:GO&CFHD&DOTA1&QQ飞车&问道&魔兽争霸3&逆战&梦三国&坦克世界&起凡:群雄逐鹿&神武4电脑版&堡垒之夜&英魂之刃&网游竞技&暴雪专区&射击综合游戏&军事游戏&无畏契约&逆水寒&剑灵&冒险岛&永恒之塔&诛仙3&彩虹岛Online&热血江湖&传奇&炉石战棋&龙之谷&传奇类游戏&御龙在天&QQ三国&寻仙&天谕&剑网3&枪神纪&反恐精英Online&体育游戏&星际争霸&武林外传一世琴缘&战舰世界&生死狙击2&千年3&星际战甲&铁甲雄兵&斗战神&荒野行动PC版&暗黑破坏神&九阴真经&QQ华夏&天涯明月刀&丝路传说2&大唐无双零&QQ自由幻想&战争雷霆&使命召唤:战区&NBA2KOL系列&跑跑卡丁车&命运方舟&征途&梦想世界3&刀剑英雄&激战2&新倩女幽魂&诛仙世界&流放之路&FIFA Online系列&真·三国无双OL&神泣&轩辕传奇&天翼决&大话西游2&战地之王&造梦西游OL&生死狙击&完美世界:诸神之战&QQ仙侠传&战意&反恐行动online&蜀山:初章&希望OL&完美端游系列&天下&命运2&征途2&创世战车&全球使命3&天命西游&洛奇英雄传&剑侠世界&赛尔号&泡泡堂&蜀门&劲舞团&QQ幻想&古剑奇谭OL&QQ炫舞&新飞飞(FlyFF)&新剑侠情缘&热血江湖2&天堂&装甲战争&疾风之刃&起凡游戏三国争霸&征程&FIFA Online4&极光世界 弑神传&坦克大战&QQ幻想世界&使命召唤:现代战争&奇迹世界2&鹿鼎记&QQ音速&梦幻诛仙2&诺亚传说&飞龙在天传奇&天书奇谈&成吉思汗3&全球使命&街头篮球&权力的游戏 凛冬将至 页游&新挑战&星辰变&火线精英&自在西游&黑色沙漠&起凡:群雄逐鹿HD&斗破苍穹&赤壁&刀剑2&远征Online梦想版&Project Zomboid&奇迹:传奇&逍遥江湖零&黄易群侠传2&释厄英雄&反恐精英&炫舞时代&魔侠传&神魔大陆&EVE Online&无尽战区&全面战争:竞技场&千古风流&万王之王3&冰原之战&冒险岛2&云端王国&北地物语2&梦幻龙族II&数码精灵Online&倚天Ⅱ&神话&三国&九天神话&名将三国&阿克拉什:传承&最强军团&忍者村大战2&夺宝传世&300英雄&风云龙战天下&成吉思汗怀旧版&领地人生&笑傲江湖&上古世纪&劲乐团&蜀山剑侠传&上古封神&人类必须反击&热血轩辕OL&超激斗梦境&极品飞车Online&独孤求败&威尼斯崛起&蜀山神话&圣境传说&永久基地&火瀑&圣斗士星矢ol&无限法则&仙侠世界2&坠星大陆&霸刀群侠传online&闪烁之光&龙麒&画皮世界&黎明之光&神佑&创世联盟&泰亚史诗&使命召唤:黑色行动4&御天降魔传||战神:诸神黄昏&Dread Hunger&天天吃鸡&永劫无间&主机游戏&我的世界&方舟&单机热游&互动点播&怀旧游戏&逃离塔科夫&Apex英雄&部落:上升&卧龙:苍天陨落&俄罗斯钓鱼4&怪物猎人物语&怪物猎人:崛起&骑马与砍杀系列&死亡之夜&SCUM&饥荒&艾尔登法环&荒野大镖客2&恐惧之间&使命召唤系列&星球大战系列&怪物猎人世界&森林之子&互动剧游&恐鬼症&欧洲卡车模拟&极限竞速:地平线&DayZ独立版&战地5&阿尔比恩&盗贼之海&幽灵线:东京&纸人&育碧游戏&港诡实录&漫漫长夜&三国志&只狼:影逝二度&黑与白2&其他单机&Among Us&Dark and Darker&仙剑奇侠传七&罗布乐思&归家异途&霍格沃茨之遗&仁王2&岛&帝国神话&双人成行&灵魂筹码&九霄缳神记&都市:天际线&甜蜜之家&流放者柯南&鬼谷八荒&海底大作战&帝国时代4&深岩银河:下潜&猎人:荒野的召唤&大侠立志传&英灵神殿&Stray&洛克王国&石油骚动&消逝的光芒2&非对称派对游戏&真三国无双&魔法门之英雄无敌系列&海贼王 寻秘世界&音乐游戏&任天堂专区&扫雷&全面战争:三国&战术小队&文明6&全境封锁&流星蝴蝶剑&WWE 2K&哈迪斯&刺客信条&看门狗:军团&对马岛之魂&渡神记&全面战争&精灵与萤火意志&层层恐惧&伤害世界&拾荒者&英雄连&奥奇传说&缺氧&逃生者2&美丽水世界&机械迷城&沙石镇时光&禁闭求生&帝国时代系列&宝可梦:剑盾&武装突袭&十三月&糖豆人:终极淘汰赛&幽灵行动:荒野&战锤40K:暗潮&海贼王:热血燃烧&胡闹厨房&精灵宝可梦Let's Go&紫塞秋风&雨血前传:蜃楼&小骨:英雄杀手&最终幻想7:重制版&四海兄弟&FIFA足球&奥拉星&生化3:抵抗计划&戴森球计划&足球小将&新世界&环世界&无人深空&星露谷物语&游戏王&三国群英传8&实况足球系列&神秘海域4&塞尔达传说:荒野之息&路易鬼屋3&摔跤城大乱斗&恐怖黎明&罗马复兴&马里奥专区&人间地狱&冰汽时代&刺客信条:英灵殿&漫威蜘蛛侠&弈仙牌&中土世界系列&奥日与黑暗森林&恶魔之魂&小缇娜的奇幻之地&Biped&攻城掠地&人类一败涂地&斩妖行&Steamcraft&Cube&割绳子&黑山:起源&闪克&街机游戏&桥梁建造师&马里奥赛车8&纪元1800&黎明之星&剑勇传奇:忍者龙剑传Z&太荒初境&复仇者联盟&死亡搁浅&FIFA 23&模拟农场&模拟人生4&细胞分裂&极品飞车22:不羁&超级战壕大战&鬼武者3&最终幻想:起源&霓虹深渊&最终幻想系列&女神异闻录&瑞奇与叮当&轩辕剑外传:云之遥&草根传奇&泰坦陨落&SCP 173&龙歌&立方体&为了吾皇||星秀&户外&一起看&二次元&虚拟偶像&旅游&娱乐天地&放映厅&交友&组队&吃喝玩乐&颜值&原创&虎牙地方&体育&虎牙文化&趣分享&美食&科技&音乐&派对&直播购||和平精英&云梦之星&王者荣耀&黎明觉醒:生机&英雄联盟手游&金铲铲之战&原神&CF手游&三国志战棋版&综合手游&新游广场&QQ飞车手游&火影忍者手游&欢乐麻将&中国象棋&三国杀&天天狼人&欢乐斗地主&暗区突围&问道手游&部落冲突&皇室战争&忍者必须死3&手游休闲&MMORPG&战争冲突&动作游戏&棋牌桌游&王者模拟战&天龙八部手游&二次元手游&虎牙领主争霸&一起玩&明日之后&狼人杀手游&COD手游&暗黑破坏神:不朽&幻塔&神武4手游&第五人格&天涯明月刀手游&御龙在天手游&三国志战略版&球球大作战&狼人杀&蛋仔派对&多乐棋牌&崩坏3&天天象棋&英雄杀&DNF手游&诛仙手游&热血江湖手游&完美世界手游&妄想山海&新笑傲江湖&崩坏:星穹铁道&指尖四川麻将&迷你世界&斗罗大陆:魂师对决&狼人杀官方&万国觉醒&天龙八部2:飞龙战天&云上城之歌&奇迹MU:觉醒&JJ棋牌&奶块&斗破苍穹手游&最强NBA&极无双2&武侠乂手游&新剑侠情缘手游&创造与魔法&逆水寒手游&阴阳师&多多自走棋&倩女幽魂手游&跑跑卡丁车手游&巅峰战舰&征途2手游&率土之滨&英雄联盟电竞经理&流星群侠传&英魂之刃口袋版&重返帝国&SKY光遇&永恒纪元:戒&剑侠世界3&征途手游&绝世仙王&青云诀2&一梦江湖&精灵盛典:黎明&红警OL&海岛奇兵&剑灵:革命&九灵神域&混沌起源&梦幻诛仙手游&天天酷跑&龙武手游&王牌战争:文明重启&时空猎人3&太古神王2&寻仙手游&天天吃鸡手机版&FIFA足球世界&方舟手游&弹弹堂手游&长安幻想&航海王:燃烧意志&风云&庆余年手游&魔力宝贝&口袋觉醒&三国战纪2&影之刃3&新斗罗大陆&仙境传说RO&北凉悍刀行&单机手游&无神之界&军棋&猎魂觉醒&灌篮高手正版授权手游&王牌竞速&行界&鸿图之下&三国战纪&斗罗大陆&新盗墓笔记&荒野乱斗&荣耀大天使&梦幻新诛仙&航海王热血航线&雀魂麻将&明日方舟&坦克世界闪击战&永劫无间手游&龙之谷2手游&轩辕传奇手游&合金弹头:觉醒&超凡先锋&机动都市阿尔法&不良人3&决战平安京&剑侠世界2手游&逃跑吧!少年&荒野行动&香肠派对&植物大战僵尸&哈利波特:魔法觉醒&剑网3:指尖江湖&火影忍者OL&天谕手游&拳皇命运&QQ炫舞手游&风云岛行动&Lost Light(萤火突击国际服)&一念逍遥&蚁族崛起&QQ华夏手游&仙魔决&绝世战魂&镇魂街:天生为王&梦幻模拟战&游戏王:决斗链接&原始征途&全民枪战2&魂斗罗:归来&我叫MT4&巅峰极速&武林外传手游&龙之谷世界&斗罗大陆-斗神再临&黑色沙漠手游&时空召唤&魔力宝贝:旅人&决斗之城&少年三国志2&掼蛋&阴阳师:百闻牌&冰火创世纪&元气骑士&龙珠觉醒&黎明之光手游&远征&绿色征途&天堂2:血盟&火炬之光:无限&梦三国手游&绝区零&腾讯桌球&虎牙吃鸡&自由之战2&重生细胞&忘川风华录&蛇蛇争霸&欢乐升级&球球英雄&我的起源&一拳超人:最强之男&太空行动&绿茵信仰&无期迷途&漫威超级战争&逍遥情缘&仙战&龙族幻想&新游推荐&荣耀新三国&摩尔庄园&天堂 W&斗罗大陆:武魂觉醒&斗破仙途&魔渊之刃&刀塔传奇&幻世九歌&深空之眼&未来之役&剑与家园&一剑斩仙&剑网1:归来&镇魂街:武神躯&虎牙球球&米加小镇&警匪杀&龙之国物语&黑暗与光明手游&小小蚁国&饭狼&零号任务&星球:重启&魂武者&一人之下&龙与家园&重写三国志&提灯与地下城&贪吃蛇大作战&战双:帕弥什&星露谷物语手游&圣斗士星矢(腾讯)&斗罗大陆2:绝世唐门&忍者龟:归来&刺客同盟&神雕侠侣手游&武动乾坤&魔龙世界&洪荒&三国志:幻想大陆&全民斩仙&小小军团&猎龙计划&新轩辕剑&圣斗士星矢:正义传说&龙族血统&航海王激战&微信小游戏&枪火重生手游&三十六计&口袋妖怪重制&三界争锋&口袋妖怪 VS&蜀山奇缘&不良人2&弹弹堂大冒险&泰拉瑞亚手游&QQ游戏大厅&另一个伊甸: 超越时空的猫&斗斗堂&狩猎时刻&刀剑契约&仙剑Q传&口袋对决&乱世王者&全民奇迹2&航海王强者之路&牧羊人之心&口袋决斗&少年三国志&秦时明月2&一拳超人正义执行&大话西游手游&风暴魔域&混沌与秩序之英雄战歌&文明与征服&君临天下(手游)&天使纪元&航海王:启航&剑侠情缘手游&太极熊猫3:猎龙&九州天空城3D&诺亚之心&星途&永不言弃3:世界&全民精灵&我的恐龙&放开那三国3&一刀流&侍魂OL&火影世界3D&坎公骑冠剑&APEX手游&神将三国&保卫萝卜3&无尽的拉格朗日&战舰猎手&极无双&奇迹:最强者&热血英雄&大唐仙灵之灵武奇缘&猫之城&光明冒险&实况足球&数码宝贝:新世纪&非人学园&傲世西游&饥荒:新家&密室逃脱&真三国无双霸&传奇天下&失落城堡手游&火影忍者:巅峰对决&传奇生物&猫和老鼠", + "筛选子分类替换词": "2336&9521&2793&1&1663&100044&100032&3203&4&2168&2633&2&100043&2135&1732||1&5485&2174&7467&4&2&393&8&7&862&6079&6&9&107&4615&135&489&802&1612&3227&100117&1830&100023&100043&100141&100133&5937&2952&897&2243&446&1646&683&387&983&5751&15&2060&675&1090&734&1899&900&496&1918&100135&5&1661&1947&6091&878&627&2765&591&3185&1123&1009&1878&1219&1026&1584&1862&624&5911&3959&162&3058&2715&486&915&406&1579&7749&427&100079&324&2531&159&779&2975&618&6815&2471&7217&2291&2599&861&7761&1161&3034&1597&2942&677&2741&2953&1086&432&903&2755&440&4711&2420&2419&1892&2440&1582&586&386&1966&2276&334&11&678&3683&514&4359&2897&5713&766&45&1085&488&190&77&2225&641&939&206&7945&583&553&2550&7907&1877&5423&590&179&1867&142&1319&3917&133&42&7677&863&3353&55&296&1292&2318&5901&7155&1057&925&2350&1003&1204&1524&594&959&299&1053&1153&6741&1142&534&2369&772&1132&84&640&2282&288&1046&2469&217&1824&997&385&5691&2563&365&1200&216&822&447&399&1652&3189&2723&1337&91&7455&2814&337&41&2090&2713&2977&4429&676||7771&7601&2793&6219&100032&1732&1997&100002&5907&100125&3493&5011&1318&7859&5495&7101&6479&4783&6129&4245&74&5801&4319&6679&100137&554&3519&7943&6919&6205&475&2634&1125&4371&8115&3641&7669&5257&100139&5853&2303&2270&4505&38&3069&6163&7905&6509&5771&2949&7881&5795&3019&6821&6737&4059&5941&2201&6739&2772&6571&3101&4835&3647&2906&7993&6609&7745&2864&2585&7581&6101&1599&2096&5097&2761&100087&2349&3004&2360&2650&2342&426&2796&6153&1962&6155&6039&6231&3521&5895&2288&2337&6851&232&2848&2884&3015&2365&1834&7687&6065&708&5715&465&7823&6083&2794&3016&2473&4217&4375&6045&98&6565&5809&5995&1888&2846&5931&6523&6103&7239&4865&2566&2443&412&6425&2596&2486&2924&5719&7773&3435&2430&2120&5429&5725&6149&4249&7871&1807&1946&6151&7647&5307&1737&3289&6105&5243&51&896&37&111&5999&3275&5947&5235&40&1498&7685&6121&5695&7789&2344&6607&270&7885&175&61&7653&5743&2454&3981&2455&157&230&1446&1083&14&289&2965||1663&2165&2135&2633&6055&6791&100022&6245&4079&5367&100044&2168&6861&5123&2356&4089&5883&2752&2408&3793&7785&7759||3203&9521&2336&6131&6203&7185&5489&2413&7937&100029&100052&2928&2429&1751&1671&1669&2774&1749&7209&2477&1797&2439&4041&100004&100273&7449&100197&100036&5699&2852&100091&7529&6613&3483&100049&4769&6385&6437&3135&3115&5115&2568&5619&2411&2785&6909&6209&2639&4997&2688&4921&2647&2817&4237&6007&5669&7349&7215&2683&6745&3679&6159&7929&5977&3116&3841&2775&4337&2988&7825&4929&6259&2931&7725&2598&5133&2503&2620&2502&2811&2691&7177&3927&2760&6955&3719&2646&7183&2556&6619&6009&3082&6123&4413&2624&4545&7719&5985&2672&1715&5219&5479&6411&6649&2979&4341&3873&4035&2857&6727&3943&3061&6939&2891&5953&6049&6251&6657&2675&7781&2777&6767&2561&3071&5399&6463&8109&6027&6047&6119&7093&4613&6477&5975&6181&7107&4925&4977&7579&2736&2927&6931&6507&5411&5891&3064&3150&4137&3084&3639&485&5835&3885&3901&5925&3379&2991&4695&6859&6419&7019&3743&1674&7501&6557&3481&4451&7713&3027&2824&4087&6979&3331&7797&6631&7287&2551&7573&2868&6125&6225&5019&7889&4287&3087&2649&7837&4227&2609&6399&2615&7711&2444&7465&2830&6561&6415&2680&3925&7027&5365&4629&7893&7017&7127&6881&6247&1673&4649&3160&6943&5981&7291&6381&1739&5837&1694&7199&6877&6831&2838&6843&7361&7069&7451&7269&7191&7675&6635&7803&2957&6787&7681&4317&3847&6863&7795&6547&2584&4133&4471&2521&6581&7913&3745&1781&3829&2807&1755&6029&1685&2671&3827&4421&6923&3749&2867&3459&7631&4195&2625&1670&2744&1794&2655&7849&7059&7213&6667&7133&6543&3705&1672&4761&2930&6233&6299&3881&4995&2627&1784&6951&2626&4759&2511&7071&1987&3439&2648&2621&2778&3329&6405&3549&3757&1688&3143&6291&1667&2707&1759&6641&7037&6621&1677&6809&2875&2702&3215&1764&5425&6497&7899&3741&6793&4045&1679&6491&1719&6071&6927&5403&6439&7005&2758", + "分类截取模式": "0", + "分类列表数组规则": "vList", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "sIntroduction", + "分类片单链接": "lProfileRoom", + "分类片单图片": "sScreenshot", + "分类片单副标题": "sNick", + "分类片单链接加前缀": "http://lxajh.top/tv/huya.php?id=", + "分类片单链接加后缀": "#GD线路$https://www.goodiptv.club/huya/'input'", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "https://search.cdn.huya.com/?m=Search&do=getSearchContent&plt=m&q={wd}&uid=0&app=11&v=4&typ=-5&start=0@&rows=40", + "POST请求数据": "", + "搜索截取模式": "0", + "搜索列表数组规则": "response.3.docs", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "game_screenshot", + "搜索片单标题": "game_nick", + "搜索片单链接": "room_id", + "搜索片单副标题": "gameName", + "搜索片单链接加前缀": "http://lxajh.top/tv/huya.php?id=", + "搜索片单链接加后缀": "#GD线路$https://www.goodiptv.club/huya/'input'", + "链接是否直接播放": "1", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": "/huya", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/香雅情/json/高中课堂.json b/香雅情/json/高中课堂.json new file mode 100644 index 0000000..c90fc17 --- /dev/null +++ b/香雅情/json/高中课堂.json @@ -0,0 +1,1581 @@ +{ + "cookie": "clan://XYQTVBox/bilicookie.txt", + "classes": [ + { + "type_name": "高一语文", + "type_id": "高一语文" + }, + { + "type_name": "高一数学", + "type_id": "高一数学" + }, + { + "type_name": "高一英语", + "type_id": "高一英语" + }, + { + "type_name": "高一历史", + "type_id": "高一历史" + }, + { + "type_name": "高一地理", + "type_id": "高一地理" + }, + { + "type_name": "高一生物", + "type_id": "高一生物" + }, + { + "type_name": "高一思想政治", + "type_id": "高一思想政治" + }, + { + "type_name": "高一物理", + "type_id": "高一物理" + }, + { + "type_name": "高一化学", + "type_id": "高一化学" + }, + { + "type_name": "高二语文", + "type_id": "高二语文" + }, + { + "type_name": "高二数学", + "type_id": "高二数学" + }, + { + "type_name": "高二英语", + "type_id": "高二英语" + }, + { + "type_name": "高二历史", + "type_id": "高二历史" + }, + { + "type_name": "高二地理", + "type_id": "高二地理" + }, + { + "type_name": "高二生物", + "type_id": "高二生物" + }, + { + "type_name": "高二思想政治", + "type_id": "高二思想政治" + }, + { + "type_name": "高二物理", + "type_id": "高二物理" + }, + { + "type_name": "高二化学", + "type_id": "高二化学" + }, + { + "type_name": "高三语文", + "type_id": "高三语文" + }, + { + "type_name": "高三数学", + "type_id": "高三数学" + }, + { + "type_name": "高三英语", + "type_id": "高三英语" + }, + { + "type_name": "高三历史", + "type_id": "高三历史" + }, + { + "type_name": "高三地理", + "type_id": "高三地理" + }, + { + "type_name": "高三生物", + "type_id": "高三生物" + }, + { + "type_name": "高三思想政治", + "type_id": "高三思想政治" + }, + { + "type_name": "高三物理", + "type_id": "高三物理" + }, + { + "type_name": "高三化学", + "type_id": "高三化学" + }, + { + "type_name": "高中信息技术", + "type_id": "高中信息技术" + }, + { + "type_name": "高中信息技术", + "type_id": "高中信息技术" + } + ], + "filter": { + "高一语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一语文" + }, + { + "n": "人教版", + "v": "人教版高一语文" + }, + { + "n": "北师大版", + "v": "北师大版高一语文" + }, + { + "n": "苏教版", + "v": "苏教版高一语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一英语" + }, + { + "n": "人教版", + "v": "人教版高一英语" + }, + { + "n": "北师大版", + "v": "北师大版高一英语" + }, + { + "n": "苏教版", + "v": "苏教版高一英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一数学" + }, + { + "n": "人教版", + "v": "人教版高一数学" + }, + { + "n": "北师大版", + "v": "北师大版高一数学" + }, + { + "n": "苏教版", + "v": "苏教版高一数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一物理" + }, + { + "n": "人教版", + "v": "人教版高一物理" + }, + { + "n": "北师大版", + "v": "北师大版高一物理" + }, + { + "n": "苏教版", + "v": "苏教版高一物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一化学" + }, + { + "n": "人教版", + "v": "人教版高一化学" + }, + { + "n": "北师大版", + "v": "北师大版高一化学" + }, + { + "n": "苏教版", + "v": "苏教版高一化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一历史" + }, + { + "n": "人教版", + "v": "人教版高一历史" + }, + { + "n": "北师大版", + "v": "北师大版高一历史" + }, + { + "n": "苏教版", + "v": "苏教版高一历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一生物" + }, + { + "n": "人教版", + "v": "人教版高一生物" + }, + { + "n": "北师大版", + "v": "北师大版高一生物" + }, + { + "n": "苏教版", + "v": "苏教版高一生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一思想政治" + }, + { + "n": "人教版", + "v": "人教版高一思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高一思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高一思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一地理" + }, + { + "n": "人教版", + "v": "人教版高一地理" + }, + { + "n": "北师大版", + "v": "北师大版高一地理" + }, + { + "n": "苏教版", + "v": "苏教版高一地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二语文" + }, + { + "n": "人教版", + "v": "人教版高二语文" + }, + { + "n": "北师大版", + "v": "北师大版高二语文" + }, + { + "n": "苏教版", + "v": "苏教版高二语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二英语" + }, + { + "n": "人教版", + "v": "人教版高二英语" + }, + { + "n": "北师大版", + "v": "北师大版高二英语" + }, + { + "n": "苏教版", + "v": "苏教版高二英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二数学" + }, + { + "n": "人教版", + "v": "人教版高二数学" + }, + { + "n": "北师大版", + "v": "北师大版高二数学" + }, + { + "n": "苏教版", + "v": "苏教版高二数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二物理" + }, + { + "n": "人教版", + "v": "人教版高二物理" + }, + { + "n": "北师大版", + "v": "北师大版高二物理" + }, + { + "n": "苏教版", + "v": "苏教版高二物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二化学" + }, + { + "n": "人教版", + "v": "人教版高二化学" + }, + { + "n": "北师大版", + "v": "北师大版高二化学" + }, + { + "n": "苏教版", + "v": "苏教版高二化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二历史" + }, + { + "n": "人教版", + "v": "人教版高二历史" + }, + { + "n": "北师大版", + "v": "北师大版高二历史" + }, + { + "n": "苏教版", + "v": "苏教版高二历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二生物" + }, + { + "n": "人教版", + "v": "人教版高二生物" + }, + { + "n": "北师大版", + "v": "北师大版高二生物" + }, + { + "n": "苏教版", + "v": "苏教版高二生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二思想政治" + }, + { + "n": "人教版", + "v": "人教版高二思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高二思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高二思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二地理" + }, + { + "n": "人教版", + "v": "人教版高二地理" + }, + { + "n": "北师大版", + "v": "北师大版高二地理" + }, + { + "n": "苏教版", + "v": "苏教版高二地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三语文" + }, + { + "n": "人教版", + "v": "人教版高三语文" + }, + { + "n": "北师大版", + "v": "北师大版高三语文" + }, + { + "n": "苏教版", + "v": "苏教版高三语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三英语" + }, + { + "n": "人教版", + "v": "人教版高三英语" + }, + { + "n": "北师大版", + "v": "北师大版高三英语" + }, + { + "n": "苏教版", + "v": "苏教版高三英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三数学" + }, + { + "n": "人教版", + "v": "人教版高三数学" + }, + { + "n": "北师大版", + "v": "北师大版高三数学" + }, + { + "n": "苏教版", + "v": "苏教版高三数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三物理" + }, + { + "n": "人教版", + "v": "人教版高三物理" + }, + { + "n": "北师大版", + "v": "北师大版高三物理" + }, + { + "n": "苏教版", + "v": "苏教版高三物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三化学" + }, + { + "n": "人教版", + "v": "人教版高三化学" + }, + { + "n": "北师大版", + "v": "北师大版高三化学" + }, + { + "n": "苏教版", + "v": "苏教版高三化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三历史" + }, + { + "n": "人教版", + "v": "人教版高三历史" + }, + { + "n": "北师大版", + "v": "北师大版高三历史" + }, + { + "n": "苏教版", + "v": "苏教版高三历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三生物" + }, + { + "n": "人教版", + "v": "人教版高三生物" + }, + { + "n": "北师大版", + "v": "北师大版高三生物" + }, + { + "n": "苏教版", + "v": "苏教版高三生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三思想政治" + }, + { + "n": "人教版", + "v": "人教版高三思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高三思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高三思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三地理" + }, + { + "n": "人教版", + "v": "人教版高三地理" + }, + { + "n": "北师大版", + "v": "北师大版高三地理" + }, + { + "n": "苏教版", + "v": "苏教版高三地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/香雅情/lives/FMM_IPV6.txt b/香雅情/lives/FMM_IPV6.txt new file mode 100644 index 0000000..1129786 --- /dev/null +++ b/香雅情/lives/FMM_IPV6.txt @@ -0,0 +1,83 @@ +央视频道,#genre# +CCTV-1_综合,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226231/index.m3u8 +CCTV-2_财经,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226195/index.m3u8 +CCTV-3_综艺,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226397/index.m3u8 +CCTV-4_中文国际,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226191/index.m3u8 +CCTV-5_体育,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226395/index.m3u8 +CCTV-5+_体育赛事,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225761/index.m3u8 +CCTV-6_电影,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226393/index.m3u8 +CCTV-7_国防军事,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226192/index.m3u8 +CCTV-8_电视剧,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226391/index.m3u8 +CCTV-9_纪录,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/index.m3u8 +CCTV-10_科教,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226189/index.m3u8 +CCTV-11_戏曲,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226240/index.m3u8 +CCTV-12_社会与法,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226190/index.m3u8 +CCTV-13_新闻,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226233/index.m3u8 +CCTV-14_少儿,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226193/index.m3u8 +CCTV-15_音乐,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/index.m3u8 +CCTV-16_奥林匹克,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226921/index.m3u8 +CCTV-17_农业农村,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226198/index.m3u8 +CHC动作电影,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8 +CHC家庭影院,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8 +CHC影迷电影,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/index.m3u8 +CGTN英语,https://0472.org/hls/cgtn.m3u8 +CGTN记录,https://0472.org/hls/cgtnd.m3u8 +CGTN俄语,https://0472.org/hls/cgtne.m3u8 +CGTN法语,https://0472.org/hls/cgtnf.m3u8 +CGTN西语,https://0472.org/hls/cgtnx.m3u8 +CGTN阿语,https://0472.org/hls/cgtna.m3u8 + +卫视频道,#genre# +北京卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265027/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=3 +湖南卫视,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225799/index.m3u8 +东方卫视,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225797/index.m3u8 +安徽卫视,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226196/index.m3u8 +江苏卫视,http://[2409:8087:7008:20::2]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225800/index.m3u8 +浙江卫视,http://[2409:8087:7008:20::8]:80/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225798/index.m3u8 +广东卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265034/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265034&livemode=1&stbId=3 +深圳卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265028/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265028&livemode=1&stbId=3 +重庆卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265017/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265017&livemode=1&stbId=3 +四川卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000004000006119/index.m3u8?channel-id=bestzb&Contentid=5000000004000006119&livemode=1&stbId=3 +广西卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000031118/index.m3u8?channel-id=bestzb&Contentid=5000000011000031118&livemode=1&stbId=3 +天津卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265026/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=3 +山东卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265019/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265019&livemode=1&stbId=3 +江西卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265032/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265032&livemode=1&stbId=3 +河北卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000006000040016/index.m3u8?channel-id=bestzb&Contentid=5000000006000040016&livemode=1&stbId=3 +河南卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000002000027731/index.m3u8?channel-id=ystenlive&Contentid=1000000002000027731&livemode=1&stbId=3 +海南卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3 +东南卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265033/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265033&livemode=1&stbId=3 +湖北卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265023/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=3 +贵州卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3 +辽宁卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265022/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265022&livemode=1&stbId=3 +吉林卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3 +内蒙古卫视,https://livestream-bt.nmtv.cn/nmtv/2314general.m3u8?txSecret=35f2dd39972cede5222c6bd2c0efe24b&txTime=77395680 +黑龙江卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/1000000005000265029/index.m3u8?channel-id=ystenlive&Contentid=1000000005000265029&livemode=1&stbId=3 +云南卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000031120/index.m3u8?channel-id=bestzb&Contentid=5000000011000031120&livemode=1&stbId=3 +甘肃卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000031121/index.m3u8?channel-id=bestzb&Contentid=5000000011000031121&livemode=1&stbId=3 +青海卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000006000040015/index.m3u8?channel-id=bestzb&Contentid=5000000006000040015&livemode=1&stbId=3 +三沙卫视,http://[2409:8087:5e00:24::20]:6610/000000001000/1/5000000011000288016/index.m3u8?channel-id=bestzb&Contentid=5000000011000288016&livemode=1&stbId=3 + +浙江频道,#genre# +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8 +浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8 +浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8 +浙江教科,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8 +之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8 +浙江民生,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8 +浙江经济,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8 + +内蒙频道,#genre# +内蒙新闻,https://livestream-bt.nmtv.cn/nmtv/2316general.m3u8?txSecret=b4373417a82ed64e52b0982a66da8df2&txTime=771E8800 +内蒙经济,https://livestream-bt.nmtv.cn/nmtv/2317general.m3u8?txSecret=112b2c4c872de52b0f37aff6ead63ef0&txTime=771E8800 +内蒙少儿,https://livestream-bt.nmtv.cn/nmtv/2318general.m3u8?txSecret=a2c948908728a0733cecbe1fadea23dc&txTime=771E8800 +内蒙文体,https://livestream-bt.nmtv.cn/nmtv/2319general.m3u8?txSecret=c7b5c515d2bb6df442492d54955329a3&txTime=771E8800 +内蒙农牧,https://livestream-bt.nmtv.cn/nmtv/2320general.m3u8?txSecret=4d368a175afa19737a9f5be10af24fe2&txTime=771E8800 +蒙语卫视,https://livestream-bt.nmtv.cn/nmtv/2315general.m3u8?txSecret=4971666599ef9411629213c9a300bf66&txTime=771EF880 +蒙语文化,https://livestream-bt.nmtv.cn/nmtv/2321general.m3u8?txSecret=d9d0fd7a252ef56b515c46a2e21830f4&txTime=771E8800 +呼市新闻综合,https://livestream-bt.nmtv.cn/nmtv/2331general.m3u8?txSecret=4d7342ca5cd74480526ab6d292247aff&txTime=771E8800 +包头新闻综合,https://livestream-bt.nmtv.cn/nmtv/2358general.m3u8?txSecret=98390a77c143a68f0fd64bfe6e181dcb&txTime=771E8800 +鄂尔多斯新闻,https://livestream-bt.nmtv.cn/nmtv/2349general.m3u8?txSecret=e44477052aba305cadeea45aaf1c674a&txTime=771E8800 +巴彦淖尔新闻,https://livestream-bt.nmtv.cn/nmtv/2348general.m3u8?txSecret=6a4ddce077e41b976fe33619fbef2b30&txTime=771E8800 +赤峰新闻综合,https://livestream-bt.nmtv.cn/nmtv/2351general.m3u8?txSecret=8857087aeec2cec44d178a18550fdb8a&txTime=771E8800 +乌兰察布新闻,https://livestream-bt.nmtv.cn/nmtv/2354general.m3u8?txSecret=cf5f71d0000862b18f5813607b3dfd5b&txTime=771E8800 \ No newline at end of file diff --git a/香雅情/spider.jar b/香雅情/spider.jar new file mode 100644 index 0000000..2d91448 Binary files /dev/null and b/香雅情/spider.jar differ