This commit is contained in:
2024-07-12 13:14:45 +08:00
parent 79e1b84c63
commit f44952d783
1075 changed files with 547295 additions and 1136 deletions

View File

@ -0,0 +1,22 @@
var rule = {
title:'310直播',
host:'http://www.310.tv',
url:'/?s=0&t=1&a=fyclass&g=fypage',
searchUrl:'',
searchable:0,
quickSearch:0,
class_name:'热门&足球&篮球',
class_url:'0&1&2',
headers:{
'User-Agent':'MOBILE_UA'
},
timeout:5000,
play_parse:false,
lazy:'',
limit:6,
double:false,
推荐:'*',
一级:'.list_content a;.jiabifeng&&p:lt(5)&&Text;.feleimg img&&src;a&&t-nzf-o;a&&href',
二级:'*',
搜索:'',
}

View File

@ -0,0 +1,39 @@
// 原"幻听网听书"网站 已更名为 "58动漫"
// muban.首图2.二级.title = 'h1--span&&title;.data--span:eq(0)&&Text';
// muban.首图2.二级.desc = '.data--span:eq(3)&&Text;;;.data--span:eq(1)&&Text;.data--span:eq(2)&&Text';
// muban.首图2.二级.content = '.detail-content&&Text';
// muban.首图2.二级.tabs = '.stui-pannel__head.bottom-line&&h3';
muban.vfed.二级.title = 'h1&&Text;.fed-col-md3:eq(0)&&Text';
muban.vfed.二级.desc = '.fed-col-md3:eq(3)&&Text;;;.fed-col-md6--span:eq(0)&&Text;.fed-col-md6--span:eq(1)&&Text';
muban.vfed.二级.tabs = '.nav-tabs&&li';
muban.vfed.二级.lists = '.myui-content__list:eq(#id)&&li';
var rule = {
// title:'幻听网听书',
title:'58动漫',
// 模板:'首图2',
模板:'vfed',
host:'http://www.ting38.com',
// url:'/ting/fyclass-fypage.html',
url:'/search.php?page=fypage&searchtype=5&tid=fyclassfyfilter',
filterable:1,//是否启用分类筛选,
filter_url:'&order={{fl.by}}&area={{fl.area}}&year={{fl.year}}',
filter:{
"1":[{"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":"more","v":"more"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hit"},{"n":"推荐","v":"commend"}]}],
"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":"more","v":"more"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hit"},{"n":"推荐","v":"commend"}]}],
"3":[{"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":"more","v":"more"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hit"},{"n":"推荐","v":"commend"}]}],
"4":[{"key":"area","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":"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":"more","v":"more"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hit"},{"n":"推荐","v":"commend"}]}]
},
filter_def:{
1:{cateId:'1'},
2:{cateId:'2'},
3:{cateId:'3'},
4:{cateId:'4'}
},
searchUrl:'/search.php?page=fypage&searchword=**&searchtype=',
// class_parse: '.stui-header__menu li:gt(0);a&&Text;a&&href;.*/(.*?).html',
// class_parse: '.fed-pops-navbar&&ul.fed-part-rows&&a;a&&Text;a&&href;.*/(.*?).html',
// cate_exclude:'导航',
// 搜索:'.stui-vodlist__media:eq(0) li;a&&title;.lazyload&&data-original;p:eq(0)&&Text;a&&href;.pic-text&&Text',
搜索: '.fed-list-item;a&&title;a&&data-original;.fed-list-remarks&&Text;a&&href',
}

View File

@ -0,0 +1,99 @@
// https://m.agemys.org/#/
var rule = {
title:'AGE动漫',
host:'https://api.agemys.org',
homeUrl:'/v2/update?page=1&size=30',
url:'/v2/catalog?genre=fyclass&fyfilter&page=fypage&size=10',
searchUrl:'/v2/search?query=**&page=fypage',
searchable:2,
quickSearch:0,
filterable:1,
filter:{
"all":[{"key":"area","name":"地区","value":[{"n":"全部","v":"all"},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":"all"},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"all"},{"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"}]},{"key":"class","name":"类型","value":[{"n":"全部","v":"all"},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"恋爱","v":"恋爱"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"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":"by","name":"排序","value":[{"n":"更新时间","v":"time"},{"n":"名称","v":"name"},{"n":"点击量","v":"hits"}]}],
"TV":[{"key":"area","name":"地区","value":[{"n":"全部","v":"all"},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":"all"},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"all"},{"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"}]},{"key":"class","name":"类型","value":[{"n":"全部","v":"all"},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"恋爱","v":"恋爱"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"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":"by","name":"排序","value":[{"n":"更新时间","v":"更新时间"},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}],
"剧场版":[{"key":"area","name":"地区","value":[{"n":"全部","v":"all"},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":"all"},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"all"},{"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"}]},{"key":"class","name":"类型","value":[{"n":"全部","v":"all"},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"恋爱","v":"恋爱"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"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":"by","name":"排序","value":[{"n":"更新时间","v":"更新时间"},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}],
"OVA":[{"key":"area","name":"地区","value":[{"n":"全部","v":"all"},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":"all"},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":"all"},{"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"}]},{"key":"class","name":"类型","value":[{"n":"全部","v":"all"},{"n":"搞笑","v":"搞笑"},{"n":"运动","v":"运动"},{"n":"励志","v":"励志"},{"n":"热血","v":"热血"},{"n":"战斗","v":"战斗"},{"n":"竞技","v":"竞技"},{"n":"校园","v":"校园"},{"n":"青春","v":"青春"},{"n":"爱情","v":"爱情"},{"n":"恋爱","v":"恋爱"},{"n":"冒险","v":"冒险"},{"n":"后宫","v":"后宫"},{"n":"百合","v":"百合"},{"n":"治愈","v":"治愈"},{"n":"萝莉","v":"萝莉"},{"n":"魔法","v":"魔法"},{"n":"悬疑","v":"悬疑"},{"n":"推理","v":"推理"},{"n":"奇幻","v":"奇幻"},{"n":"科幻","v":"科幻"},{"n":"游戏","v":"游戏"},{"n":"神魔","v":"神魔"},{"n":"恐怖","v":"恐怖"},{"n":"血腥","v":"血腥"},{"n":"机战","v":"机战"},{"n":"战争","v":"战争"},{"n":"犯罪","v":"犯罪"},{"n":"历史","v":"历史"},{"n":"社会","v":"社会"},{"n":"职场","v":"职场"},{"n":"剧情","v":"剧情"},{"n":"伪娘","v":"伪娘"},{"n":"耽美","v":"耽美"},{"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":"by","name":"排序","value":[{"n":"更新时间","v":"更新时间"},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}]
},
filter_url:'label={{fl.class or "all"}}&letter={{fl.letter or "all"}}&order={{fl.by or "time"}}&region={{fl.area or "all"}}&resource=all&season=all&status=all&year={{fl.year or "all"}}',
headers:{
'User-Agent':'MOBILE_UA',
},
timeout:5000,
class_name:'TV&剧场版&OVA',
class_url:'TV&剧场版&OVA',
play_parse:true,
lazy:`js:
let purl = input.split("|")[0];
let from = input.split("|")[1];
let referer = 'https://m.agemys.org/';
if(/99m3u8|tkm3u8|hnm3u8|lzm3u8|wolong|wjm3u8|sdm3u8|kbm3u8|bjm3u8|xkm3u8|tpm3u8/.test(from)){
let purl2 = request('https://zj.sp-flv.com:8443/?url=' + purl, {
headers: {
"Referer": referer
}
}).match(/r video_url.*= \'(.*?)\'/)[1];
input = {
jx: 0,
url: purl2,
parse: 0,
header: JSON.stringify({
'referer': referer
})
}
} else {
input = {
jx: 0,
url: 'https://vip.sp-flv.com:8443/?url=' + purl,
parse: 1,
header: JSON.stringify({
'referer': referer
})
}
}
`,
limit:6,
推荐:'json:videos;Title;PicSmall;NewTitle;AID',
一级:'json:videos;name;cover;uptodate;id',
二级:`js:
try {
let html = JSON.parse(request(input));
let node = html.video;
let episodes = node.playlists;
VOD = {
vod_id: node["id"],
vod_name: node["name"],
vod_pic: node["cover"],
type_name: node["tags"],
vod_year: node["year"],
vod_area: node["area"],
vod_remarks: node["uptodate"],
vod_actor: node["company"],
vod_director: node["writer"],
vod_content: node["intro_clean"],
};
if (typeof play_url === "undefined") {
var play_url = "";
}
let playFrom = [];
let playList = [];
let kplayList = [];
Object.keys(episodes).forEach(function(key) {
playFrom.append(key);
kplayList = episodes[key].map(function(it) {
return it[0] + "$" + play_url + urlencode(it[1] + "|" + key)
}).join("#")
playList.append(kplayList);
});
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;
log(VOD);
} catch (e) {
log("获取二级详情页发生错误:" + e.message);
}
`,
detailUrl:'/v2/detail/fyid',
搜索:'json:data.videos;name;cover;uptodate;id;intro',
}

View File

@ -0,0 +1,19 @@
muban.海螺3.二级.title = '.hl-dc-title&&Text;.hl-col-xs-12.hl-col-sm-4--em:eq(2)&&Text';
muban.海螺3.二级.desc = '.hl-col-xs-12:eq(2)&&Text;.hl-col-xs-12.hl-col-sm-4:(0)&&Text;.hl-col-xs-12.hl-col-sm-4:(1)&&Text;.hl-col-xs-12:eq(3)&&Text;.hl-col-xs-12:eq(4)&&Text';
var rule = {
title:'AnFuns动漫',
模板:'海螺3',
host:'https://www.anfuns.cc',
cate_exclude: '最新|排行',
// url:'/type/fyclass-fypage.html',
url:'/show/fyclassfyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'---{{fl.year}}{{fl.by}}/page/fypage',
filter: {
"1":[{"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":"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"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"/by/time"},{"n":"最热","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"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":"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"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"/by/time"},{"n":"最热","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"3":[{"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":"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"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"/by/time"},{"n":"最热","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"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","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"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"/by/time"},{"n":"最热","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}]
},
searchUrl:'/search/page/fypage/wd/**.html',
}

4501
tvbox/shenxian/lib/Bili.json Normal file
View File

@ -0,0 +1,4501 @@
{
"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": "风景4K"
},
{
"type_name": "说案",
"type_id": "说案"
},
{
"type_name": "知名UP主",
"type_id": "知名UP主"
},
{
"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": "MV",
"type_id": "MV4K"
},
{
"type_name": "舞曲",
"type_id": "舞曲超清"
},
{
"type_name": "4K",
"type_id": "4K"
},
{
"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": "Windows",
"type_id": "Windows"
}
],
"cookie": "buvid3=8B57D3BA-607A-1E85-018A-E8C430023CED42659infoc; b_lsid=BEB8EE7F_18742FF8C2E; bsource=search_baidu; _uuid=DE810E367-B52C-AF6E-A612-EDF4C31567F358591infoc; b_nut=100; buvid_fp=711a632b5c876fa8bbcf668c1efba551; SESSDATA=7624af93%2C1696008331%2C862c8%2A42; bili_jct=141a474ef3ce8cf2fedf384e68f6625d; DedeUserID=3493271303096985; DedeUserID__ckMd5=212a836c164605b7; sid=5h4ruv6o; buvid4=978E9208-13DA-F87A-3DC0-0B8EDF46E80434329-123040301-dWliG5BMrUb70r3g583u7w%3D%3D",
"filter": {
"考公考证": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "说案"
},
{
"n": "汤圆",
"v": "汤圆说案"
},
{
"n": "唐唐",
"v": "唐唐说案"
},
{
"n": "罗翔",
"v": "罗翔说刑法"
},
{
"n": "何家弘",
"v": "何家弘说案"
},
{
"n": "韩诺",
"v": "韩诺说案"
},
{
"n": "老V",
"v": "老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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "全部演讲4K"
},
{
"n": "A艾跃进",
"v": "艾跃进演讲4K"
},
{
"n": "C超级演说家",
"v": "超级演说家4K"
},
{
"n": "D电影",
"v": "电影演讲4K"
},
{
"n": "D典籍里的中国",
"v": "典籍里的中国4K"
},
{
"n": "G感动中国",
"v": "感动中国4K"
},
{
"n": "G郭继承",
"v": "郭继承演讲4K"
},
{
"n": "H华春莹",
"v": "华春莹演讲4K"
},
{
"n": "L雷军",
"v": "雷军演讲4K"
},
{
"n": "L罗翔",
"v": "罗翔演讲4K"
},
{
"n": "R任正非",
"v": "任正非演讲4K"
},
{
"n": "TED",
"v": "TED演讲4K"
},
{
"n": "W汪文斌",
"v": "汪文斌演讲4K"
},
{
"n": "Y一刻",
"v": "一刻演讲4K"
},
{
"n": "Z赵立坚",
"v": "赵立坚演讲4K"
},
{
"n": "Z郑强",
"v": "郑强演讲4K"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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"
}
]
}
],
"风景4K": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "风景4K"
},
{
"n": "A澳门",
"v": "澳门风景4K"
},
{
"n": "A安徽",
"v": "安徽风景4K"
},
{
"n": "B布达拉宫",
"v": "布达拉宫风景4K"
},
{
"n": "B北京",
"v": "北京风景4K"
},
{
"n": "C重庆",
"v": "重庆风景4K"
},
{
"n": "C草原",
"v": "草原风景4K"
},
{
"n": "D大海",
"v": "大海风景4K"
},
{
"n": "F福建",
"v": "福建风景4K"
},
{
"n": "G广东",
"v": "广东风景4K"
},
{
"n": "G广西",
"v": "广西风景4K"
},
{
"n": "G贵州",
"v": "贵州风景4K"
},
{
"n": "G甘肃",
"v": "甘肃风景4K"
},
{
"n": "H海南",
"v": "海南风景4K"
},
{
"n": "H河北",
"v": "河北风景4K"
},
{
"n": "H河南",
"v": "河南风景4K"
},
{
"n": "H湖北",
"v": "湖北风景4K"
},
{
"n": "H湖南",
"v": "湖南风景4K"
},
{
"n": "H黑龙江",
"v": "黑龙江风景4K"
},
{
"n": "J吉林",
"v": "吉林风景4K"
},
{
"n": "J江苏",
"v": "江苏风景4K"
},
{
"n": "J江西",
"v": "江西风景4K"
},
{
"n": "L辽宁",
"v": "辽宁风景4K"
},
{
"n": "M民宿",
"v": "民宿风景4K"
},
{
"n": "N内蒙古",
"v": "内蒙古风景4K"
},
{
"n": "N宁夏",
"v": "宁夏风景4K"
},
{
"n": "Q青海",
"v": "青海风景4K"
},
{
"n": "S上海",
"v": "上海风景4K"
},
{
"n": "S陕西",
"v": "陕西风景4K"
},
{
"n": "S四川",
"v": "四川风景4K"
},
{
"n": "S山西",
"v": "山西风景4K"
},
{
"n": "S山东",
"v": "山东风景4K"
},
{
"n": "T天津",
"v": "天津风景4K"
},
{
"n": "T台湾",
"v": "台湾风景4K"
},
{
"n": "T天空",
"v": "天空风景4K"
},
{
"n": "X西湖",
"v": "西湖风景4K"
},
{
"n": "X西藏",
"v": "西藏风景4K"
},
{
"n": "X新疆",
"v": "新疆风景4K"
},
{
"n": "X香港",
"v": "香港风景4K"
},
{
"n": "Y云南",
"v": "云南风景4K"
},
{
"n": "Z浙江",
"v": "浙江风景4K"
}
]
},
{
"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"
}
]
}
],
"MV4K": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "MV4K"
},
{
"n": "A阿杜",
"v": "阿杜MV4K"
},
{
"n": "A阿黛尔",
"v": "阿黛尔MV4K"
},
{
"n": "BBeyond",
"v": "BeyondMV4K"
},
{
"n": "BBy2",
"v": "By2MV4K"
},
{
"n": "BBIGBANG",
"v": "BIGBANGMV4K"
},
{
"n": "B布兰妮",
"v": "布兰妮MV4K"
},
{
"n": "C陈奕迅",
"v": "陈奕迅MV4K"
},
{
"n": "C蔡依林",
"v": "蔡依林MV4K"
},
{
"n": "C初音未来",
"v": "初音未来MV4K"
},
{
"n": "C蔡健雅",
"v": "蔡健雅MV4K"
},
{
"n": "C陈小春",
"v": "陈小春MV4K"
},
{
"n": "C草蜢",
"v": "草蜢MV4K"
},
{
"n": "C陈慧娴",
"v": "陈慧娴MV4K"
},
{
"n": "C崔健",
"v": "崔健MV4K"
},
{
"n": "C仓木麻衣",
"v": "仓木麻衣MV4K"
},
{
"n": "D戴荃",
"v": "戴荃MV4K"
},
{
"n": "D动力火车",
"v": "动力火车MV4K"
},
{
"n": "D邓丽君",
"v": "邓丽君MV4K"
},
{
"n": "D丁当",
"v": "丁当MV4K"
},
{
"n": "D刀郎",
"v": "刀郎MV4K"
},
{
"n": "D邓紫棋",
"v": "邓紫棋MV4K"
},
{
"n": "D戴佩妮",
"v": "戴佩妮MV4K"
},
{
"n": "D邓丽君",
"v": "邓丽君MV4K"
},
{
"n": "F飞儿乐队",
"v": "飞儿乐队MV4K"
},
{
"n": "F费玉清",
"v": "费玉清MV4K"
},
{
"n": "F费翔",
"v": "费翔MV4K"
},
{
"n": "F方大同",
"v": "方大同MV4K"
},
{
"n": "F房东的猫",
"v": "房东的猫MV4K"
},
{
"n": "F凤飞飞",
"v": "凤飞飞MV4K"
},
{
"n": "F凤凰传奇",
"v": "凤凰传奇MV4K"
},
{
"n": "G古风歌曲",
"v": "古风歌曲4K"
},
{
"n": "G国乐大典",
"v": "国乐大典4K"
},
{
"n": "G郭采洁",
"v": "郭采洁MV4K"
},
{
"n": "G光良",
"v": "光良MV4K"
},
{
"n": "G郭静",
"v": "郭静MV4K"
},
{
"n": "G郭富城",
"v": "郭富城MV4K"
},
{
"n": "H胡彦斌",
"v": "胡彦斌MV4K"
},
{
"n": "H胡夏",
"v": "胡夏MV4K"
},
{
"n": "H韩红",
"v": "韩红MV4K"
},
{
"n": "H黄品源",
"v": "黄品源MV4K"
},
{
"n": "H黄小琥",
"v": "黄小琥MV4K"
},
{
"n": "H花儿乐队",
"v": "花儿乐队MV4K"
},
{
"n": "H黄家强",
"v": "黄家强MV4K"
},
{
"n": "H后街男孩",
"v": "后街男孩MV4K"
},
{
"n": "J经典老歌",
"v": "经典老歌4K"
},
{
"n": "J贾斯丁比伯",
"v": "贾斯丁比伯MV4K"
},
{
"n": "J金池",
"v": "金池MV4K"
},
{
"n": "J金志文",
"v": "金志文MV4K"
},
{
"n": "J焦迈奇",
"v": "焦迈奇MV4K"
},
{
"n": "K筷子兄弟",
"v": "筷子兄弟MV4K"
},
{
"n": "L李玟",
"v": "李玟MV4K"
},
{
"n": "L林忆莲",
"v": "林忆莲MV4K"
},
{
"n": "L李克勤",
"v": "李克勤MV4K"
},
{
"n": "L刘宪华",
"v": "刘宪华MV4K"
},
{
"n": "L李圣杰",
"v": "李圣杰MV4K"
},
{
"n": "L林宥嘉",
"v": "林宥嘉MV4K"
},
{
"n": "L梁静茹",
"v": "梁静茹MV4K"
},
{
"n": "L李健",
"v": "李健MV4K"
},
{
"n": "L林俊杰",
"v": "林俊杰MV4K"
},
{
"n": "L李玉刚",
"v": "李玉刚MV4K"
},
{
"n": "L林志炫",
"v": "林志炫MV4K"
},
{
"n": "L李荣浩",
"v": "李荣浩MV4K"
},
{
"n": "L李宇春",
"v": "李宇春MV4K"
},
{
"n": "L洛天依",
"v": "洛天依MV4K"
},
{
"n": "L林子祥",
"v": "林子祥MV4K"
},
{
"n": "L李宗盛",
"v": "李宗盛MV4K"
},
{
"n": "L黎明",
"v": "黎明MV4K"
},
{
"n": "L刘德华",
"v": "刘德华MV4K"
},
{
"n": "L罗大佑",
"v": "罗大佑MV4K"
},
{
"n": "L林肯公园",
"v": "林肯公园MV4K"
},
{
"n": "LLadyGaga",
"v": "LadyGagaMV4K"
},
{
"n": "L旅行团乐队",
"v": "旅行团乐队MV4K"
},
{
"n": "M莫文蔚",
"v": "莫文蔚MV4K"
},
{
"n": "M毛不易",
"v": "毛不易MV4K"
},
{
"n": "M梅艳芳",
"v": "梅艳芳MV4K"
},
{
"n": "M迈克尔杰克逊",
"v": "迈克尔杰克逊MV4K"
},
{
"n": "N南拳妈妈",
"v": "南拳妈妈MV4K"
},
{
"n": "P朴树",
"v": "朴树MV4K"
},
{
"n": "Q齐秦",
"v": "齐秦MV4K"
},
{
"n": "Q青鸟飞鱼",
"v": "青鸟飞鱼MV4K"
},
{
"n": "R容祖儿",
"v": "容祖儿MV4K"
},
{
"n": "R热歌",
"v": "热歌MV4K"
},
{
"n": "R任贤齐",
"v": "任贤齐MV4K"
},
{
"n": "S水木年华",
"v": "水木年华MV4K"
},
{
"n": "S孙燕姿",
"v": "孙燕姿MV4K"
},
{
"n": "S苏打绿",
"v": "苏打绿MV4K"
},
{
"n": "SSHE",
"v": "SHEMV4K"
},
{
"n": "S孙楠",
"v": "孙楠MV4K"
},
{
"n": "T陶喆",
"v": "陶喆MV4K"
},
{
"n": "T谭咏麟",
"v": "谭咏麟MV4K"
},
{
"n": "T田馥甄",
"v": "田馥甄MV4K"
},
{
"n": "T谭维维",
"v": "谭维维MV4K"
},
{
"n": "T逃跑计划",
"v": "逃跑计划MV4K"
},
{
"n": "T田震",
"v": "田震MV4K"
},
{
"n": "T谭晶",
"v": "谭晶MV4K"
},
{
"n": "T屠洪刚",
"v": "屠洪刚MV4K"
},
{
"n": "T泰勒·斯威夫特",
"v": "泰勒·斯威夫特MV4K"
},
{
"n": "W王力宏",
"v": "王力宏MV4K"
},
{
"n": "W王杰",
"v": "王杰MV4K"
},
{
"n": "W吴克群",
"v": "吴克群MV4K"
},
{
"n": "W王心凌",
"v": "王心凌MV4K"
},
{
"n": "W汪峰",
"v": "汪峰MV4K"
},
{
"n": "W伍佰",
"v": "伍佰MV4K"
},
{
"n": "W王菲",
"v": "王菲MV4K"
},
{
"n": "W五月天",
"v": "五月天MV4K"
},
{
"n": "W汪苏泷",
"v": "汪苏泷MV4K"
},
{
"n": "X徐佳莹",
"v": "徐佳莹MV4K"
},
{
"n": "X弦子",
"v": "弦子MV4K"
},
{
"n": "X萧亚轩",
"v": "萧亚轩MV4K"
},
{
"n": "X许巍",
"v": "许巍MV4K"
},
{
"n": "X薛之谦",
"v": "薛之谦MV4K"
},
{
"n": "X许嵩",
"v": "许嵩MV4K"
},
{
"n": "X小虎队",
"v": "小虎队MV4K"
},
{
"n": "X萧敬腾",
"v": "萧敬腾MV4K"
},
{
"n": "X谢霆锋",
"v": "谢霆锋MV4K"
},
{
"n": "X徐小凤",
"v": "徐小凤MV4K"
},
{
"n": "X信乐队",
"v": "信乐队MV4K"
},
{
"n": "Y夜愿乐队",
"v": "夜愿乐队MV4K"
},
{
"n": "Y原创音乐",
"v": "原创音乐MV4K"
},
{
"n": "Y羽泉",
"v": "羽泉MV4K"
},
{
"n": "Y粤语",
"v": "粤语MV4K"
},
{
"n": "Y郁可唯",
"v": "郁可唯MV4K"
},
{
"n": "Y叶倩文",
"v": "叶倩文MV4K"
},
{
"n": "Y杨坤",
"v": "杨坤MV4K"
},
{
"n": "Y庾澄庆",
"v": "庾澄庆MV4K"
},
{
"n": "Y尤长靖",
"v": "尤长靖MV4K"
},
{
"n": "Y易烊千玺",
"v": "易烊千玺MV4K"
},
{
"n": "Y袁娅维",
"v": "袁娅维MV4K"
},
{
"n": "Y杨丞琳",
"v": "杨丞琳MV4K"
},
{
"n": "Y杨千嬅",
"v": "杨千嬅MV4K"
},
{
"n": "Y杨宗纬",
"v": "杨宗纬MV4K"
},
{
"n": "Z周杰伦",
"v": "周杰伦MV4K"
},
{
"n": "Z张学友",
"v": "张学友MV4K"
},
{
"n": "Z张信哲",
"v": "张信哲MV4K"
},
{
"n": "Z张宇",
"v": "张宇MV4K"
},
{
"n": "Z周华健",
"v": "周华健MV4K"
},
{
"n": "Z张韶涵",
"v": "张韶涵MV4K"
},
{
"n": "Z周深",
"v": "周深MV4K"
},
{
"n": "Z纵贯线",
"v": "纵贯线MV4K"
},
{
"n": "Z赵雷",
"v": "赵雷MV4K"
},
{
"n": "Z周传雄",
"v": "周传雄MV4K"
},
{
"n": "Z张国荣",
"v": "张国荣MV4K"
},
{
"n": "Z周慧敏",
"v": "周慧敏MV4K"
},
{
"n": "Z张惠妹",
"v": "张惠妹MV4K"
},
{
"n": "Z周笔畅",
"v": "周笔畅MV4K"
},
{
"n": "Z郑中基",
"v": "郑中基MV4K"
},
{
"n": "Z张艺兴",
"v": "张艺兴MV4K"
},
{
"n": "Z张震岳",
"v": "张震岳MV4K"
},
{
"n": "Z中国好声音",
"v": "中国好声音MV4K"
},
{
"n": "Z张雨生",
"v": "张雨生MV4K"
},
{
"n": "Z郑智化",
"v": "郑智化MV4K"
},
{
"n": "Z卓依婷",
"v": "卓依婷MV4K"
},
{
"n": "Z中岛美雪",
"v": "中岛美雪MV4K"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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"
}
]
}
],
"知名UP主": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "知名UP主"
},
{
"n": "菠萝赛东",
"v": "菠萝赛东"
},
{
"n": "冯提莫",
"v": "冯提莫"
},
{
"n": "林延秋",
"v": "林延秋"
},
{
"n": "-LKs-",
"v": "-LKs-"
},
{
"n": "小约翰可汗",
"v": "小约翰可汗"
},
{
"n": "low馆长",
"v": "low馆长"
},
{
"n": "自说自话的总裁",
"v": "自说自话的总裁"
},
{
"n": "所长林超",
"v": "所长林超"
},
{
"n": "世界未解之谜M",
"v": "世界未解之谜M"
},
{
"n": "李永乐老师官方",
"v": "李永乐老师官方"
},
{
"n": "罗兹",
"v": "罗兹"
},
{
"n": "回到2049",
"v": "回到2049"
},
{
"n": "二次元的中科院物理所",
"v": "二次元的中科院物理所"
},
{
"n": "毕导THU",
"v": "毕导THU"
},
{
"n": "罗翔讲刑法",
"v": "罗翔讲刑法"
},
{
"n": "戴博士实验室",
"v": "戴博士实验室"
},
{
"n": "芳斯塔芙",
"v": "芳斯塔芙"
},
{
"n": "参赛者网",
"v": "参赛者网"
},
{
"n": "三维地图看世界",
"v": "三维地图看世界"
},
{
"n": "有机社会",
"v": "有机社会"
},
{
"n": "乌鸦校尉CaptainWuya",
"v": "乌鸦校尉CaptainWuya"
},
{
"n": "果壳",
"v": "果壳"
},
{
"n": "严伯钧",
"v": "严伯钧"
},
{
"n": "是你们的康康",
"v": "是你们的康康"
},
{
"n": "老爸评测",
"v": "老爸评测"
},
{
"n": "硬核的半佛仙人",
"v": "硬核的半佛仙人"
},
{
"n": "盗月社食遇记",
"v": "盗月社食遇记"
},
{
"n": "我是郭杰瑞",
"v": "我是郭杰瑞"
},
{
"n": "无穷小亮的科普日常",
"v": "无穷小亮的科普日常"
},
{
"n": "papi酱",
"v": "papi酱"
},
{
"n": "老番茄",
"v": "老番茄"
},
{
"n": "绵羊料理",
"v": "绵羊料理"
},
{
"n": "老师好我叫何同学",
"v": "老师好我叫何同学"
},
{
"n": "敬汉卿",
"v": "敬汉卿"
},
{
"n": "周六野Zoey",
"v": "周六野Zoey"
},
{
"n": "木鱼水心",
"v": "木鱼水心"
},
{
"n": "凉风Kaze",
"v": "凉风Kaze"
},
{
"n": "小潮院长",
"v": "小潮院长"
},
{
"n": "中国BOY超级大猩猩",
"v": "中国BOY超级大猩猩"
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "音乐"
},
{
"n": "钢琴曲",
"v": "钢琴曲"
},
{
"n": "协奏曲",
"v": "协奏曲r"
},
{
"n": "中国古风音乐",
"v": "中国古风音乐"
},
{
"n": "背景音乐",
"v": "背景音乐"
},
{
"n": "助眠音乐r",
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "平面设计教学"
},
{
"n": "Adobe Photoshop",
"v": "Adobe Photoshop教程"
},
{
"n": "Adobe Illustrator",
"v": "Adobe Illustrator教程"
},
{
"n": "CorelDRAW",
"v": "CorelDRAW教程"
},
{
"n": "Adobe InDesign",
"v": "Adobe InDesign教程"
},
{
"n": "Adobe Pagermaker",
"v": "Adobe Pagermaker教程"
},
{
"n": "SAI",
"v": "SAI教程"
},
{
"n": "Adobe Bridge",
"v": "Adobe Bridge教程"
},
{
"n": "Adobe Pagermaker",
"v": "Adobe Pagermake教程r"
},
{
"n": "3D Studio Max",
"v": "3D Studio Max教程"
},
{
"n": "PR",
"v": "PR教程"
},
{
"n": "AE",
"v": "AE教程"
},
{
"n": "CINEMA 4D",
"v": "CINEMA 4D教程"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"n": "全部",
"v": "软件教程"
},
{
"n": "MT管理器",
"v": "MT管理器"
},
{
"n": "NP管理器",
"v": "NP管理器"
},
{
"n": "mixplorer",
"v": "mixplorer"
},
{
"n": "脱壳",
"v": "脱壳"
},
{
"n": "爬虫",
"v": "爬虫"
},
{
"n": "json&jar",
"v": "json&jar"
},
{
"n": "网盘挂载",
"v": "网盘挂载"
},
{
"n": "alist+WebDav",
"v": "alist+WebDav"
},
{
"n": "TVBox修改",
"v": "TVBox修改教程"
},
{
"n": "EXCEL",
"v": "EXCEL教程"
},
{
"n": "Git入门到精通",
"v": "Git入门到精通"
},
{
"n": "java",
"v": "java教程"
},
{
"n": "phyton",
"v": "phyton教程"
},
{
"n": "xml",
"v": "xml教程"
}
]
},
{
"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"
}
]
}
],
"Windows": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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"
}
]
}
],
"4K": [{
"key": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "苏菜食谱"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"key": "tid",
"name": "分类",
"value": [{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "西班牙菜"
}, {
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "order",
"name": "排序",
"value": [{
"n": "综合排序",
"v": "0"
},
{
"n": "最多点击",
"v": "click"
},
{
"n": "最新发布",
"v": "pubdate"
},
{
"n": "最多弹幕",
"v": "dm"
},
{
"n": "最多收藏",
"v": "stow"
}
]
},
{
"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": "自由泳"
}
]
},
{
"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"
}
]
}
]
}
}

View File

@ -0,0 +1,44 @@
// 道长 drpy仓库 https://gitcode.net/qq_32394351/dr_py
// 道长 drpy安卓本地搭建说明 https://code.gitlink.org.cn/api/v1/repos/hjdhnx/dr_py/blob/master/%E5%AE%89%E5%8D%93%E6%9C%AC%E5%9C%B0%E6%90%AD%E5%BB%BA%E8%AF%B4%E6%98%8E.md
// 道长 drpy写源 模板规则说明 https://gitcode.net/qq_32394351/dr_py#%E6%A8%A1%E6%9D%BF%E8%A7%84%E5%88%99%E8%AF%B4%E6%98%8E
// 道长 drpy写源 套模模版 https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/js/%E6%A8%A1%E6%9D%BF.js
// 道长 drpy写源 相关视频教程 https://www.youtube.com/watch?v=AK7cN-fcwm4
// 道长 drpy写源 写源教学视频 https://t.me/fongmi_offical/54080/63553
// 海阔下载 https://haikuo.lanzoui.com/u/GoldRiver
// 影视TV 官方TG Drpy群 https://t.me/fongmi_offical/63689
// 影视TV 官方TG 下载 https://t.me/fongmi_release
var rule = {
title:'JRKAN直播',
host:'http://www.jrkankan.com/?lan=1',
// JRKAN备用域名:www.jrkankan.com / www.jrkan365.com / jrsyyds.com / www.jryyds.com / jrskan.com / jrsbxj.com
// JRKAN网址发布:qiumi1314.com
url:'/fyclass',
searchUrl:'',
searchable:0,
quickSearch:0,
class_name:'全部',
class_url:'/',
//class_url:'?live',
headers:{
'User-Agent':'MOBILE_UA'
},
timeout:5000,
play_parse:true,
lazy:"",
limit:6,
double:false,
推荐:'*',
// 一级:'.loc_match:eq(2) ul;li:gt(1):lt(4)&&Text;img&&src;li:lt(2)&&Text;a:eq(1)&&href',//play.sportsteam333.com
一级:"js:var items=[];pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd;var html=request(input);var tabs=pdfa(html,'body&&.d-touch');tabs.forEach(function(it){var pz=pdfh(it,'.name:eq(1)&&Text');var ps=pdfh(it,'.name:eq(0)&&Text');var pk=pdfh(it,'.name:eq(2)&&Text');var img=pd(it,'img&&src');var timer=pdfh(it,'.lab_time&&Text');var url=pd(it,'a.me&&href');items.push({desc:timer+'🏆'+ps,title:pz+'🆚'+pk,pic_url:img,url:url})});setResult(items);",
二级:{
"title":".sub_list li:lt(2)&&Text;.sub_list li:eq(0)&&Text",
"img":"img&&src",
"desc":";;;.lab_team_home&&Text;.lab_team_away&&Text",
"content":".sub_list ul&&Text",
"tabs":"js:TABS=['JRKAN直播']",
"lists":"js:LISTS=[];pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd;let html=request(input);let data=pdfa(html,'.sub_playlist&&a');TABS.forEach(function(tab){let d=data.map(function(it){let name=pdfh(it,'strong&&Text');let url=pd(it,'a&&data-play');return name+'$'+url});LISTS.push(d)});",
},
搜索:'',
}

View File

@ -0,0 +1,158 @@
// 搜索功能需登录使用
var rule = {
title: 'JustLive',
host: 'http://live.yj1211.work',
// homeUrl: '/api/live/getRecommend?page=1&size=20',//网站的首页链接,用于分类获取和推荐获取
homeUrl: '/api/live/getRecommendByPlatformArea?platform=bilibili&area=舞见&page=1&size=20',//网站的首页链接,用于分类获取和推荐获取
url: '/api/live/getRecommendByPlatformArea?platform=fyclass&area=fyfilter&page=fypage&size=20', //网站的分类页面链接
class_name: '斗鱼&虎牙&哔哩&网易&抖音',
class_url: 'douyu&huya&bilibili&cc&douyin',
filterable: 1,
filter_url: '{{fl.area}}',
filter: {
"douyu":[{"key":"area","name":"分区","value":[{"n":"原创IP","v":"原创IP"},{"n":"一起看","v":"一起看"},{"n":"二次元","v":"二次元"},{"n":"音乐","v":"音乐"},{"n":"户外","v":"户外"},{"n":"美食","v":"美食"},{"n":"心动派对","v":"心动派对"},{"n":"音遇恋人","v":"音遇恋人"},{"n":"星秀","v":"星秀"},{"n":"心动FM","v":"心动FM"},{"n":"娱乐推荐","v":"娱乐推荐"},{"n":"中国地质大学(武汉)","v":"中国地质大学(武汉)"},{"n":"颜值","v":"颜值"},{"n":"企鹅直播","v":"企鹅直播"},{"n":"数码科技","v":"数码科技"},{"n":"纪录片","v":"纪录片"},{"n":"成年教育","v":"成年教育"},{"n":"人文社科","v":"人文社科"},{"n":"派对","v":"派对"},{"n":"心动FM.","v":"心动FM."},{"n":"一起玩","v":"一起玩"},{"n":"语音交友","v":"语音交友"},{"n":"音乐之声","v":"音乐之声"},{"n":"连麦互动","v":"连麦互动"},{"n":"娱乐开黑","v":"娱乐开黑"},{"n":"正能量","v":"正能量"},{"n":"英雄联盟","v":"英雄联盟"},{"n":"热门游戏","v":"热门游戏"},{"n":"穿越火线","v":"穿越火线"},{"n":"重生边缘","v":"重生边缘"},{"n":"无畏契约","v":"无畏契约"},{"n":"CFHD","v":"CFHD"},{"n":"命运方舟","v":"命运方舟"},{"n":"DNF","v":"DNF"},{"n":"DOTA2","v":"DOTA2"},{"n":"使命召唤","v":"使命召唤"},{"n":"炉石传说","v":"炉石传说"},{"n":"CS2","v":"CS2"},{"n":"lol云顶之弈","v":"lol云顶之弈"},{"n":"魔兽争霸","v":"魔兽争霸"},{"n":"魔兽怀旧服","v":"魔兽怀旧服"},{"n":"自走棋","v":"自走棋"},{"n":"传奇","v":"传奇"},{"n":"跑跑卡丁车","v":"跑跑卡丁车"},{"n":"网易游戏","v":"网易游戏"},{"n":"星际争霸","v":"星际争霸"},{"n":"守望先锋","v":"守望先锋"},{"n":"DOTA","v":"DOTA"},{"n":"魔兽世界","v":"魔兽世界"},{"n":"剑网3","v":"剑网3"},{"n":"我的世界","v":"我的世界"},{"n":"超激斗梦境","v":"超激斗梦境"},{"n":"冒险岛","v":"冒险岛"},{"n":"三国杀","v":"三国杀"},{"n":"梦幻西游","v":"梦幻西游"},{"n":"天涯明月刀","v":"天涯明月刀"},{"n":"街头篮球","v":"街头篮球"},{"n":"NBA2KOL2","v":"NBA2KOL2"},{"n":"QQ飞车端游","v":"QQ飞车端游"},{"n":"军事游戏","v":"军事游戏"},{"n":"棋牌娱乐","v":"棋牌娱乐"},{"n":"FC ONLINE","v":"FC ONLINE"},{"n":"热门网游","v":"热门网游"},{"n":"卡拉彼丘","v":"卡拉彼丘"},{"n":"诛仙世界","v":"诛仙世界"},{"n":"APEX","v":"APEX"},{"n":"流放之路POE","v":"流放之路POE"},{"n":"剑网3缘起","v":"剑网3缘起"},{"n":"逆水寒","v":"逆水寒"},{"n":"风暴英雄","v":"风暴英雄"},{"n":"逆战","v":"逆战"},{"n":"坦克世界","v":"坦克世界"},{"n":"战舰世界","v":"战舰世界"},{"n":"反恐精英Online","v":"反恐精英Online"},{"n":"暗黑破坏神","v":"暗黑破坏神"},{"n":"梦三国2","v":"梦三国2"},{"n":"传奇世界","v":"传奇世界"},{"n":"方舟:生存进化","v":"方舟:生存进化"},{"n":"神武4电脑版","v":"神武4电脑版"},{"n":"群雄逐鹿","v":"群雄逐鹿"},{"n":"堡垒之夜","v":"堡垒之夜"},{"n":"无限法则","v":"无限法则"},{"n":"问道电脑版","v":"问道电脑版"},{"n":"西山居游戏","v":"西山居游戏"},{"n":"最终幻想14","v":"最终幻想14"},{"n":"战意","v":"战意"},{"n":"剑灵","v":"剑灵"},{"n":"星际战甲","v":"星际战甲"},{"n":"龙之谷","v":"龙之谷"},{"n":"铁甲雄兵","v":"铁甲雄兵"},{"n":"古剑奇谭网络版","v":"古剑奇谭网络版"},{"n":"轩辕传奇","v":"轩辕传奇"},{"n":"神途","v":"神途"},{"n":"激战2","v":"激战2"},{"n":"高达文化区","v":"高达文化区"},{"n":"忍者村大战2","v":"忍者村大战2"},{"n":"RPG网游专区","v":"RPG网游专区"},{"n":"诛仙3","v":"诛仙3"},{"n":"笑傲江湖OL","v":"笑傲江湖OL"},{"n":"冒险岛2","v":"冒险岛2"},{"n":"超击突破","v":"超击突破"},{"n":"无尽战区","v":"无尽战区"},{"n":"永恒之塔","v":"永恒之塔"},{"n":"竞速游戏","v":"竞速游戏"},{"n":"FPS综合网游","v":"FPS综合网游"},{"n":"劲舞团","v":"劲舞团"},{"n":"天下","v":"天下"},{"n":"火箭联盟","v":"火箭联盟"},{"n":"泡泡堂","v":"泡泡堂"},{"n":"音乐游戏","v":"音乐游戏"},{"n":"新倩女幽魂","v":"新倩女幽魂"},{"n":"天谕","v":"天谕"},{"n":"QQ炫舞","v":"QQ炫舞"},{"n":"大唐无双","v":"大唐无双"},{"n":"怪物猎人ol","v":"怪物猎人ol"},{"n":"手工星球","v":"手工星球"},{"n":"热血传奇:本源","v":"热血传奇:本源"},{"n":"彩虹岛","v":"彩虹岛"},{"n":"御龙在天","v":"御龙在天"},{"n":"自由篮球","v":"自由篮球"},{"n":"洛奇英雄传","v":"洛奇英雄传"},{"n":"洛奇","v":"洛奇"},{"n":"封印者","v":"封印者"},{"n":"合金弹头","v":"合金弹头"},{"n":"新英雄年代","v":"新英雄年代"},{"n":"盛趣游戏","v":"盛趣游戏"},{"n":"新热血英豪","v":"新热血英豪"},{"n":"沙盒游戏","v":"沙盒游戏"},{"n":"恐鬼症","v":"恐鬼症"},{"n":"领地人生","v":"领地人生"},{"n":"大话西游2","v":"大话西游2"},{"n":"猎人","v":"猎人"},{"n":"热血江湖online","v":"热血江湖online"},{"n":"千年3","v":"千年3"},{"n":"逍遥情缘","v":"逍遥情缘"},{"n":"快乐西游","v":"快乐西游"},{"n":"诺亚传说","v":"诺亚传说"},{"n":"鹿鼎记","v":"鹿鼎记"},{"n":"武魂2电脑版","v":"武魂2电脑版"},{"n":"奇迹世界sun","v":"奇迹世界sun"},{"n":"剑侠世界2电脑版","v":"剑侠世界2电脑版"},{"n":"斩魂","v":"斩魂"},{"n":"大唐2","v":"大唐2"},{"n":"幻想神域电脑版","v":"幻想神域电脑版"},{"n":"蜀山:初章","v":"蜀山:初章"},{"n":"狼人对决网游","v":"狼人对决网游"},{"n":"武林群侠传","v":"武林群侠传"},{"n":"飘流幻境","v":"飘流幻境"},{"n":"破天一剑","v":"破天一剑"},{"n":"四国军棋","v":"四国军棋"},{"n":"新大话西游3","v":"新大话西游3"},{"n":"装甲战争","v":"装甲战争"},{"n":"暴雪游戏综合","v":"暴雪游戏综合"},{"n":"HypeSquad","v":"HypeSquad"},{"n":"长尾4部虚拟分区","v":"长尾4部虚拟分区"},{"n":"燕云十六声","v":"燕云十六声"},{"n":"THE FINALS","v":"THE FINALS"},{"n":"NBA2K Online","v":"NBA2K Online"},{"n":"跑跑卡丁车:漂移","v":"跑跑卡丁车:漂移"},{"n":"传奇永恒","v":"传奇永恒"},{"n":"盛趣传奇","v":"盛趣传奇"},{"n":"火爆热游","v":"火爆热游"},{"n":"主机游戏","v":"主机游戏"},{"n":"刺客信条:英灵殿","v":"刺客信条:英灵殿"},{"n":"马里奥制造","v":"马里奥制造"},{"n":"逃离塔科夫","v":"逃离塔科夫"},{"n":"命运2","v":"命运2"},{"n":"恐怖游戏","v":"恐怖游戏"},{"n":"荒野大镖客","v":"荒野大镖客"},{"n":"灵魂筹码","v":"灵魂筹码"},{"n":"骑马与砍杀","v":"骑马与砍杀"},{"n":"只狼","v":"只狼"},{"n":"格斗游戏","v":"格斗游戏"},{"n":"饥荒","v":"饥荒"},{"n":"全境封锁","v":"全境封锁"},{"n":"怀旧游戏","v":"怀旧游戏"},{"n":"NBA2K","v":"NBA2K"},{"n":"八方旅人","v":"八方旅人"},{"n":"人类一败涂地","v":"人类一败涂地"},{"n":"环世界","v":"环世界"},{"n":"古墓丽影","v":"古墓丽影"},{"n":"鬼泣","v":"鬼泣"},{"n":"往日不再","v":"往日不再"},{"n":"仙剑奇侠传","v":"仙剑奇侠传"},{"n":"神秘海域","v":"神秘海域"},{"n":"塞尔达系列","v":"塞尔达系列"},{"n":"僵尸世界大战","v":"僵尸世界大战"},{"n":"足球游戏","v":"足球游戏"},{"n":"橙光","v":"橙光"},{"n":"了不起的修仙模拟器","v":"了不起的修仙模拟器"},{"n":"超级马里奥","v":"超级马里奥"},{"n":"三国志系列","v":"三国志系列"},{"n":"星际公民","v":"星际公民"},{"n":"最终幻想","v":"最终幻想"},{"n":"中土世界:战争之影","v":"中土世界:战争之影"},{"n":"流放者柯南","v":"流放者柯南"},{"n":"三国群英传","v":"三国群英传"},{"n":"无主之地","v":"无主之地"},{"n":"辐射","v":"辐射"},{"n":"太吾绘卷","v":"太吾绘卷"},{"n":"SCUM","v":"SCUM"},{"n":"正当防卫","v":"正当防卫"},{"n":"以撒的结合","v":"以撒的结合"},{"n":"文明","v":"文明"},{"n":"仁王","v":"仁王"},{"n":"缺氧","v":"缺氧"},{"n":"皇牌空战","v":"皇牌空战"},{"n":"体育游戏","v":"体育游戏"},{"n":"海岛大亨","v":"海岛大亨"},{"n":"植物大战僵尸:花园战争系列","v":"植物大战僵尸:花园战争系列"},{"n":"蜘蛛侠","v":"蜘蛛侠"},{"n":"勇者斗恶龙建造者2","v":"勇者斗恶龙建造者2"},{"n":"遗迹:灰烬重生","v":"遗迹:灰烬重生"},{"n":"血源","v":"血源"},{"n":"旺达与巨像","v":"旺达与巨像"},{"n":"模拟人生","v":"模拟人生"},{"n":"空洞骑士","v":"空洞骑士"},{"n":"极品飞车","v":"极品飞车"},{"n":"胡闹厨房","v":"胡闹厨房"},{"n":"地铁:离去","v":"地铁:离去"},{"n":"生死狙击2","v":"生死狙击2"},{"n":"三国战纪","v":"三国战纪"},{"n":"怀旧FC","v":"怀旧FC"},{"n":"经典单机","v":"经典单机"},{"n":"英雄无敌","v":"英雄无敌"},{"n":"街机游戏","v":"街机游戏"},{"n":"合金装备","v":"合金装备"},{"n":"红色警戒","v":"红色警戒"},{"n":"镜之边缘","v":"镜之边缘"},{"n":"火焰纹章系列","v":"火焰纹章系列"},{"n":"星露谷物语","v":"星露谷物语"},{"n":"赛博朋克2077","v":"赛博朋克2077"},{"n":"中国式家长","v":"中国式家长"},{"n":"尼尔:机械纪元","v":"尼尔:机械纪元"},{"n":"无人深空","v":"无人深空"},{"n":"EVOTINCTION","v":"EVOTINCTION"},{"n":"GT赛车7","v":"GT赛车7"},{"n":"超级机器人大战","v":"超级机器人大战"},{"n":"信长之野望","v":"信长之野望"},{"n":"这是我的战争","v":"这是我的战争"},{"n":"杀戮尖塔","v":"杀戮尖塔"},{"n":"冰汽时代","v":"冰汽时代"},{"n":"帝国时代","v":"帝国时代"},{"n":"死亡空间","v":"死亡空间"},{"n":"凯瑟琳Full Body","v":"凯瑟琳Full Body"},{"n":"足球经理","v":"足球经理"},{"n":"雨中冒险","v":"雨中冒险"},{"n":"亿万僵尸","v":"亿万僵尸"},{"n":"武装突袭","v":"武装突袭"},{"n":"石油大亨","v":"石油大亨"},{"n":"荣耀战魂","v":"荣耀战魂"},{"n":"欧洲卡车模拟器","v":"欧洲卡车模拟器"},{"n":"美国逃亡者","v":"美国逃亡者"},{"n":"漫漫长夜","v":"漫漫长夜"},{"n":"永恒轮回","v":"永恒轮回"},{"n":"孤岛惊魂","v":"孤岛惊魂"},{"n":"都市:天际线","v":"都市:天际线"},{"n":"盗贼之海","v":"盗贼之海"},{"n":"Dayz","v":"Dayz"},{"n":"60秒","v":"60秒"},{"n":"俄罗斯钓鱼","v":"俄罗斯钓鱼"},{"n":"猎人:荒野的召唤","v":"猎人:荒野的召唤"},{"n":"恐怖黎明","v":"恐怖黎明"},{"n":"看门狗","v":"看门狗"},{"n":"真三国无双","v":"真三国无双"},{"n":"泰拉瑞亚","v":"泰拉瑞亚"},{"n":"UFC","v":"UFC"},{"n":"底特律:变人","v":"底特律:变人"},{"n":"恶魔城","v":"恶魔城"},{"n":"毁灭战士","v":"毁灭战士"},{"n":"火影忍者:究极忍者风暴","v":"火影忍者:究极忍者风暴"},{"n":"无尽地牢","v":"无尽地牢"},{"n":"坎巴拉太空计划","v":"坎巴拉太空计划"},{"n":"龙珠:超宇宙","v":"龙珠:超宇宙"},{"n":"马里奥赛车","v":"马里奥赛车"},{"n":"模拟山羊","v":"模拟山羊"},{"n":"欧陆风云","v":"欧陆风云"},{"n":"乞丐模拟器","v":"乞丐模拟器"},{"n":"小偷模拟器","v":"小偷模拟器"},{"n":"逆转裁判","v":"逆转裁判"},{"n":"超越光速","v":"超越光速"},{"n":"植物大战僵尸","v":"植物大战僵尸"},{"n":"游戏开发者","v":"游戏开发者"},{"n":"最后的绿洲","v":"最后的绿洲"},{"n":"大富翁","v":"大富翁"},{"n":"英雄连","v":"英雄连"},{"n":"永劫无间","v":"永劫无间"},{"n":"部落与弯刀","v":"部落与弯刀"},{"n":"森林","v":"森林"},{"n":"只只大冒险","v":"只只大冒险"},{"n":"一起开火车!","v":"一起开火车!"},{"n":"主机其他游戏","v":"主机其他游戏"},{"n":"北境之地","v":"北境之地"},{"n":"temtem","v":"temtem"},{"n":"弹丸论破","v":"弹丸论破"},{"n":"基佬大乱斗","v":"基佬大乱斗"},{"n":"僵尸毁灭工程","v":"僵尸毁灭工程"},{"n":"神力科莎","v":"神力科莎"},{"n":"超级兔子人","v":"超级兔子人"},{"n":"岛屿生存者","v":"岛屿生存者"},{"n":"盟军敢死队","v":"盟军敢死队"},{"n":"冬日计划","v":"冬日计划"},{"n":"泰坦陨落","v":"泰坦陨落"},{"n":"四海兄弟","v":"四海兄弟"},{"n":"创世理想乡","v":"创世理想乡"},{"n":"柯娜:精神之桥","v":"柯娜:精神之桥"},{"n":"幽灵线:东京","v":"幽灵线:东京"},{"n":"Solar Ash","v":"Solar Ash"},{"n":"BUGSNAX","v":"BUGSNAX"},{"n":"生化危机4重制版","v":"生化危机4重制版"},{"n":"Grounded","v":"Grounded"},{"n":"Superliminal","v":"Superliminal"},{"n":"Omno","v":"Omno"},{"n":"Röki","v":"Röki"},{"n":"Undungeon","v":"Undungeon"},{"n":"糖豆人","v":"糖豆人"},{"n":"渡神纪","v":"渡神纪"},{"n":"Aeolis Tournament","v":"Aeolis Tournament"},{"n":"猛兽派对","v":"猛兽派对"},{"n":"Olija","v":"Olija"},{"n":"Creaks","v":"Creaks"},{"n":"暗影火炬城","v":"暗影火炬城"},{"n":"阿尔比恩","v":"阿尔比恩"},{"n":"Uragun","v":"Uragun"},{"n":"鬼谷八荒","v":"鬼谷八荒"},{"n":"Muse Dash","v":"Muse Dash"},{"n":"恐惧之间","v":"恐惧之间"},{"n":"孤岛惊魂6","v":"孤岛惊魂6"},{"n":"怪物猎人","v":"怪物猎人"},{"n":"黑神话:悟空","v":"黑神话:悟空"},{"n":"仁王2","v":"仁王2"},{"n":"三国志14","v":"三国志14"},{"n":"杀手3","v":"杀手3"},{"n":"双人成行","v":"双人成行"},{"n":"Scrapnaut","v":"Scrapnaut"},{"n":"租房达人","v":"租房达人"},{"n":"狙击手幽灵战士契约2","v":"狙击手幽灵战士契约2"},{"n":"全面战争","v":"全面战争"},{"n":"复体","v":"复体"},{"n":"战争机器:战术小队","v":"战争机器:战术小队"},{"n":"侠之道","v":"侠之道"},{"n":"海绵宝宝:比奇堡的冒险","v":"海绵宝宝:比奇堡的冒险"},{"n":"奇妙探险队2","v":"奇妙探险队2"},{"n":"刺客信条:奥德赛","v":"刺客信条:奥德赛"},{"n":"星球大战:前线","v":"星球大战:前线"},{"n":"Moonray","v":"Moonray"},{"n":"灵魂旅人","v":"灵魂旅人"},{"n":"面容","v":"面容"},{"n":"破门而入2北方特遣队","v":"破门而入2北方特遣队"},{"n":"俄罗斯方块效应:连接","v":"俄罗斯方块效应:连接"},{"n":"SD高达G世纪起源","v":"SD高达G世纪起源"},{"n":"东方计划:不可思议的幻想乡","v":"东方计划:不可思议的幻想乡"},{"n":"Fate/EXTELLA","v":"Fate/EXTELLA"},{"n":"临终:重生试炼","v":"临终:重生试炼"},{"n":"虚拟现实乐园","v":"虚拟现实乐园"},{"n":"妖精剑士F","v":"妖精剑士F"},{"n":"苍翼默示录:神观之梦","v":"苍翼默示录:神观之梦"},{"n":"晚班","v":"晚班"},{"n":"子弹风暴","v":"子弹风暴"},{"n":"巡警","v":"巡警"},{"n":"耻辱之日","v":"耻辱之日"},{"n":"狙击精英4","v":"狙击精英4"},{"n":"三国志13威力加强版","v":"三国志13威力加强版"},{"n":"热血物语:地下世界","v":"热血物语:地下世界"},{"n":"史诗战争模拟器","v":"史诗战争模拟器"},{"n":"银河护卫队","v":"银河护卫队"},{"n":"闪乱神乐:少女们的选择","v":"闪乱神乐:少女们的选择"},{"n":"幽灵行动:荒野","v":"幽灵行动:荒野"},{"n":"白色情人节","v":"白色情人节"},{"n":"美国职业摔角联盟2K17","v":"美国职业摔角联盟2K17"},{"n":"誓死坚守","v":"誓死坚守"},{"n":"喷射侠","v":"喷射侠"},{"n":"双截龙4","v":"双截龙4"},{"n":"地下蚁国","v":"地下蚁国"},{"n":"九张羊皮纸","v":"九张羊皮纸"},{"n":"咒语力量3","v":"咒语力量3"},{"n":"小兵大战","v":"小兵大战"},{"n":"维京人 人中之狼","v":"维京人 人中之狼"},{"n":"你好邻居","v":"你好邻居"},{"n":"寻找天堂","v":"寻找天堂"},{"n":"画中世界","v":"画中世界"},{"n":"桥梁工程师传送门","v":"桥梁工程师传送门"},{"n":"现代战争","v":"现代战争"},{"n":"SCP秘密实验室","v":"SCP秘密实验室"},{"n":"绯红结系","v":"绯红结系"},{"n":"罪恶装备STRIVE","v":"罪恶装备STRIVE"},{"n":"骑士精神2","v":"骑士精神2"},{"n":"Rune Knights","v":"Rune Knights"},{"n":"最后的咒语","v":"最后的咒语"},{"n":"红至日2幸存者","v":"红至日2幸存者"},{"n":"真女神转生3","v":"真女神转生3"},{"n":"速降王者","v":"速降王者"},{"n":"工业崛起","v":"工业崛起"},{"n":"征服的荣耀:围城","v":"征服的荣耀:围城"},{"n":"前往中世纪","v":"前往中世纪"},{"n":"Arid","v":"Arid"},{"n":"伊始之地","v":"伊始之地"},{"n":"进击的巨人2","v":"进击的巨人2"},{"n":"航海日记2","v":"航海日记2"},{"n":"隐龙传:影踪","v":"隐龙传:影踪"},{"n":"魔域之书","v":"魔域之书"},{"n":"诸神灰烬:救赎","v":"诸神灰烬:救赎"},{"n":"自由人:游击战争","v":"自由人:游击战争"},{"n":"战国无双5","v":"战国无双5"},{"n":"死亡教堂","v":"死亡教堂"},{"n":"灵魂能力6","v":"灵魂能力6"},{"n":"不要喂食猴子","v":"不要喂食猴子"},{"n":"古剑奇谭3","v":"古剑奇谭3"},{"n":"迷城重生","v":"迷城重生"},{"n":"剑士","v":"剑士"},{"n":"GRIS","v":"GRIS"},{"n":"古剑奇谭:永夜","v":"古剑奇谭:永夜"},{"n":"核爆RPG","v":"核爆RPG"},{"n":"Below","v":"Below"},{"n":"嗜血印","v":"嗜血印"},{"n":"伊苏9","v":"伊苏9"},{"n":"兽人必须死3","v":"兽人必须死3"},{"n":"狙击精英VR","v":"狙击精英VR"},{"n":"遗忘之城","v":"遗忘之城"},{"n":"Last Stop","v":"Last Stop"},{"n":"从军","v":"从军"},{"n":"石炉","v":"石炉"},{"n":"狂热运输2","v":"狂热运输2"},{"n":"机甲战士5","v":"机甲战士5"},{"n":"分手装修","v":"分手装修"},{"n":"PICO PARK","v":"PICO PARK"},{"n":"光明记忆:无限","v":"光明记忆:无限"},{"n":"秘馆疑踪","v":"秘馆疑踪"},{"n":"英雄传说:创之轨迹","v":"英雄传说:创之轨迹"},{"n":"战地系列","v":"战地系列"},{"n":"塞尔达传说天空之剑HD","v":"塞尔达传说天空之剑HD"},{"n":"国王的恩赐2","v":"国王的恩赐2"},{"n":"脑航员2","v":"脑航员2"},{"n":"九十六号公路","v":"九十六号公路"},{"n":"FORECLOSED","v":"FORECLOSED"},{"n":"RiMS Racing","v":"RiMS Racing"},{"n":"漫威银河护卫队","v":"漫威银河护卫队"},{"n":"剑侠图","v":"剑侠图"},{"n":"审判之逝","v":"审判之逝"},{"n":"艾尔登法环","v":"艾尔登法环"},{"n":"互动派对","v":"互动派对"},{"n":"极限竞速地平线5","v":"极限竞速地平线5"},{"n":"使命召唤系列","v":"使命召唤系列"},{"n":"网吧模拟器","v":"网吧模拟器"},{"n":"The Anacrusis","v":"The Anacrusis"},{"n":"文字游戏","v":"文字游戏"},{"n":"消逝的光芒2","v":"消逝的光芒2"},{"n":"战神:诸神黄昏","v":"战神:诸神黄昏"},{"n":"师父","v":"师父"},{"n":"海上狼人杀","v":"海上狼人杀"},{"n":"最终幻想:起源","v":"最终幻想:起源"},{"n":"HordeCore","v":"HordeCore"},{"n":"Indies Lies","v":"Indies Lies"},{"n":"霍格沃茨之遗","v":"霍格沃茨之遗"},{"n":"太荒初境","v":"太荒初境"},{"n":"Deck of Ashes","v":"Deck of Ashes"},{"n":"星空","v":"星空"},{"n":"隐秘的角落","v":"隐秘的角落"},{"n":"江湖客栈","v":"江湖客栈"},{"n":"Ilysia","v":"Ilysia"},{"n":"Project Q","v":"Project Q"},{"n":"Pummel Party","v":"Pummel Party"},{"n":"Holomento","v":"Holomento"},{"n":"Overprime","v":"Overprime"},{"n":"森林之子","v":"森林之子"},{"n":"弈仙牌","v":"弈仙牌"},{"n":"夜族崛起","v":"夜族崛起"},{"n":"漫威SNAP","v":"漫威SNAP"},{"n":"魔力宝贝","v":"魔力宝贝"},{"n":"木卫四协议","v":"木卫四协议"},{"n":"罗马复兴","v":"罗马复兴"},{"n":"风暴之门","v":"风暴之门"},{"n":"暗邪西部","v":"暗邪西部"},{"n":"堕落之主","v":"堕落之主"},{"n":"High on Life","v":"High on Life"},{"n":"匹诺曹的谎言","v":"匹诺曹的谎言"},{"n":"逃生:试炼","v":"逃生:试炼"},{"n":"战锤40K暗潮","v":"战锤40K暗潮"},{"n":"Isonzo","v":"Isonzo"},{"n":"索尼克 未知边境","v":"索尼克 未知边境"},{"n":"漂泊牧歌","v":"漂泊牧歌"},{"n":"塞尔达传说:王国之泪","v":"塞尔达传说:王国之泪"},{"n":"破碎线","v":"破碎线"},{"n":"卧龙:苍天陨落","v":"卧龙:苍天陨落"},{"n":"卡库远古封印","v":"卡库远古封印"},{"n":"原子之心","v":"原子之心"},{"n":"霓虹入侵者","v":"霓虹入侵者"},{"n":"Warhaven","v":"Warhaven"},{"n":"宝可梦:朱/紫","v":"宝可梦:朱/紫"},{"n":"第一后裔","v":"第一后裔"},{"n":"铳墓G.O.R.E.","v":"铳墓G.O.R.E."},{"n":"Kingshunt","v":"Kingshunt"},{"n":"漫威暗夜之子","v":"漫威暗夜之子"},{"n":"奇怪的RPG","v":"奇怪的RPG"},{"n":"Evercore Heroes","v":"Evercore Heroes"},{"n":"东方:平野孤鸿","v":"东方:平野孤鸿"},{"n":"神之天平","v":"神之天平"},{"n":"伊克西翁","v":"伊克西翁"},{"n":"主机一起看","v":"主机一起看"},{"n":"社交互动游戏","v":"社交互动游戏"},{"n":"Divine Knockout","v":"Divine Knockout"},{"n":"巫师系列","v":"巫师系列"},{"n":"至暗时刻","v":"至暗时刻"},{"n":"江湖十一","v":"江湖十一"},{"n":"XDefiant","v":"XDefiant"},{"n":"刺客信条:幻景","v":"刺客信条:幻景"},{"n":"Warlander","v":"Warlander"},{"n":"狂野之心","v":"狂野之心"},{"n":"Scars Above","v":"Scars Above"},{"n":"Pacific Drive","v":"Pacific Drive"},{"n":"收获日3","v":"收获日3"},{"n":"浮生箓2九九行歌","v":"浮生箓2九九行歌"},{"n":"The Front","v":"The Front"},{"n":"最终幻想16","v":"最终幻想16"},{"n":"街头霸王","v":"街头霸王"},{"n":"Tchia","v":"Tchia"},{"n":"魔戒:咕噜","v":"魔戒:咕噜"},{"n":"Prison Life 2","v":"Prison Life 2"},{"n":"Innchanted","v":"Innchanted"},{"n":"Life by You","v":"Life by You"},{"n":"Eresys","v":"Eresys"},{"n":"Pax Dei","v":"Pax Dei"},{"n":"Teravit","v":"Teravit"},{"n":"Caliber","v":"Caliber"},{"n":"沙盒与副本:英勇之地","v":"沙盒与副本:英勇之地"},{"n":"Coridden","v":"Coridden"},{"n":"Unrecord","v":"Unrecord"},{"n":"Deducto 2","v":"Deducto 2"},{"n":"装甲核心6境界天火","v":"装甲核心6境界天火"},{"n":"Wayfinder","v":"Wayfinder"},{"n":"迷瘴纪事","v":"迷瘴纪事"},{"n":"Minigame Madness","v":"Minigame Madness"},{"n":"Only Up","v":"Only Up"},{"n":"天文世界","v":"天文世界"},{"n":"学园构想家","v":"学园构想家"},{"n":"Jusant","v":"Jusant"},{"n":"潜水员戴夫","v":"潜水员戴夫"},{"n":"GYLT","v":"GYLT"},{"n":"遗迹2","v":"遗迹2"},{"n":"索利斯堡","v":"索利斯堡"},{"n":"Towerborne","v":"Towerborne"},{"n":"33 Immortals","v":"33 Immortals"},{"n":"Wildmender","v":"Wildmender"},{"n":"How 2 Escape","v":"How 2 Escape"},{"n":"漫威蜘蛛侠2","v":"漫威蜘蛛侠2"},{"n":"博德之门3","v":"博德之门3"},{"n":"Eternights","v":"Eternights"},{"n":"Project F","v":"Project F"},{"n":"BaldMan Climbs Up","v":"BaldMan Climbs Up"},{"n":"FC24","v":"FC24"},{"n":"NBA 2K24","v":"NBA 2K24"},{"n":"超级马里奥兄弟:惊奇","v":"超级马里奥兄弟:惊奇"},{"n":"蛮荒志异","v":"蛮荒志异"},{"n":"王者荣耀","v":"王者荣耀"},{"n":"LOL手游","v":"LOL手游"},{"n":"崩坏:星穹铁道","v":"崩坏:星穹铁道"},{"n":"逆水寒手游","v":"逆水寒手游"},{"n":"和平精英","v":"和平精英"},{"n":"暗区突围","v":"暗区突围"},{"n":"蛋仔派对","v":"蛋仔派对"},{"n":"高能英雄","v":"高能英雄"},{"n":"幻塔","v":"幻塔"},{"n":"火影忍者","v":"火影忍者"},{"n":"COD手游","v":"COD手游"},{"n":"lol电竞经理","v":"lol电竞经理"},{"n":"DNF手游","v":"DNF手游"},{"n":"金铲铲之战","v":"金铲铲之战"},{"n":"天刀手游","v":"天刀手游"},{"n":"原神","v":"原神"},{"n":"航海王热血航线","v":"航海王热血航线"},{"n":"元梦之星","v":"元梦之星"},{"n":"鸿图之下","v":"鸿图之下"},{"n":"欢乐麻将","v":"欢乐麻将"},{"n":"王者模拟战","v":"王者模拟战"},{"n":"中国象棋","v":"中国象棋"},{"n":"天谕手游","v":"天谕手游"},{"n":"巅峰坦克","v":"巅峰坦克"},{"n":"新游中心","v":"新游中心"},{"n":"热门手游","v":"热门手游"},{"n":"梦幻手游","v":"梦幻手游"},{"n":"QQ飞车","v":"QQ飞车"},{"n":"第五人格","v":"第五人格"},{"n":"欢乐斗地主","v":"欢乐斗地主"},{"n":"荒野乱斗","v":"荒野乱斗"},{"n":"阴阳师","v":"阴阳师"},{"n":"狼人杀","v":"狼人杀"},{"n":"JJ斗地主","v":"JJ斗地主"},{"n":"梦幻新诛仙","v":"梦幻新诛仙"},{"n":"多多自走棋","v":"多多自走棋"},{"n":"崩坏3","v":"崩坏3"},{"n":"风云岛行动","v":"风云岛行动"},{"n":"云游戏","v":"云游戏"},{"n":"跑跑手游","v":"跑跑手游"},{"n":"率土之滨","v":"率土之滨"},{"n":"灌篮高手","v":"灌篮高手"},{"n":"皇室战争","v":"皇室战争"},{"n":"忍者必须死3","v":"忍者必须死3"},{"n":"神武4手游","v":"神武4手游"},{"n":"梦幻模拟战","v":"梦幻模拟战"},{"n":"实况足球","v":"实况足球"},{"n":"航海王:燃烧意志","v":"航海王:燃烧意志"},{"n":"球球大作战","v":"球球大作战"},{"n":"英雄杀","v":"英雄杀"},{"n":"魔域口袋版","v":"魔域口袋版"},{"n":"口袋新旅程","v":"口袋新旅程"},{"n":"剑网3指尖江湖","v":"剑网3指尖江湖"},{"n":"部落冲突","v":"部落冲突"},{"n":"剑与家园","v":"剑与家园"},{"n":"新笑傲江湖","v":"新笑傲江湖"},{"n":"猫和老鼠","v":"猫和老鼠"},{"n":"猎人手游","v":"猎人手游"},{"n":"明日之后","v":"明日之后"},{"n":"影之诗","v":"影之诗"},{"n":"决战平安京","v":"决战平安京"},{"n":"魂斗罗归来","v":"魂斗罗归来"},{"n":"圣斗士星矢","v":"圣斗士星矢"},{"n":"魔力宝贝手游","v":"魔力宝贝手游"},{"n":"哈利波特:魔法觉醒","v":"哈利波特:魔法觉醒"},{"n":"手游推广","v":"手游推广"},{"n":"魔灵召唤","v":"魔灵召唤"},{"n":"香肠派对","v":"香肠派对"},{"n":"迷你世界","v":"迷你世界"},{"n":"FC足球世界","v":"FC足球世界"},{"n":"街篮","v":"街篮"},{"n":"明日方舟","v":"明日方舟"},{"n":"一梦江湖","v":"一梦江湖"},{"n":"完美世界手游","v":"完美世界手游"},{"n":"拳皇98OL","v":"拳皇98OL"},{"n":"赛尔号","v":"赛尔号"},{"n":"仙境传说","v":"仙境传说"},{"n":"流星群侠传","v":"流星群侠传"},{"n":"逃跑吧少年","v":"逃跑吧少年"},{"n":"石器时代","v":"石器时代"},{"n":"RPG手游","v":"RPG手游"},{"n":"英魂之刃口袋版","v":"英魂之刃口袋版"},{"n":"倩女幽魂手游","v":"倩女幽魂手游"},{"n":"决斗之城2","v":"决斗之城2"},{"n":"传奇手游","v":"传奇手游"},{"n":"雀魂","v":"雀魂"},{"n":"二次元手游","v":"二次元手游"},{"n":"征途2手游","v":"征途2手游"},{"n":"万王之王3D","v":"万王之王3D"},{"n":"武林外传","v":"武林外传"},{"n":"潮人篮球","v":"潮人篮球"},{"n":"元气骑士","v":"元气骑士"},{"n":"红警OL手游","v":"红警OL手游"},{"n":"植物大战僵尸手游","v":"植物大战僵尸手游"},{"n":"创造与魔法","v":"创造与魔法"},{"n":"奇迹觉醒","v":"奇迹觉醒"},{"n":"光遇","v":"光遇"},{"n":"游戏王:决斗链接","v":"游戏王:决斗链接"},{"n":"巅峰战舰","v":"巅峰战舰"},{"n":"寻仙","v":"寻仙"},{"n":"天天象棋","v":"天天象棋"},{"n":"王国纪元","v":"王国纪元"},{"n":"龙族幻想","v":"龙族幻想"},{"n":"三国杀移动版","v":"三国杀移动版"},{"n":"罗布乐思","v":"罗布乐思"},{"n":"足球手游","v":"足球手游"},{"n":"月圆之夜","v":"月圆之夜"},{"n":"秦时明月世界","v":"秦时明月世界"},{"n":"麻将来了","v":"麻将来了"},{"n":"风之大陆","v":"风之大陆"},{"n":"金属对决","v":"金属对决"},{"n":"轩辕剑龙舞云山","v":"轩辕剑龙舞云山"},{"n":"微乐棋牌","v":"微乐棋牌"},{"n":"辐射避难所Online","v":"辐射避难所Online"},{"n":"街篮2","v":"街篮2"},{"n":"极光计划","v":"极光计划"},{"n":"不良人3","v":"不良人3"},{"n":"镇魔曲手游","v":"镇魔曲手游"},{"n":"乱世王者","v":"乱世王者"},{"n":"篮球手游","v":"篮球手游"},{"n":"鬼泣-巅峰之战","v":"鬼泣-巅峰之战"},{"n":"射击类手游","v":"射击类手游"},{"n":"命运歌姬","v":"命运歌姬"},{"n":"暗黑不朽","v":"暗黑不朽"},{"n":"新神魔大陆","v":"新神魔大陆"},{"n":"三国志战略版","v":"三国志战略版"},{"n":"天地劫:幽城再临","v":"天地劫:幽城再临"},{"n":"Disorder","v":"Disorder"},{"n":"云上城之歌","v":"云上城之歌"},{"n":"五子棋","v":"五子棋"},{"n":"围棋","v":"围棋"},{"n":"全球行动","v":"全球行动"},{"n":"诛仙手游","v":"诛仙手游"},{"n":"妄想山海","v":"妄想山海"},{"n":"黎明觉醒:生机","v":"黎明觉醒:生机"},{"n":"庆余年","v":"庆余年"},{"n":"我的侠客","v":"我的侠客"},{"n":"曙光英雄","v":"曙光英雄"},{"n":"大话西游手游","v":"大话西游手游"},{"n":"战争怒吼","v":"战争怒吼"},{"n":"忘川风华录","v":"忘川风华录"},{"n":"新剑侠情缘手游","v":"新剑侠情缘手游"},{"n":"重生细胞","v":"重生细胞"},{"n":"汉家江湖","v":"汉家江湖"},{"n":"海岛奇兵","v":"海岛奇兵"},{"n":"钢铁力量2","v":"钢铁力量2"},{"n":"仙剑奇侠传九野","v":"仙剑奇侠传九野"},{"n":"大唐无双手游","v":"大唐无双手游"},{"n":"地铁跑酷","v":"地铁跑酷"},{"n":"战舰世界闪击战","v":"战舰世界闪击战"},{"n":"狂暴之翼","v":"狂暴之翼"},{"n":"横扫千军","v":"横扫千军"},{"n":"节奏大爆炸","v":"节奏大爆炸"},{"n":"喵斯快跑","v":"喵斯快跑"},{"n":"双子","v":"双子"},{"n":"小美斗地主","v":"小美斗地主"},{"n":"精灵之境","v":"精灵之境"},{"n":"斗罗大陆:武魂觉醒","v":"斗罗大陆:武魂觉醒"},{"n":"斗罗大陆2绝世唐门","v":"斗罗大陆2绝世唐门"},{"n":"战神觉醒","v":"战神觉醒"},{"n":"九州仙剑传H5","v":"九州仙剑传H5"},{"n":"荣耀大天使","v":"荣耀大天使"},{"n":"蓝月传奇","v":"蓝月传奇"},{"n":"凡人修仙传挂机版H5","v":"凡人修仙传挂机版H5"},{"n":"攻城掠地","v":"攻城掠地"},{"n":"盗墓笔记","v":"盗墓笔记"},{"n":"拳魂觉醒","v":"拳魂觉醒"},{"n":"大天使之剑","v":"大天使之剑"},{"n":"绝世仙王","v":"绝世仙王"},{"n":"一刀传世","v":"一刀传世"},{"n":"斗罗大陆","v":"斗罗大陆"},{"n":"破雪刃","v":"破雪刃"},{"n":"JJ象棋","v":"JJ象棋"},{"n":"天姬变","v":"天姬变"},{"n":"剑玲珑","v":"剑玲珑"},{"n":"火线精英","v":"火线精英"},{"n":"造梦西游OL","v":"造梦西游OL"},{"n":"奥奇传说手游","v":"奥奇传说手游"},{"n":"战斗吧龙魂","v":"战斗吧龙魂"},{"n":"剑开仙门","v":"剑开仙门"},{"n":"狼人对决","v":"狼人对决"},{"n":"最终幻想:勇气启示录 幻影战争","v":"最终幻想:勇气启示录 幻影战争"},{"n":"葫芦娃兄弟","v":"葫芦娃兄弟"},{"n":"造梦西游4","v":"造梦西游4"},{"n":"比特小队","v":"比特小队"},{"n":"流言侦探","v":"流言侦探"},{"n":"战舰联盟","v":"战舰联盟"},{"n":"另一个伊甸:超越时空的猫","v":"另一个伊甸:超越时空的猫"},{"n":"少女前线","v":"少女前线"},{"n":"遇见","v":"遇见"},{"n":"霓虹深渊:无限","v":"霓虹深渊:无限"},{"n":"胡莱三国3","v":"胡莱三国3"},{"n":"奥拉星","v":"奥拉星"},{"n":"先游云游戏","v":"先游云游戏"},{"n":"万象物语手游","v":"万象物语手游"},{"n":"绿茵信仰","v":"绿茵信仰"},{"n":"烟雨江湖","v":"烟雨江湖"},{"n":"球球联盟","v":"球球联盟"},{"n":"文明与征服","v":"文明与征服"},{"n":"碧蓝航线手游","v":"碧蓝航线手游"},{"n":"300大作战","v":"300大作战"},{"n":"2047","v":"2047"},{"n":"第七史诗","v":"第七史诗"},{"n":"汉末霸业","v":"汉末霸业"},{"n":"EVE星战前夜无烬星河","v":"EVE星战前夜无烬星河"},{"n":"少女前线2追放","v":"少女前线2追放"},{"n":"弹力果冻","v":"弹力果冻"},{"n":"火力苏打T3","v":"火力苏打T3"},{"n":"植物大战僵尸2","v":"植物大战僵尸2"},{"n":"球球英雄","v":"球球英雄"},{"n":"悠长假期","v":"悠长假期"},{"n":"无悔华夏","v":"无悔华夏"},{"n":"猫之城","v":"猫之城"},{"n":"未定事件簿","v":"未定事件簿"},{"n":"白夜极光","v":"白夜极光"},{"n":"ProjectGAIA","v":"ProjectGAIA"},{"n":"斗罗大陆:魂师对决","v":"斗罗大陆:魂师对决"},{"n":"古墓丽影传说:迷踪","v":"古墓丽影传说:迷踪"},{"n":"漫威对决","v":"漫威对决"},{"n":"放置与召唤","v":"放置与召唤"},{"n":"我是航海家","v":"我是航海家"},{"n":"军团战棋英雄时代","v":"军团战棋英雄时代"},{"n":"繁荣美食市场物语","v":"繁荣美食市场物语"},{"n":"老农种树","v":"老农种树"},{"n":"三国演义:吞噬无界","v":"三国演义:吞噬无界"},{"n":"偶像梦幻祭2","v":"偶像梦幻祭2"},{"n":"卡卡保皇","v":"卡卡保皇"},{"n":"灵猫传","v":"灵猫传"},{"n":"剑侠世界3","v":"剑侠世界3"},{"n":"召唤与合成2","v":"召唤与合成2"},{"n":"像素时代","v":"像素时代"},{"n":"仙侠第一放置","v":"仙侠第一放置"},{"n":"无尽的拉格朗日","v":"无尽的拉格朗日"},{"n":"弓箭手大作战","v":"弓箭手大作战"},{"n":"挨饿荒野","v":"挨饿荒野"},{"n":"诺亚之心","v":"诺亚之心"},{"n":"闪耀暖暖","v":"闪耀暖暖"},{"n":"物种起源","v":"物种起源"},{"n":"模拟城市:我是市长","v":"模拟城市:我是市长"},{"n":"重返帝国","v":"重返帝国"},{"n":"太古仙尊","v":"太古仙尊"},{"n":"长安幻想","v":"长安幻想"},{"n":"火炬之光:无限","v":"火炬之光:无限"},{"n":"富豪闯三国","v":"富豪闯三国"},{"n":"拂晓","v":"拂晓"},{"n":"古剑奇谭木语人","v":"古剑奇谭木语人"},{"n":"火影忍者:忍者新世代","v":"火影忍者:忍者新世代"},{"n":"末日远征","v":"末日远征"},{"n":"滚动的天空","v":"滚动的天空"},{"n":"新斗罗大陆","v":"新斗罗大陆"},{"n":"登山赛车","v":"登山赛车"},{"n":"荒野乱斗(腾讯版)","v":"荒野乱斗(腾讯版)"},{"n":"小小勇者","v":"小小勇者"},{"n":"小冰冰传奇","v":"小冰冰传奇"},{"n":"三国战纪2手游","v":"三国战纪2手游"},{"n":"幸存者危城","v":"幸存者危城"},{"n":"冒险公社手游","v":"冒险公社手游"},{"n":"欧陆战争5帝国","v":"欧陆战争5帝国"},{"n":"纪念碑谷2","v":"纪念碑谷2"},{"n":"大航海探险物语","v":"大航海探险物语"},{"n":"航海日记","v":"航海日记"},{"n":"一拳超人:最强之男","v":"一拳超人:最强之男"},{"n":"王国保卫战4","v":"王国保卫战4"},{"n":"半世界之旅","v":"半世界之旅"},{"n":"奥特曼宇宙英雄","v":"奥特曼宇宙英雄"},{"n":"新三国杀","v":"新三国杀"},{"n":"奶块","v":"奶块"},{"n":"策魂三国","v":"策魂三国"},{"n":"奥特曼系列OL","v":"奥特曼系列OL"},{"n":"欢喜斗地主","v":"欢喜斗地主"},{"n":"洪荒文明","v":"洪荒文明"},{"n":"街头足球","v":"街头足球"},{"n":"同人圣三国蜀汉传","v":"同人圣三国蜀汉传"},{"n":"塔防之光","v":"塔防之光"},{"n":"我做夫人那些年","v":"我做夫人那些年"},{"n":"小小五千年","v":"小小五千年"},{"n":"乖离性百万亚瑟王:环","v":"乖离性百万亚瑟王:环"},{"n":"时空猎人","v":"时空猎人"},{"n":"星际逆战","v":"星际逆战"},{"n":"羽毛球高高手","v":"羽毛球高高手"},{"n":"LoveLive! 学园偶像祭","v":"LoveLive! 学园偶像祭"},{"n":"黑色沙漠手游","v":"黑色沙漠手游"},{"n":"魔力宝贝:旅人","v":"魔力宝贝:旅人"},{"n":"大家饿餐厅","v":"大家饿餐厅"},{"n":"魔力宝贝归来","v":"魔力宝贝归来"},{"n":"巅峰极速","v":"巅峰极速"},{"n":"新盗墓笔记","v":"新盗墓笔记"},{"n":"轩辕传奇手游","v":"轩辕传奇手游"},{"n":"萤火突击国际服","v":"萤火突击国际服"},{"n":"武林闲侠","v":"武林闲侠"},{"n":"淘米游戏","v":"淘米游戏"},{"n":"无期迷途","v":"无期迷途"},{"n":"逆光潜入","v":"逆光潜入"},{"n":"深空之眼","v":"深空之眼"},{"n":"CF手游","v":"CF手游"},{"n":"新天龙八部手游","v":"新天龙八部手游"},{"n":"尘白禁区","v":"尘白禁区"},{"n":"原始征途","v":"原始征途"},{"n":"全民大灌篮","v":"全民大灌篮"},{"n":"枪火重生手游","v":"枪火重生手游"},{"n":"火影三国志","v":"火影三国志"},{"n":"网易其它组","v":"网易其它组"},{"n":"三国战纪手游","v":"三国战纪手游"},{"n":"染·钟楼谜团","v":"染·钟楼谜团"},{"n":"绝区零","v":"绝区零"},{"n":"重返CODM","v":"重返CODM"},{"n":"综合手游","v":"综合手游"},{"n":"IP游戏","v":"IP游戏"},{"n":"鸣潮","v":"鸣潮"},{"n":"棋牌游戏","v":"棋牌游戏"},{"n":"奥比岛:梦想国度","v":"奥比岛:梦想国度"},{"n":"晶核","v":"晶核"},{"n":"星之破晓","v":"星之破晓"},{"n":"赛尔计划","v":"赛尔计划"},{"n":"SLG综合","v":"SLG综合"},{"n":"代号:伙伴","v":"代号:伙伴"},{"n":"天使之战","v":"天使之战"},{"n":"全明星街球派对","v":"全明星街球派对"},{"n":"合金弹头:觉醒","v":"合金弹头:觉醒"},{"n":"劲乐幻想","v":"劲乐幻想"},{"n":"白荆回廊","v":"白荆回廊"},{"n":"战地无疆","v":"战地无疆"},{"n":"三国志战棋版","v":"三国志战棋版"},{"n":"一拳超人:世界","v":"一拳超人:世界"},{"n":"鹅鸭杀手游","v":"鹅鸭杀手游"},{"n":"太空杀","v":"太空杀"},{"n":"大话西游:归来","v":"大话西游:归来"},{"n":"战火勋章","v":"战火勋章"},{"n":"西行纪 燃魂","v":"西行纪 燃魂"},{"n":"决胜巅峰","v":"决胜巅峰"},{"n":"冒险岛:枫之传说","v":"冒险岛:枫之传说"},{"n":"七人传奇:光与暗之交战","v":"七人传奇:光与暗之交战"},{"n":"综合桌游","v":"综合桌游"},{"n":"闪耀!优俊少女","v":"闪耀!优俊少女"},{"n":"三角洲行动","v":"三角洲行动"},{"n":"二次元游戏","v":"二次元游戏"}]}],
"huya":[{"key":"area","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":"CS2","v":"CS2"},{"n":"穿越火线","v":"穿越火线"},{"n":"lol云顶之弈","v":"lol云顶之弈"},{"n":"无畏契约","v":"无畏契约"},{"n":"CFHD","v":"CFHD"},{"n":"逆战","v":"逆战"},{"n":"炉石传说","v":"炉石传说"},{"n":"DOTA2","v":"DOTA2"},{"n":"地下城与勇士","v":"地下城与勇士"},{"n":"魔兽世界","v":"魔兽世界"},{"n":"坦克世界","v":"坦克世界"},{"n":"DOTA1","v":"DOTA1"},{"n":"梦三国","v":"梦三国"},{"n":"魔兽争霸3","v":"魔兽争霸3"},{"n":"问道","v":"问道"},{"n":"命运方舟","v":"命运方舟"},{"n":"QQ飞车","v":"QQ飞车"},{"n":"星际争霸","v":"星际争霸"},{"n":"网游竞技","v":"网游竞技"},{"n":"射击综合游戏","v":"射击综合游戏"},{"n":"暴雪专区","v":"暴雪专区"},{"n":"彩虹岛Online","v":"彩虹岛Online"},{"n":"剑灵","v":"剑灵"},{"n":"军事游戏","v":"军事游戏"},{"n":"冒险岛","v":"冒险岛"},{"n":"暗黑破坏神","v":"暗黑破坏神"},{"n":"诛仙3","v":"诛仙3"},{"n":"热血江湖","v":"热血江湖"},{"n":"英魂之刃","v":"英魂之刃"},{"n":"武林外传一世琴缘","v":"武林外传一世琴缘"},{"n":"起凡:群雄逐鹿","v":"起凡:群雄逐鹿"},{"n":"神武4电脑版","v":"神武4电脑版"},{"n":"龙之谷","v":"龙之谷"},{"n":"炉石战棋","v":"炉石战棋"},{"n":"御龙在天","v":"御龙在天"},{"n":"逆水寒","v":"逆水寒"},{"n":"千年3","v":"千年3"},{"n":"永恒之塔","v":"永恒之塔"},{"n":"体育游戏","v":"体育游戏"},{"n":"寻仙","v":"寻仙"},{"n":"战舰世界","v":"战舰世界"},{"n":"QQ三国","v":"QQ三国"},{"n":"流放之路","v":"流放之路"},{"n":"反恐精英Online","v":"反恐精英Online"},{"n":"反恐行动online","v":"反恐行动online"},{"n":"征途","v":"征途"},{"n":"战争雷霆","v":"战争雷霆"},{"n":"丝路传说2","v":"丝路传说2"},{"n":"星际战甲","v":"星际战甲"},{"n":"NBA2KOL系列","v":"NBA2KOL系列"},{"n":"九阴真经","v":"九阴真经"},{"n":"跑跑卡丁车","v":"跑跑卡丁车"},{"n":"诛仙世界","v":"诛仙世界"},{"n":"QQ华夏","v":"QQ华夏"},{"n":"天涯明月刀","v":"天涯明月刀"},{"n":"大话西游:归来","v":"大话西游:归来"},{"n":"荒野行动PC版","v":"荒野行动PC版"},{"n":"新剑侠情缘","v":"新剑侠情缘"},{"n":"剑网3","v":"剑网3"},{"n":"生死狙击2","v":"生死狙击2"},{"n":"全球使命","v":"全球使命"},{"n":"梦想世界3","v":"梦想世界3"},{"n":"枪神纪","v":"枪神纪"},{"n":"新天龙八部","v":"新天龙八部"},{"n":"铁甲雄兵","v":"铁甲雄兵"},{"n":"神泣","v":"神泣"},{"n":"斗战神","v":"斗战神"},{"n":"造梦西游OL","v":"造梦西游OL"},{"n":"天堂","v":"天堂"},{"n":"大话西游2","v":"大话西游2"},{"n":"使命召唤:战区","v":"使命召唤:战区"},{"n":"希望OL","v":"希望OL"},{"n":"极光世界 弑神传","v":"极光世界 弑神传"},{"n":"守望先锋归来","v":"守望先锋归来"},{"n":"QQ自由幻想","v":"QQ自由幻想"},{"n":"命运2","v":"命运2"},{"n":"奇迹世界2","v":"奇迹世界2"},{"n":"坦克大战","v":"坦克大战"},{"n":"生死狙击","v":"生死狙击"},{"n":"天翼决","v":"天翼决"},{"n":"QQ幻想","v":"QQ幻想"},{"n":"新飞飞(FlyFF)","v":"新飞飞(FlyFF)"},{"n":"刀剑英雄","v":"刀剑英雄"},{"n":"FIFA Online系列","v":"FIFA Online系列"},{"n":"全球使命3","v":"全球使命3"},{"n":"完美端游系列","v":"完美端游系列"},{"n":"战意","v":"战意"},{"n":"泡泡堂","v":"泡泡堂"},{"n":"赛尔号","v":"赛尔号"},{"n":"大唐无双零","v":"大唐无双零"},{"n":"QQ炫舞","v":"QQ炫舞"},{"n":"007传奇","v":"007传奇"},{"n":"天下","v":"天下"},{"n":"天谕","v":"天谕"},{"n":"新倩女幽魂","v":"新倩女幽魂"},{"n":"传世无双","v":"传世无双"},{"n":"剑侠世界","v":"剑侠世界"},{"n":"Warhaven","v":"Warhaven"},{"n":"诺亚传说","v":"诺亚传说"},{"n":"新挑战","v":"新挑战"},{"n":"超激斗梦境","v":"超激斗梦境"},{"n":"QQ音速","v":"QQ音速"},{"n":"征途2","v":"征途2"},{"n":"征程","v":"征程"},{"n":"蜀门","v":"蜀门"},{"n":"完美世界:诸神之战","v":"完美世界:诸神之战"},{"n":"战之刃:幸存者","v":"战之刃:幸存者"},{"n":"黎明之光","v":"黎明之光"},{"n":"天命西游","v":"天命西游"},{"n":"炫舞时代","v":"炫舞时代"},{"n":"荣誉空间","v":"荣誉空间"},{"n":"卡拉彼丘","v":"卡拉彼丘"},{"n":"成吉思汗怀旧版","v":"成吉思汗怀旧版"},{"n":"英雄年代3","v":"英雄年代3"},{"n":"天书奇谈","v":"天书奇谈"},{"n":"劲舞团","v":"劲舞团"},{"n":"远征Online梦想版","v":"远征Online梦想版"},{"n":"奇迹:传奇","v":"奇迹:传奇"},{"n":"封印者","v":"封印者"},{"n":"上古世纪","v":"上古世纪"},{"n":"梦幻诛仙2","v":"梦幻诛仙2"},{"n":"TERA Online","v":"TERA Online"},{"n":"倚天Ⅱ","v":"倚天Ⅱ"},{"n":"街头篮球","v":"街头篮球"},{"n":"永恒轮回:无限","v":"永恒轮回:无限"},{"n":"火线精英","v":"火线精英"},{"n":"忍者村大战2","v":"忍者村大战2"},{"n":"领地人生","v":"领地人生"},{"n":"仙侠世界","v":"仙侠世界"},{"n":"洛奇英雄传","v":"洛奇英雄传"},{"n":"KARDS","v":"KARDS"},{"n":"无限法则","v":"无限法则"},{"n":"全面战争:竞技场","v":"全面战争:竞技场"},{"n":"自由篮球","v":"自由篮球"},{"n":"FC Online4","v":"FC Online4"},{"n":"战地之王","v":"战地之王"},{"n":"古剑奇谭OL","v":"古剑奇谭OL"},{"n":"QQ仙侠传","v":"QQ仙侠传"},{"n":"300英雄","v":"300英雄"},{"n":"天天吃鸡","v":"天天吃鸡"},{"n":"永劫无间","v":"永劫无间"},{"n":"主机游戏","v":"主机游戏"},{"n":"猛兽派对","v":"猛兽派对"},{"n":"互动点播","v":"互动点播"},{"n":"我的世界","v":"我的世界"},{"n":"方舟","v":"方舟"},{"n":"单机热游","v":"单机热游"},{"n":"怀旧游戏","v":"怀旧游戏"},{"n":"逃离塔科夫","v":"逃离塔科夫"},{"n":"俄罗斯钓鱼4","v":"俄罗斯钓鱼4"},{"n":"部落:上升","v":"部落:上升"},{"n":"Dark and Darker","v":"Dark and Darker"},{"n":"The Front","v":"The Front"},{"n":"Apex英雄","v":"Apex英雄"},{"n":"生化危机4重制版","v":"生化危机4重制版"},{"n":"DayZ独立版","v":"DayZ独立版"},{"n":"星空","v":"星空"},{"n":"互动剧游","v":"互动剧游"},{"n":"艾尔登法环","v":"艾尔登法环"},{"n":"恐惧之间","v":"恐惧之间"},{"n":"SCUM","v":"SCUM"},{"n":"Dread Hunger","v":"Dread Hunger"},{"n":"塞尔达传说:王国之泪","v":"塞尔达传说:王国之泪"},{"n":"欧洲卡车模拟","v":"欧洲卡车模拟"},{"n":"洛克王国","v":"洛克王国"},{"n":"卧龙:苍天陨落","v":"卧龙:苍天陨落"},{"n":"无人深空","v":"无人深空"},{"n":"帝国神话","v":"帝国神话"},{"n":"饥荒","v":"饥荒"},{"n":"森林之子","v":"森林之子"},{"n":"星球大战系列","v":"星球大战系列"},{"n":"极限竞速:地平线","v":"极限竞速:地平线"},{"n":"最终幻想16","v":"最终幻想16"},{"n":"Among Us","v":"Among Us"},{"n":"怪物猎人:崛起","v":"怪物猎人:崛起"},{"n":"怪物猎人物语","v":"怪物猎人物语"},{"n":"骑马与砍杀系列","v":"骑马与砍杀系列"},{"n":"荒野大镖客2","v":"荒野大镖客2"},{"n":"太荒初境","v":"太荒初境"},{"n":"罗布乐思","v":"罗布乐思"},{"n":"只狼:影逝二度","v":"只狼:影逝二度"},{"n":"双人成行","v":"双人成行"},{"n":"重生边缘","v":"重生边缘"},{"n":"海贼王 寻秘世界","v":"海贼王 寻秘世界"},{"n":"战神:诸神黄昏","v":"战神:诸神黄昏"},{"n":"恐鬼症","v":"恐鬼症"},{"n":"鬼谷八荒","v":"鬼谷八荒"},{"n":"霍格沃茨之遗","v":"霍格沃茨之遗"},{"n":"全面战争","v":"全面战争"},{"n":"仁王2","v":"仁王2"},{"n":"奥拉星","v":"奥拉星"},{"n":"甜蜜之家","v":"甜蜜之家"},{"n":"仙剑奇侠传七","v":"仙剑奇侠传七"},{"n":"消逝的光芒2","v":"消逝的光芒2"},{"n":"渡神记","v":"渡神记"},{"n":"归家异途","v":"归家异途"},{"n":"博德之门3","v":"博德之门3"},{"n":"看门狗:军团","v":"看门狗:军团"},{"n":"使命召唤系列","v":"使命召唤系列"},{"n":"育碧游戏","v":"育碧游戏"},{"n":"帝国时代4","v":"帝国时代4"},{"n":"英灵神殿","v":"英灵神殿"},{"n":"蛮荒志异:起源","v":"蛮荒志异:起源"},{"n":"岛","v":"岛"},{"n":"沙盒与副本","v":"沙盒与副本"},{"n":"扫雷","v":"扫雷"},{"n":"街机游戏","v":"街机游戏"},{"n":"幽灵线:东京","v":"幽灵线:东京"},{"n":"怪物猎人世界","v":"怪物猎人世界"},{"n":"盗贼之海","v":"盗贼之海"},{"n":"纸人","v":"纸人"},{"n":"黑色像素人","v":"黑色像素人"},{"n":"对马岛之魂","v":"对马岛之魂"},{"n":"瑞奇与叮当","v":"瑞奇与叮当"},{"n":"港诡实录","v":"港诡实录"},{"n":"剑士","v":"剑士"},{"n":"魔法门之英雄无敌系列","v":"魔法门之英雄无敌系列"},{"n":"星露谷物语","v":"星露谷物语"},{"n":"仙剑奇侠传四","v":"仙剑奇侠传四"},{"n":"伤害世界","v":"伤害世界"},{"n":"禁闭求生","v":"禁闭求生"},{"n":"真三国无双","v":"真三国无双"},{"n":"恐怖黎明","v":"恐怖黎明"},{"n":"其他单机","v":"其他单机"},{"n":"幽灵行动:荒野","v":"幽灵行动:荒野"},{"n":"边缘","v":"边缘"},{"n":"阿凡达","v":"阿凡达"},{"n":"全面战争:三国","v":"全面战争:三国"},{"n":"黎明之星","v":"黎明之星"},{"n":"翼星求生","v":"翼星求生"},{"n":"黎明传说","v":"黎明传说"},{"n":"恶魔之魂","v":"恶魔之魂"},{"n":"艾兰岛","v":"艾兰岛"},{"n":"龙与地下城秘影历代记HD","v":"龙与地下城秘影历代记HD"},{"n":"龙与地下城:匕首谷","v":"龙与地下城:匕首谷"},{"n":"沙石镇时光","v":"沙石镇时光"},{"n":"三国志曹操传","v":"三国志曹操传"},{"n":"FIFA足球","v":"FIFA足球"},{"n":"最终幻想7重制版","v":"最终幻想7重制版"},{"n":"四海兄弟","v":"四海兄弟"},{"n":"最终幻想:起源","v":"最终幻想:起源"},{"n":"摔跤城大乱斗","v":"摔跤城大乱斗"},{"n":"音乐游戏","v":"音乐游戏"},{"n":"精灵与萤火意志","v":"精灵与萤火意志"},{"n":"桥梁建造师","v":"桥梁建造师"},{"n":"哈迪斯","v":"哈迪斯"},{"n":"小缇娜的奇幻之地","v":"小缇娜的奇幻之地"},{"n":"宝可梦:剑盾","v":"宝可梦:剑盾"},{"n":"边境","v":"边境"},{"n":"人类一败涂地","v":"人类一败涂地"},{"n":"糖豆人:终极淘汰赛","v":"糖豆人:终极淘汰赛"},{"n":"精灵宝可梦Let's Go","v":"精灵宝可梦Let's Go"},{"n":"战锤40K暗潮","v":"战锤40K暗潮"},{"n":"石油骚动","v":"石油骚动"},{"n":"紫塞秋风","v":"紫塞秋风"},{"n":"阿尔比恩","v":"阿尔比恩"},{"n":"猎人:荒野的召唤","v":"猎人:荒野的召唤"},{"n":"FIFA 23","v":"FIFA 23"},{"n":"都市:天际线","v":"都市:天际线"},{"n":"乐高大电影:游戏版","v":"乐高大电影:游戏版"},{"n":"全面战争:阿提拉","v":"全面战争:阿提拉"},{"n":"斩妖行","v":"斩妖行"},{"n":"马里奥赛车8","v":"马里奥赛车8"},{"n":"复仇者联盟","v":"复仇者联盟"},{"n":"霓虹深渊","v":"霓虹深渊"},{"n":"王者荣耀","v":"王者荣耀"},{"n":"和平精英","v":"和平精英"},{"n":"英雄联盟手游","v":"英雄联盟手游"},{"n":"CF手游","v":"CF手游"},{"n":"金铲铲之战","v":"金铲铲之战"},{"n":"三国杀","v":"三国杀"},{"n":"原神","v":"原神"},{"n":"棋牌桌游","v":"棋牌桌游"},{"n":"综合手游","v":"综合手游"},{"n":"劲乐幻想","v":"劲乐幻想"},{"n":"新游广场","v":"新游广场"},{"n":"崩坏:星穹铁道","v":"崩坏:星穹铁道"},{"n":"火影忍者手游","v":"火影忍者手游"},{"n":"第五人格","v":"第五人格"},{"n":"问道手游","v":"问道手游"},{"n":"暗区突围","v":"暗区突围"},{"n":"QQ飞车手游","v":"QQ飞车手游"},{"n":"球球大作战","v":"球球大作战"},{"n":"明日之后","v":"明日之后"},{"n":"皇室战争","v":"皇室战争"},{"n":"COD手游","v":"COD手游"},{"n":"手游休闲","v":"手游休闲"},{"n":"二次元手游","v":"二次元手游"},{"n":"摸了个鱼","v":"摸了个鱼"},{"n":"MMORPG","v":"MMORPG"},{"n":"动作游戏","v":"动作游戏"},{"n":"战争冲突","v":"战争冲突"},{"n":"王者模拟战","v":"王者模拟战"},{"n":"逆水寒手游","v":"逆水寒手游"},{"n":"幻塔","v":"幻塔"},{"n":"欢乐斗地主","v":"欢乐斗地主"},{"n":"神武4手游","v":"神武4手游"},{"n":"阴阳师","v":"阴阳师"},{"n":"DNF手游","v":"DNF手游"},{"n":"欢乐麻将","v":"欢乐麻将"},{"n":"英雄联盟电竞经理","v":"英雄联盟电竞经理"},{"n":"狼人杀手游","v":"狼人杀手游"},{"n":"新天龙八部手游","v":"新天龙八部手游"},{"n":"中国象棋","v":"中国象棋"},{"n":"天天象棋","v":"天天象棋"},{"n":"传奇世界3D","v":"传奇世界3D"},{"n":"御龙在天手游","v":"御龙在天手游"},{"n":"高能英雄","v":"高能英雄"},{"n":"天龙八部手游","v":"天龙八部手游"},{"n":"三国志战略版","v":"三国志战略版"},{"n":"忍者必须死3","v":"忍者必须死3"},{"n":"SKY光遇","v":"SKY光遇"},{"n":"虎牙领主争霸","v":"虎牙领主争霸"},{"n":"云上城之歌","v":"云上城之歌"},{"n":"晶核","v":"晶核"},{"n":"仙境传说RO","v":"仙境传说RO"},{"n":"天天狼人","v":"天天狼人"},{"n":"JJ棋牌","v":"JJ棋牌"},{"n":"奇迹MU觉醒","v":"奇迹MU觉醒"},{"n":"指尖四川麻将","v":"指尖四川麻将"},{"n":"部落冲突","v":"部落冲突"},{"n":"新剑侠情缘手游","v":"新剑侠情缘手游"},{"n":"萌宠远征","v":"萌宠远征"},{"n":"暗黑破坏神:不朽","v":"暗黑破坏神:不朽"},{"n":"英雄杀","v":"英雄杀"},{"n":"热血江湖手游","v":"热血江湖手游"},{"n":"蛋仔派对","v":"蛋仔派对"},{"n":"完美世界手游","v":"完美世界手游"},{"n":"巅峰战舰","v":"巅峰战舰"},{"n":"狼人杀","v":"狼人杀"},{"n":"斗罗大陆:魂师对决","v":"斗罗大陆:魂师对决"},{"n":"武侠乂手游","v":"武侠乂手游"},{"n":"诛仙手游","v":"诛仙手游"},{"n":"斗破苍穹手游","v":"斗破苍穹手游"},{"n":"迷你世界","v":"迷你世界"},{"n":"风云","v":"风云"},{"n":"妄想山海","v":"妄想山海"},{"n":"曙光英雄","v":"曙光英雄"},{"n":"三国战纪2","v":"三国战纪2"},{"n":"梦幻新诛仙","v":"梦幻新诛仙"},{"n":"黎明觉醒:生机","v":"黎明觉醒:生机"},{"n":"远征","v":"远征"},{"n":"航海王:燃烧意志","v":"航海王:燃烧意志"},{"n":"火炬之光:无限","v":"火炬之光:无限"},{"n":"巅峰极速","v":"巅峰极速"},{"n":"圣境之塔","v":"圣境之塔"},{"n":"魔力宝贝","v":"魔力宝贝"},{"n":"香肠派对","v":"香肠派对"},{"n":"创造与魔法","v":"创造与魔法"},{"n":"JJ斗地主","v":"JJ斗地主"},{"n":"永恒纪元:戒","v":"永恒纪元:戒"},{"n":"天涯明月刀手游","v":"天涯明月刀手游"},{"n":"狼人杀官方","v":"狼人杀官方"},{"n":"混沌起源","v":"混沌起源"},{"n":"多多自走棋","v":"多多自走棋"},{"n":"梦幻诛仙手游","v":"梦幻诛仙手游"},{"n":"鸿图之下","v":"鸿图之下"},{"n":"新笑傲江湖","v":"新笑傲江湖"},{"n":"凡人修仙传:人界篇","v":"凡人修仙传:人界篇"},{"n":"多乐棋牌","v":"多乐棋牌"},{"n":"口袋觉醒","v":"口袋觉醒"},{"n":"跑跑卡丁车手游","v":"跑跑卡丁车手游"},{"n":"奶块","v":"奶块"},{"n":"月圆之夜","v":"月圆之夜"},{"n":"率土之滨","v":"率土之滨"},{"n":"征途2手游","v":"征途2手游"},{"n":"英魂之刃口袋版","v":"英魂之刃口袋版"},{"n":"精灵盛典:黎明","v":"精灵盛典:黎明"},{"n":"方舟手游","v":"方舟手游"},{"n":"掼蛋","v":"掼蛋"},{"n":"绝世仙王","v":"绝世仙王"},{"n":"流星群侠传","v":"流星群侠传"},{"n":"寻仙手游","v":"寻仙手游"},{"n":"一梦江湖","v":"一梦江湖"},{"n":"Lost Light萤火突击国际服","v":"Lost Light萤火突击国际服"},{"n":"弹幕云游戏","v":"弹幕云游戏"},{"n":"猎魂觉醒","v":"猎魂觉醒"},{"n":"冒险岛:枫之传说","v":"冒险岛:枫之传说"},{"n":"征途手游","v":"征途手游"},{"n":"海岛奇兵","v":"海岛奇兵"},{"n":"倩女幽魂手游","v":"倩女幽魂手游"},{"n":"超凡先锋","v":"超凡先锋"},{"n":"龙之谷2手游","v":"龙之谷2手游"},{"n":"崩坏3","v":"崩坏3"},{"n":"猫和老鼠","v":"猫和老鼠"},{"n":"七人传奇:光与暗之交战","v":"七人传奇:光与暗之交战"},{"n":"JJ麻将","v":"JJ麻将"},{"n":"拉轰西游","v":"拉轰西游"},{"n":"三国战纪","v":"三国战纪"},{"n":"自由幻想手游","v":"自由幻想手游"},{"n":"秦时明月世界","v":"秦时明月世界"},{"n":"新斗罗大陆","v":"新斗罗大陆"},{"n":"新神魔大陆","v":"新神魔大陆"},{"n":"逃跑吧!少年","v":"逃跑吧!少年"},{"n":"太古神王2","v":"太古神王2"},{"n":"剑侠世界3","v":"剑侠世界3"},{"n":"天天吃鸡手机版","v":"天天吃鸡手机版"},{"n":"时空猎人3","v":"时空猎人3"},{"n":"合金弹头:觉醒","v":"合金弹头:觉醒"},{"n":"明日方舟","v":"明日方舟"},{"n":"原始征途","v":"原始征途"},{"n":"奇迹:最强者","v":"奇迹:最强者"},{"n":"天天酷跑","v":"天天酷跑"},{"n":"FC 足球世界","v":"FC 足球世界"},{"n":"万国觉醒","v":"万国觉醒"},{"n":"机动都市阿尔法","v":"机动都市阿尔法"},{"n":"航海王热血航线","v":"航海王热血航线"},{"n":"幻世九歌","v":"幻世九歌"},{"n":"植物大战僵尸","v":"植物大战僵尸"},{"n":"无悔华夏","v":"无悔华夏"},{"n":"时空猎人","v":"时空猎人"},{"n":"荒野乱斗","v":"荒野乱斗"},{"n":"拳皇98终极之战OL","v":"拳皇98终极之战OL"},{"n":"蛇蛇争霸","v":"蛇蛇争霸"},{"n":"王牌竞速","v":"王牌竞速"},{"n":"重返帝国","v":"重返帝国"},{"n":"吞噬星空:黎明","v":"吞噬星空:黎明"},{"n":"口袋妖怪","v":"口袋妖怪"},{"n":"QQ炫舞手游","v":"QQ炫舞手游"},{"n":"一拳超人:最强之男","v":"一拳超人:最强之男"},{"n":"荣耀新三国","v":"荣耀新三国"},{"n":"少年三国志2","v":"少年三国志2"},{"n":"我的起源","v":"我的起源"},{"n":"决战平安京","v":"决战平安京"},{"n":"剑灵2","v":"剑灵2"},{"n":"开心消消乐","v":"开心消消乐"},{"n":"小小蚁国","v":"小小蚁国"},{"n":"最强NBA","v":"最强NBA"},{"n":"剑侠情缘手游","v":"剑侠情缘手游"},{"n":"长安幻想","v":"长安幻想"},{"n":"我叫MT4","v":"我叫MT4"},{"n":"全明星街球派对","v":"全明星街球派对"},{"n":"大话西游手游","v":"大话西游手游"},{"n":"荣耀大天使","v":"荣耀大天使"},{"n":"镇魂街:天生为王","v":"镇魂街:天生为王"},{"n":"摩尔庄园","v":"摩尔庄园"},{"n":"游戏王:决斗链接","v":"游戏王:决斗链接"},{"n":"剑侠世界2手游","v":"剑侠世界2手游"},{"n":"青云诀2","v":"青云诀2"},{"n":"战地无疆","v":"战地无疆"},{"n":"一念逍遥","v":"一念逍遥"},{"n":"永劫无间手游","v":"永劫无间手游"},{"n":"尘白禁区","v":"尘白禁区"},{"n":"元梦之星","v":"元梦之星"},{"n":"不良人3","v":"不良人3"},{"n":"剑灵:革命","v":"剑灵:革命"},{"n":"魔力宝贝:旅人","v":"魔力宝贝:旅人"},{"n":"米加小镇","v":"米加小镇"},{"n":"龙武手游","v":"龙武手游"},{"n":"斗罗大陆2绝世唐门","v":"斗罗大陆2绝世唐门"},{"n":"西行纪燃魂","v":"西行纪燃魂"},{"n":"坦克世界闪击战","v":"坦克世界闪击战"},{"n":"军棋","v":"军棋"},{"n":"饥荒:新家","v":"饥荒:新家"},{"n":"拳皇命运","v":"拳皇命运"},{"n":"实况足球","v":"实况足球"},{"n":"战舰世界闪击战","v":"战舰世界闪击战"},{"n":"时空召唤","v":"时空召唤"},{"n":"王牌战争:文明重启","v":"王牌战争:文明重启"},{"n":"雀魂麻将","v":"雀魂麻将"},{"n":"欢乐升级","v":"欢乐升级"},{"n":"绿色征途","v":"绿色征途"},{"n":"弹弹堂手游","v":"弹弹堂手游"},{"n":"太极熊猫3猎龙","v":"太极熊猫3猎龙"},{"n":"哈利波特:魔法觉醒","v":"哈利波特:魔法觉醒"},{"n":"天地劫:幽城再临","v":"天地劫:幽城再临"},{"n":"热血街篮","v":"热血街篮"},{"n":"神雕侠侣手游","v":"神雕侠侣手游"},{"n":"山海镜花","v":"山海镜花"},{"n":"三国志战棋版","v":"三国志战棋版"},{"n":"神雕侠侣2","v":"神雕侠侣2"},{"n":"仙魔决","v":"仙魔决"},{"n":"王者荣耀星之破晓","v":"王者荣耀星之破晓"},{"n":"我在江湖之神魔道","v":"我在江湖之神魔道"},{"n":"梦幻模拟战","v":"梦幻模拟战"},{"n":"单机手游","v":"单机手游"},{"n":"斗罗大陆-斗神再临","v":"斗罗大陆-斗神再临"},{"n":"未来之役","v":"未来之役"},{"n":"风云岛行动","v":"风云岛行动"},{"n":"新游推荐","v":"新游推荐"},{"n":"火影忍者OL","v":"火影忍者OL"},{"n":"九灵神域","v":"九灵神域"},{"n":"武动乾坤","v":"武动乾坤"},{"n":"秦时明月2","v":"秦时明月2"},{"n":"文明与征服","v":"文明与征服"},{"n":"战双:帕弥什","v":"战双:帕弥什"},{"n":"大航海时代:海上霸主","v":"大航海时代:海上霸主"},{"n":"剑网1归来","v":"剑网1归来"},{"n":"绝区零","v":"绝区零"},{"n":"黑色沙漠手游","v":"黑色沙漠手游"},{"n":"虎牙吃鸡","v":"虎牙吃鸡"},{"n":"一剑斩仙","v":"一剑斩仙"},{"n":"传奇天下","v":"传奇天下"},{"n":"斗斗堂","v":"斗斗堂"},{"n":"斗罗大陆","v":"斗罗大陆"},{"n":"天谕手游","v":"天谕手游"},{"n":"坎公骑冠剑","v":"坎公骑冠剑"},{"n":"最终幻想觉醒","v":"最终幻想觉醒"},{"n":"神将三国","v":"神将三国"},{"n":"灌篮高手正版授权手游","v":"灌篮高手正版授权手游"},{"n":"剑与家园","v":"剑与家园"},{"n":"极无双2","v":"极无双2"},{"n":"光明大陆","v":"光明大陆"},{"n":"荒野行动","v":"荒野行动"},{"n":"战斗法则","v":"战斗法则"},{"n":"疯狂原始人","v":"疯狂原始人"},{"n":"逆战手游","v":"逆战手游"},{"n":"石器时代:觉醒","v":"石器时代:觉醒"}]}],
"bilibili":[{"key":"area","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":"TopStar","v":"TopStar"},{"n":"虚拟Singer","v":"虚拟Singer"},{"n":"虚拟Gamer","v":"虚拟Gamer"},{"n":"虚拟声优","v":"虚拟声优"},{"n":"虚拟日常","v":"虚拟日常"},{"n":"虚拟APEX","v":"虚拟APEX"},{"n":"虚拟PK","v":"虚拟PK"},{"n":"交友","v":"交友"},{"n":"点唱","v":"点唱"},{"n":"兴趣","v":"兴趣"},{"n":"社科法律心理","v":"社科法律心理"},{"n":"人文历史","v":"人文历史"},{"n":"校园学习","v":"校园学习"},{"n":"职场·技能","v":"职场·技能"},{"n":"科技","v":"科技"},{"n":"科学科普","v":"科学科普"},{"n":"游戏赛事","v":"游戏赛事"},{"n":"体育赛事","v":"体育赛事"},{"n":"赛事综合","v":"赛事综合"},{"n":"热门帮玩","v":"热门帮玩"},{"n":"手游帮玩","v":"手游帮玩"},{"n":"网游帮玩","v":"网游帮玩"},{"n":"单机帮玩","v":"单机帮玩"},{"n":"兵临城下","v":"兵临城下"},{"n":"功夫狂飙","v":"功夫狂飙"},{"n":"竞技玩法","v":"竞技玩法"},{"n":"休闲玩法","v":"休闲玩法"},{"n":"英雄联盟","v":"英雄联盟"},{"n":"无畏契约","v":"无畏契约"},{"n":"CS:GO","v":"CS:GO"},{"n":"APEX英雄","v":"APEX英雄"},{"n":"永劫无间","v":"永劫无间"},{"n":"穿越火线","v":"穿越火线"},{"n":"命运方舟","v":"命运方舟"},{"n":"DOTA2","v":"DOTA2"},{"n":"吃鸡行动","v":"吃鸡行动"},{"n":"逃离塔科夫","v":"逃离塔科夫"},{"n":"传奇","v":"传奇"},{"n":"DNF","v":"DNF"},{"n":"卡拉彼丘","v":"卡拉彼丘"},{"n":"幕后高手","v":"幕后高手"},{"n":"生死狙击2","v":"生死狙击2"},{"n":"洛奇英雄传","v":"洛奇英雄传"},{"n":"最终幻想14","v":"最终幻想14"},{"n":"重生边缘","v":"重生边缘"},{"n":"星际战甲","v":"星际战甲"},{"n":"梦三国","v":"梦三国"},{"n":"英魂之刃","v":"英魂之刃"},{"n":"剑网3","v":"剑网3"},{"n":"从军","v":"从军"},{"n":"铁甲雄兵","v":"铁甲雄兵"},{"n":"封印者","v":"封印者"},{"n":"新天龙八部","v":"新天龙八部"},{"n":"赛尔号","v":"赛尔号"},{"n":"造梦西游","v":"造梦西游"},{"n":"洛克王国","v":"洛克王国"},{"n":"问道","v":"问道"},{"n":"诛仙世界","v":"诛仙世界"},{"n":"大话西游","v":"大话西游"},{"n":"奇迹MU","v":"奇迹MU"},{"n":"永恒之塔","v":"永恒之塔"},{"n":"QQ三国","v":"QQ三国"},{"n":"人间地狱","v":"人间地狱"},{"n":"彩虹岛","v":"彩虹岛"},{"n":"洛奇","v":"洛奇"},{"n":"跑跑卡丁车","v":"跑跑卡丁车"},{"n":"星际公民","v":"星际公民"},{"n":"Squad战术小队","v":"Squad战术小队"},{"n":"反恐精英Online","v":"反恐精英Online"},{"n":"风暴奇侠","v":"风暴奇侠"},{"n":"创世战车","v":"创世战车"},{"n":"装甲战争","v":"装甲战争"},{"n":"守望先锋","v":"守望先锋"},{"n":"阿尔比恩","v":"阿尔比恩"},{"n":"猎杀对决","v":"猎杀对决"},{"n":"CFHD","v":"CFHD"},{"n":"骑士精神2","v":"骑士精神2"},{"n":"超击突破","v":"超击突破"},{"n":"武装突袭","v":"武装突袭"},{"n":"Wayfinder寻路者","v":"Wayfinder寻路者"},{"n":"300英雄","v":"300英雄"},{"n":"炉石传说","v":"炉石传说"},{"n":"剑网3缘起","v":"剑网3缘起"},{"n":"街头篮球","v":"街头篮球"},{"n":"综合射击","v":"综合射击"},{"n":"剑灵","v":"剑灵"},{"n":"艾尔之光","v":"艾尔之光"},{"n":"黑色沙漠","v":"黑色沙漠"},{"n":"天涯明月刀","v":"天涯明月刀"},{"n":"超激斗梦境","v":"超激斗梦境"},{"n":"冒险岛","v":"冒险岛"},{"n":"逆战","v":"逆战"},{"n":"魔兽争霸3","v":"魔兽争霸3"},{"n":"QQ飞车","v":"QQ飞车"},{"n":"魔兽世界","v":"魔兽世界"},{"n":"FIFAONLINE4","v":"FIFAONLINE4"},{"n":"NBA2KOL2","v":"NBA2KOL2"},{"n":"使命召唤:战区","v":"使命召唤:战区"},{"n":"VRChat","v":"VRChat"},{"n":"坦克世界","v":"坦克世界"},{"n":"战舰世界","v":"战舰世界"},{"n":"战争与抉择","v":"战争与抉择"},{"n":"战争雷霆","v":"战争雷霆"},{"n":"战意","v":"战意"},{"n":"风暴英雄","v":"风暴英雄"},{"n":"星际争霸2","v":"星际争霸2"},{"n":"刀塔自走棋","v":"刀塔自走棋"},{"n":"堡垒之夜","v":"堡垒之夜"},{"n":"枪神纪","v":"枪神纪"},{"n":"三国杀","v":"三国杀"},{"n":"龙之谷","v":"龙之谷"},{"n":"古剑奇谭OL","v":"古剑奇谭OL"},{"n":"幻想全明星","v":"幻想全明星"},{"n":"怀旧网游","v":"怀旧网游"},{"n":"新游前瞻","v":"新游前瞻"},{"n":"星战前夜:晨曦","v":"星战前夜:晨曦"},{"n":"流放之路","v":"流放之路"},{"n":"FPS沙盒","v":"FPS沙盒"},{"n":"永恒轮回","v":"永恒轮回"},{"n":"激战2","v":"激战2"},{"n":"其他网游","v":"其他网游"},{"n":"蓝色协议","v":"蓝色协议"},{"n":"王者荣耀","v":"王者荣耀"},{"n":"和平精英","v":"和平精英"},{"n":"原神","v":"原神"},{"n":"崩坏:星穹铁道","v":"崩坏:星穹铁道"},{"n":"第五人格","v":"第五人格"},{"n":"LOL手游","v":"LOL手游"},{"n":"明日方舟","v":"明日方舟"},{"n":"黎明觉醒:生机","v":"黎明觉醒:生机"},{"n":"蛋仔派对","v":"蛋仔派对"},{"n":"冒险岛手游","v":"冒险岛手游"},{"n":"元梦之星","v":"元梦之星"},{"n":"闪耀!优俊少女","v":"闪耀!优俊少女"},{"n":"斯露德","v":"斯露德"},{"n":"千年之旅","v":"千年之旅"},{"n":"白夜极光","v":"白夜极光"},{"n":"逆水寒手游","v":"逆水寒手游"},{"n":"率土之滨","v":"率土之滨"},{"n":"月圆之夜","v":"月圆之夜"},{"n":"哈利波特:魔法觉醒","v":"哈利波特:魔法觉醒"},{"n":"七人传奇","v":"七人传奇"},{"n":"幻塔","v":"幻塔"},{"n":"星之破晓","v":"星之破晓"},{"n":"金铲铲之战","v":"金铲铲之战"},{"n":"少女前线2追放","v":"少女前线2追放"},{"n":"深空之眼","v":"深空之眼"},{"n":"无期迷途","v":"无期迷途"},{"n":"晶核","v":"晶核"},{"n":"星球重启","v":"星球重启"},{"n":"宿命回响:弦上的叹息","v":"宿命回响:弦上的叹息"},{"n":"光遇","v":"光遇"},{"n":"桃源深处有人家","v":"桃源深处有人家"},{"n":"三国志战棋版","v":"三国志战棋版"},{"n":"战火勋章","v":"战火勋章"},{"n":"以闪亮之名","v":"以闪亮之名"},{"n":"尘白禁区","v":"尘白禁区"},{"n":"古魂","v":"古魂"},{"n":"鬼泣-巅峰之战","v":"鬼泣-巅峰之战"},{"n":"奇点时代","v":"奇点时代"},{"n":"香肠派对","v":"香肠派对"},{"n":"猫之城","v":"猫之城"},{"n":"高能英雄","v":"高能英雄"},{"n":"使命召唤手游","v":"使命召唤手游"},{"n":"崩坏3","v":"崩坏3"},{"n":"银河境界线","v":"银河境界线"},{"n":"蔚蓝档案","v":"蔚蓝档案"},{"n":"第七史诗","v":"第七史诗"},{"n":"游戏王:决斗链接","v":"游戏王:决斗链接"},{"n":"游戏王","v":"游戏王"},{"n":"JJ斗地主","v":"JJ斗地主"},{"n":"阴阳师","v":"阴阳师"},{"n":"欢乐斗地主","v":"欢乐斗地主"},{"n":"太空行动","v":"太空行动"},{"n":"空之要塞:启航","v":"空之要塞:启航"},{"n":"长安幻想","v":"长安幻想"},{"n":"火影忍者手游","v":"火影忍者手游"},{"n":"Fate/GO","v":"Fate/GO"},{"n":"综合棋牌","v":"综合棋牌"},{"n":"QQ飞车手游","v":"QQ飞车手游"},{"n":"决战!平安京","v":"决战!平安京"},{"n":"狼人杀","v":"狼人杀"},{"n":"三国杀移动版","v":"三国杀移动版"},{"n":"碧蓝航线","v":"碧蓝航线"},{"n":"影之诗","v":"影之诗"},{"n":"明日之后","v":"明日之后"},{"n":"重返未来1999","v":"重返未来1999"},{"n":"环行旅舍","v":"环行旅舍"},{"n":"幻世与冒险","v":"幻世与冒险"},{"n":"部落冲突:皇室战争","v":"部落冲突:皇室战争"},{"n":"奥比岛手游","v":"奥比岛手游"},{"n":"弹弹堂","v":"弹弹堂"},{"n":"雀姬","v":"雀姬"},{"n":"公主连结Re:Dive","v":"公主连结Re:Dive"},{"n":"DNF手游","v":"DNF手游"},{"n":"FIFA足球世界","v":"FIFA足球世界"},{"n":"BanGDream","v":"BanGDream"},{"n":"荒野乱斗","v":"荒野乱斗"},{"n":"CF手游","v":"CF手游"},{"n":"战双帕弥什","v":"战双帕弥什"},{"n":"天涯明月刀手游","v":"天涯明月刀手游"},{"n":"一拳超人:世界","v":"一拳超人:世界"},{"n":"解密游戏","v":"解密游戏"},{"n":"恋爱养成游戏","v":"恋爱养成游戏"},{"n":"暗黑破坏神:不朽","v":"暗黑破坏神:不朽"},{"n":"暗区突围","v":"暗区突围"},{"n":"跑跑卡丁车手游","v":"跑跑卡丁车手游"},{"n":"非人学园","v":"非人学园"},{"n":"百闻牌","v":"百闻牌"},{"n":"猫和老鼠手游","v":"猫和老鼠手游"},{"n":"坎公骑冠剑","v":"坎公骑冠剑"},{"n":"忍者必须死3","v":"忍者必须死3"},{"n":"梦幻西游手游","v":"梦幻西游手游"},{"n":"航海王热血航线","v":"航海王热血航线"},{"n":"少女前线","v":"少女前线"},{"n":"300大作战","v":"300大作战"},{"n":"少女前线:云图计划","v":"少女前线:云图计划"},{"n":"漫威超级战争","v":"漫威超级战争"},{"n":"摩尔庄园手游","v":"摩尔庄园手游"},{"n":"宝可梦大集结","v":"宝可梦大集结"},{"n":"小动物之星","v":"小动物之星"},{"n":"天地劫:幽城再临","v":"天地劫:幽城再临"},{"n":"漫威对决","v":"漫威对决"},{"n":"东方归言录","v":"东方归言录"},{"n":"梦幻模拟战","v":"梦幻模拟战"},{"n":"时空猎人3","v":"时空猎人3"},{"n":"重返帝国","v":"重返帝国"},{"n":"休闲小游戏","v":"休闲小游戏"},{"n":"其他手游","v":"其他手游"},{"n":"新游评测","v":"新游评测"},{"n":"山海镜花","v":"山海镜花"},{"n":"小冰冰传奇","v":"小冰冰传奇"},{"n":"主机游戏","v":"主机游戏"},{"n":"我的世界","v":"我的世界"},{"n":"独立游戏","v":"独立游戏"},{"n":"怀旧游戏","v":"怀旧游戏"},{"n":"猛兽派对","v":"猛兽派对"},{"n":"赛博朋克2077","v":"赛博朋克2077"},{"n":"星空","v":"星空"},{"n":"塞尔达传说","v":"塞尔达传说"},{"n":"苍翼:混沌效应","v":"苍翼:混沌效应"},{"n":"命运2","v":"命运2"},{"n":"收获日3","v":"收获日3"},{"n":"FC24","v":"FC24"},{"n":"机战佣兵VI境界天火","v":"机战佣兵VI境界天火"},{"n":"暗黑破坏神Ⅳ","v":"暗黑破坏神Ⅳ"},{"n":"匹诺曹的谎言","v":"匹诺曹的谎言"},{"n":"博德之门3","v":"博德之门3"},{"n":"绝世好武功","v":"绝世好武功"},{"n":"恐怖游戏","v":"恐怖游戏"},{"n":"DarkandDarker","v":"DarkandDarker"},{"n":"Warlander","v":"Warlander"},{"n":"FORZA极限竞速","v":"FORZA极限竞速"},{"n":"边境","v":"边境"},{"n":"生化危机","v":"生化危机"},{"n":"最终幻想","v":"最终幻想"},{"n":"暗黑破坏神","v":"暗黑破坏神"},{"n":"森林之子","v":"森林之子"},{"n":"卧龙:苍天陨落","v":"卧龙:苍天陨落"},{"n":"红色警戒2","v":"红色警戒2"},{"n":"策略游戏","v":"策略游戏"},{"n":"禁闭求生","v":"禁闭求生"},{"n":"战神","v":"战神"},{"n":"斯普拉遁3","v":"斯普拉遁3"},{"n":"使命召唤19","v":"使命召唤19"},{"n":"艾尔登法环","v":"艾尔登法环"},{"n":"聚会游戏","v":"聚会游戏"},{"n":"DreadHunger","v":"DreadHunger"},{"n":"战地风云","v":"战地风云"},{"n":"糖豆人","v":"糖豆人"},{"n":"消逝的光芒2","v":"消逝的光芒2"},{"n":"只狼","v":"只狼"},{"n":"怪物猎人","v":"怪物猎人"},{"n":"宝可梦集换式卡牌游戏","v":"宝可梦集换式卡牌游戏"},{"n":"饥荒","v":"饥荒"},{"n":"精灵宝可梦","v":"精灵宝可梦"},{"n":"FIFA23","v":"FIFA23"},{"n":"全面战争战锤3","v":"全面战争战锤3"},{"n":"NBA2K","v":"NBA2K"},{"n":"帝国时代4","v":"帝国时代4"},{"n":"植物大战僵尸","v":"植物大战僵尸"},{"n":"格斗游戏","v":"格斗游戏"},{"n":"荒野大镖客2","v":"荒野大镖客2"},{"n":"重生细胞","v":"重生细胞"},{"n":"刺客信条","v":"刺客信条"},{"n":"恐鬼症","v":"恐鬼症"},{"n":"以撒","v":"以撒"},{"n":"双人成行","v":"双人成行"},{"n":"方舟","v":"方舟"},{"n":"仁王2","v":"仁王2"},{"n":"鬼泣5","v":"鬼泣5"},{"n":"枪火重生","v":"枪火重生"},{"n":"盗贼之海","v":"盗贼之海"},{"n":"胡闹厨房","v":"胡闹厨房"},{"n":"体育游戏","v":"体育游戏"},{"n":"全境封锁2","v":"全境封锁2"},{"n":"骑马与砍杀","v":"骑马与砍杀"},{"n":"人类一败涂地","v":"人类一败涂地"},{"n":"无主之地3","v":"无主之地3"},{"n":"辐射76","v":"辐射76"},{"n":"全面战争","v":"全面战争"},{"n":"文字游戏","v":"文字游戏"},{"n":"恋爱模拟游戏","v":"恋爱模拟游戏"},{"n":"泰拉瑞亚","v":"泰拉瑞亚"},{"n":"游戏速通","v":"游戏速通"},{"n":"Roblox","v":"Roblox"},{"n":"雀魂麻将","v":"雀魂麻将"},{"n":"德州电锯","v":"德州电锯"},{"n":"其他单机","v":"其他单机"}]}],
"cc":[{"key":"area","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":"乱斗西游2","v":"乱斗西游2"},{"n":"《天下》手游","v":"《天下》手游"},{"n":"劲舞团","v":"劲舞团"},{"n":"光明大陆","v":"光明大陆"},{"n":"镇魔曲手游","v":"镇魔曲手游"},{"n":"三少爷的剑","v":"三少爷的剑"},{"n":"迷雾世界","v":"迷雾世界"},{"n":"终结战场","v":"终结战场"},{"n":"永远的7日之都","v":"永远的7日之都"},{"n":"狼人杀","v":"狼人杀"},{"n":"魂之轨迹","v":"魂之轨迹"},{"n":"三国如龙传","v":"三国如龙传"},{"n":"量子特攻","v":"量子特攻"},{"n":"非人学园","v":"非人学园"},{"n":"堡垒前线:破坏与创造","v":"堡垒前线:破坏与创造"},{"n":"战争怒吼","v":"战争怒吼"},{"n":"猎魂觉醒","v":"猎魂觉醒"},{"n":"终结战场PC版","v":"终结战场PC版"},{"n":"轩辕剑龙舞云山","v":"轩辕剑龙舞云山"},{"n":"实况:王者集结","v":"实况:王者集结"},{"n":"机动都市阿尔法","v":"机动都市阿尔法"},{"n":"权力与纷争","v":"权力与纷争"},{"n":"花与剑","v":"花与剑"},{"n":"流星群侠传","v":"流星群侠传"},{"n":"猫和老鼠","v":"猫和老鼠"},{"n":"游戏王:决斗链接","v":"游戏王:决斗链接"},{"n":"漫威超级战争","v":"漫威超级战争"},{"n":"遇见逆水寒","v":"遇见逆水寒"},{"n":"阴阳师:百闻牌","v":"阴阳师:百闻牌"},{"n":"青璃","v":"青璃"},{"n":"阴阳师:妖怪屋","v":"阴阳师:妖怪屋"},{"n":"宝可梦大探险","v":"宝可梦大探险"},{"n":"重装上阵","v":"重装上阵"},{"n":"猎手之王","v":"猎手之王"},{"n":"第九所","v":"第九所"},{"n":"风云岛行动","v":"风云岛行动"},{"n":"一起优诺","v":"一起优诺"},{"n":"隐世录","v":"隐世录"},{"n":"王牌竞速","v":"王牌竞速"},{"n":"洪荒文明","v":"洪荒文明"},{"n":"忘川风华录","v":"忘川风华录"},{"n":"密特拉之星","v":"密特拉之星"},{"n":"阴阳师: 妖怪小班","v":"阴阳师: 妖怪小班"},{"n":"无尽的拉格朗日","v":"无尽的拉格朗日"},{"n":"星战前夜:无烬星河","v":"星战前夜:无烬星河"},{"n":"漫威对决","v":"漫威对决"},{"n":"月神的迷宫","v":"月神的迷宫"},{"n":"有杀气童话2","v":"有杀气童话2"},{"n":"零号任务","v":"零号任务"},{"n":"绝对演绎","v":"绝对演绎"},{"n":"逆水寒手游","v":"逆水寒手游"},{"n":"巅峰极速","v":"巅峰极速"},{"n":"大航海之路","v":"大航海之路"},{"n":"大富翁9","v":"大富翁9"},{"n":"永恒文明","v":"永恒文明"},{"n":"新游中心","v":"新游中心"},{"n":"我的世界中国版","v":"我的世界中国版"},{"n":"梦幻西游电脑版","v":"梦幻西游电脑版"},{"n":"永劫无间","v":"永劫无间"},{"n":"大话西游2经典版","v":"大话西游2经典版"},{"n":"新倩女幽魂","v":"新倩女幽魂"},{"n":"大话西游2免费版","v":"大话西游2免费版"},{"n":"天下3","v":"天下3"},{"n":"一梦江湖","v":"一梦江湖"},{"n":"其他游戏","v":"其他游戏"},{"n":"逆水寒","v":"逆水寒"},{"n":"荒野行动PC模拟器","v":"荒野行动PC模拟器"},{"n":"大唐无双零","v":"大唐无双零"},{"n":"武魂2","v":"武魂2"},{"n":"天谕","v":"天谕"},{"n":"镇魔曲","v":"镇魔曲"},{"n":"无尽战区","v":"无尽战区"},{"n":"命运2","v":"命运2"},{"n":"魔兽世界","v":"魔兽世界"},{"n":"暗黑破坏神","v":"暗黑破坏神"},{"n":"泰亚史诗","v":"泰亚史诗"},{"n":"战意","v":"战意"},{"n":"易次元","v":"易次元"},{"n":"魔兽世界怀旧服","v":"魔兽世界怀旧服"},{"n":"无主之地3","v":"无主之地3"},{"n":"超激斗梦境","v":"超激斗梦境"},{"n":"EVE Online","v":"EVE Online"},{"n":"全面战争:竞技场","v":"全面战争:竞技场"},{"n":"暴雪游戏","v":"暴雪游戏"},{"n":"FPS综合游戏","v":"FPS综合游戏"},{"n":"魔兽争霸","v":"魔兽争霸"},{"n":"绿茵信仰","v":"绿茵信仰"},{"n":"大话女儿国","v":"大话女儿国"},{"n":"燕云十六声","v":"燕云十六声"},{"n":"射雕","v":"射雕"}]}],
"douyin":[{"key":"area","name":"分区","value":[{"n":"全部","v":"全部"},{"n":"魔兽世界","v":"魔兽世界"},{"n":"永劫无间","v":"永劫无间"},{"n":"横版格斗","v":"横版格斗"},{"n":"拳皇系列","v":"拳皇系列"},{"n":"我的世界","v":"我的世界"},{"n":"魔兽争霸3","v":"魔兽争霸3"},{"n":"迷你世界","v":"迷你世界"},{"n":"糖豆人","v":"糖豆人"},{"n":"其他主机游戏","v":"其他主机游戏"},{"n":"星际争霸","v":"星际争霸"},{"n":"精灵宝可梦 剑/盾","v":"精灵宝可梦 剑/盾"},{"n":"斗地主","v":"斗地主"},{"n":"麻将","v":"麻将"},{"n":"象棋","v":"象棋"},{"n":"其他棋牌游戏","v":"其他棋牌游戏"},{"n":"军棋","v":"军棋"},{"n":"网易狼人杀","v":"网易狼人杀"},{"n":"三国杀手游","v":"三国杀手游"},{"n":"围棋","v":"围棋"},{"n":"皇室战争","v":"皇室战争"},{"n":"原神","v":"原神"},{"n":"问道端游","v":"问道端游"},{"n":"明日之后","v":"明日之后"},{"n":"问道手游","v":"问道手游"},{"n":"幻塔","v":"幻塔"},{"n":"崩坏3","v":"崩坏3"},{"n":"天使之战","v":"天使之战"},{"n":"蛋仔派对","v":"蛋仔派对"},{"n":"植物大战僵尸","v":"植物大战僵尸"},{"n":"识字大师","v":"识字大师"},{"n":"美食DIY","v":"美食DIY"},{"n":"球球大作战","v":"球球大作战"},{"n":"荒野乱斗","v":"荒野乱斗"},{"n":"元气骑士","v":"元气骑士"},{"n":"最强的大脑","v":"最强的大脑"},{"n":"5v5推塔手游","v":"5v5推塔手游"},{"n":"DOTA2","v":"DOTA2"},{"n":"格斗手游","v":"格斗手游"},{"n":"赛车游戏","v":"赛车游戏"},{"n":"跑跑卡丁车手游","v":"跑跑卡丁车手游"},{"n":"DOTA","v":"DOTA"},{"n":"第五人格","v":"第五人格"},{"n":"梦三国","v":"梦三国"},{"n":"坦克世界","v":"坦克世界"},{"n":"怀旧FC","v":"怀旧FC"},{"n":"帝国时代","v":"帝国时代"},{"n":"战舰世界","v":"战舰世界"},{"n":"怀旧掌机","v":"怀旧掌机"},{"n":"西游释厄传","v":"西游释厄传"},{"n":"合金弹头","v":"合金弹头"},{"n":"恐龙快打","v":"恐龙快打"},{"n":"无畏契约","v":"无畏契约"},{"n":"射击游戏","v":"射击游戏"},{"n":"CS:GO","v":"CS:GO"},{"n":"吃鸡手游","v":"吃鸡手游"},{"n":"香肠派对","v":"香肠派对"},{"n":"暗区突围","v":"暗区突围"},{"n":"Apex英雄","v":"Apex英雄"},{"n":"高能英雄","v":"高能英雄"},{"n":"阴阳师","v":"阴阳师"},{"n":"明日方舟","v":"明日方舟"},{"n":"崩坏:星穹铁道","v":"崩坏:星穹铁道"},{"n":"炉石传说","v":"炉石传说"},{"n":"少年三国志2","v":"少年三国志2"},{"n":"山海经异兽录","v":"山海经异兽录"},{"n":"铁杆三国","v":"铁杆三国"},{"n":"新不良人","v":"新不良人"},{"n":"JJ象棋","v":"JJ象棋"},{"n":"经典天龙八部","v":"经典天龙八部"},{"n":"光遇","v":"光遇"},{"n":"开心消消乐","v":"开心消消乐"},{"n":"魂斗罗","v":"魂斗罗"},{"n":"红狼(口袋狼人杀)","v":"红狼(口袋狼人杀)"},{"n":"怀旧天龙八部","v":"怀旧天龙八部"},{"n":"汤姆猫跑酷","v":"汤姆猫跑酷"},{"n":"决战平安京","v":"决战平安京"},{"n":"CS 1.6","v":"CS 1.6"},{"n":"找不同","v":"找不同"},{"n":"一战称王","v":"一战称王"},{"n":"超级台球大师","v":"超级台球大师"},{"n":"运动","v":"运动"},{"n":"音乐","v":"音乐"},{"n":"语音互动","v":"语音互动"},{"n":"情感","v":"情感"},{"n":"舞蹈","v":"舞蹈"},{"n":"户外","v":"户外"},{"n":"时尚","v":"时尚"},{"n":"美食","v":"美食"},{"n":"旅行","v":"旅行"},{"n":"教育","v":"教育"},{"n":"人文艺术","v":"人文艺术"}]}]
},
filter_def:{
douyu:{area:'原创IP'},
huya:{area:'一起看'},
bilibili:{area:'电子榨菜'},
cc:{area:'星秀'},
douyin:{area:'全部'}
},
// detailUrl: '/index/liveRoom?platform=fyclass&roomId=fyid',
// detailUrl: '/api/live/getRoomInfo?uid=&platform=fyclass&roomId=fyid',
detailUrl: 'fyid',
searchUrl: '/api/live/search?platform=all&keyWords=**&isLive=0',
// searchable: 2,
searchable: 0,
quickSearch: 0,
headers: {
'User-Agent': 'MOBILE_UA'
},
timeout: 5000,
play_parse: true,
lazy:`js:
let purl = input.split("|")[0];
let pfrom = input.split("|")[1];
let cid = input.split("|")[2];
print("purl:" + purl);
print("pfrom:" + pfrom);
print("cid:" + cid);
let dan = 'https://api.bilibili.com/x/v1/dm/list.so?oid=' + cid;
if (/bilibili/.test(pfrom)){
let result = {};
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(purl)) {
result['contentType'] = '';
input = result
} else {
result['contentType'] = 'video/x-flv';
input = result
}
} else {
input = purl
}
`,
limit: 6,
推荐: `js:
var d = [];
var html = JSON.parse(request(input)).data;
html.forEach(it => {
d.push({
title: it.roomName,
desc: it.ownerName,
pic_url: it.roomPic,
url: it.platForm + '|' + it.roomId
});
})
setResult(d);
`,
一级: `js:
var d = [];
if (MY_CATE === 'douyin') {
let area = MY_FL.area || '全部';
if (area === '全部') {
input = HOST + '/api/live/getRecommendByPlatform?platform=douyin&page='+MY_PAGE+'&size=20';
}
}
var html = JSON.parse(request(input)).data;
html.forEach(it => {
d.push({
title: it.roomName,
desc: it.ownerName,
pic_url: it.roomPic,
url: it.platForm + '|' + it.roomId
});
})
setResult(d);
`,
二级: `js:
var d = [];
if (typeof play_url === "undefined") {
var play_url = ""
}
let platform = input.split("|")[0].replace(HOST+'/','');
let roomId = input.split("|")[1];
let link = HOST + '/api/live/getRoomInfo?uid=&platform=' + platform + '&roomId=' + roomId;
var jo = JSON.parse(request(link)).data;
VOD = {
vod_id: jo.roomId,
vod_name: jo.roomName,
vod_pic: jo.roomPic,
type_name: jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "." + jo.categoryName,
vod_content: "🏷分区:" + jo.platForm.replace("huya", "虎牙").replace("douyu", "斗鱼").replace("cc", "网易CC").replace("bilibili", "哔哩哔哩").replace("douyin", "抖音") + "·" + jo.categoryName + " 🏷UP主" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播")
};
var playurl = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrl?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data;
var name = {
"OD": "原画",
"FD": "流畅",
"LD": "标清",
"SD": "高清",
"HD": "超清",
"2K": "2K",
"4K": "4K",
"FHD": "全高清",
"XLD": "极速",
"SQ": "普通音质",
"HQ": "高音质"
};
Object.keys(playurl).forEach(function(key) {
if (!/ayyuid|to/.test(key)) {
d.push({
title: name[key],
url: playurl[key]
})
}
});
VOD.vod_play_from = "选择画质";
VOD.vod_play_url = d.map(function(it) {
// return it.title + "$" + it.url
return it.title + "$" + play_url + urlencode(it.url + "|" + jo.platForm + "|" + jo.roomId)
}).join("#");
setResult(d)
`,
搜索: `js:
var d = [];
var html = JSON.parse(request(input)).data;
html.forEach(it => {
d.push({
title: it.roomName,
desc: it.ownerName,
pic_url: it.roomPic,
url: it.platForm + '|' + it.roomId
});
})
setResult(d);
`,
}

View File

@ -0,0 +1,37 @@
// http://www.ntdm.tv
var rule={
title:'NT动漫',
host:'http://www.ntdm8.com',
homeUrl:'/type/riben.html',
// url:'/show/fyclass--------fypage---.html',
url:'/show/fyclassfyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'--{{fl.by}}-{{fl.class}}--{{fl.letter}}---fypage---{{fl.year}}',
filter:{
"riben":[{"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":"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以前"}]},{"key":"class","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":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
"zhongguo":[{"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":"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以前"}]},{"key":"class","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":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
"omei":[{"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":"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以前"}]},{"key":"class","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":"欢乐向"}]},{"key":"letter","name":"字母:","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"},{"n":"0~9","v":"0~9"}]},{"key":"by","name":"排序:","value":[{"n":"更新时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}]
},
searchUrl:'/search/**----------fypage---.html',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent':'MOBILE_UA',
},
class_parse: '.search-tag li;a&&Text;a&&href;.*/(\\w+).html',
play_parse:true,
detailUrl:'',
lazy:"",
limit:6,
推荐:'*',
一级:'.blockcontent1&&.blockdif2;img&&alt;img&&src;.newname&&Text;a&&href',
二级访问前:'',
二级:{
"title":"h4&&Text;.detail_imform_value:eq(6)&&Text",
"img":".poster&&src",
"desc":".detail_imform_kv:eq(0)&&Text;.detail_imform_value:eq(5)&&Text;.detail_imform_value:eq(2)&&Text;.detail_imform_kv:eq(0)&&Text;.detail_imform_kv:eq(3)&&Text",
"content":".detail_imform_desc_pre&&Text",
"tabs":"#menu0&&li",
"lists":".movurl:eq(#id)&&li"},
搜索:'*',
}

View File

@ -0,0 +1,394 @@
{
"作者":"神仙影视",
"站名":"策驰影视",
"主页url":"https://www.cecidy.cc/",
"简介":"【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+('剧情简介','&&','500','350'",
"导演":"导演:&&</p>",
"主演":"主演:&&</p>",
"影片状态":"text-right\">&&</span>",
"影片类型":"分类:&&</a>",
"影片地区":"地区:&&</a>",
"影片年代":"年份:&&</a>",
"数组":"myui-vodlist__thumb&&</a>",
"标题":"title=\"&&\"",
"副标题":"text-right\"&&</span>",
"图片":"data-original=\"&&\"",
"链接":"href=\"&&\"",
"搜索url":"/vodsearch/-------------/?wd={wd}",
"搜索数组":"myui-vodlist__thumb&&</a>",
"搜索标题":"title=\"&&\"",
"搜索副标题":"text-right\">&&</span>",
"搜索图片":"data-original=\"&&\"",
"搜索链接":"href=\"&&\"",
"线路数组":"#playlist&&</li>[不包含:无尽资源#八戒资源#淘片资源]",
"线路标题":"神仙影视接口:+>&&</a>+",
"播放数组":"<ul class=\"myui-content__list&&</ul>",
"播放标题":">&&</a>",
"播放列表":"<li&&</li>",
"分类url":"https://www.cecidy.cc/vodshow/{cateId}-{area}-{by}-{class}-{lang}----{catePg}---{year}/;;ak",
"分类":"电影$1#电视剧$2#综艺$3#动漫$4",
"筛选":{
"1":[
{"key":"cateld","name":"类型","value":[
{"n":"全部类型","v":""},
{"n":"动作片","v":"6"},
{"n":"喜剧片","v":"7"},
{"n":"爱情片","v":"8"},
{"n":"科幻片","v":"9"},
{"n":"恐怖片","v":"10"},
{"n":"剧情片","v":"11"},
{"n":"战争片","v":"12"},
{"n":"奇幻片","v":"21"},
{"n":"悬疑片","v":"22"},
{"n":"犯罪片","v":"23"},
{"n":"惊悚片","v":"24"},
{"n":"记录片","v":"25"},
{"n":"动画片","v":"54"}
]
},
{"key":"class","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":"网络电影"}
]
},
{"key":"area","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":"其他"}
]
},
{"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":"2010","v":"2010"},
{"n":"2009","v":"2009"},
{"n":"2008","v":"2008"},
{"n":"2007","v":"2007"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"全部语言","v":""},
{"n":"国语","v":"国语"},
{"n":"英语","v":"英语"},
{"n":"粤语","v":"粤语"},
{"n":"闽南语","v":"闽南语"},
{"n":"韩语","v":"韩语"},
{"n":"日语","v":"日语"},
{"n":"法语","v":"法语"},
{"n":"德语","v":"德语"},
{"n":"其它","v":"其它"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
],
"2":[
{"key":"cateId","name":"类型","value":[
{"n":"全部类型","v":""},
{"n":"国产剧","v":"13"},
{"n":"港台剧","v":"14"},
{"n":"日韩剧","v":"15"},
{"n":"欧美剧","v":"16"},
{"n":"海外剧","v":"20"}
]
},
{"key":"class","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":"area","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":"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":"2010","v":"2010"},
{"n":"2009","v":"2009"},
{"n":"2008","v":"2008"},
{"n":"2007","v":"2007"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"全部语言","v":""},
{"n":"国语","v":"国语"},
{"n":"英语","v":"英语"},
{"n":"粤语","v":"粤语"},
{"n":"闽南语","v":"闽南语"},
{"n":"韩语","v":"韩语"},
{"n":"日语","v":"日语"},
{"n":"其它","v":"其它"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
],
"3":[
{"key":"class","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":"area","name":"地区","value":[
{"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","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"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"全部语言","v":""},
{"n":"国语","v":"国语"},
{"n":"英语","v":"英语"},
{"n":"粤语","v":"粤语"},
{"n":"闽南语","v":"闽南语"},
{"n":"韩语","v":"韩语"},
{"n":"日语","v":"日语"},
{"n":"其它","v":"其它"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
],
"4":[
{"key":"class","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":"area","name":"地区","value":[
{"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","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"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"全部语言","v":""},
{"n":"国语","v":"国语"},
{"n":"英语","v":"英语"},
{"n":"粤语","v":"粤语"},
{"n":"闽南语","v":"闽南语"},
{"n":"韩语","v":"韩语"},
{"n":"日语","v":"日语"},
{"n":"其它","v":"其它"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
]
}
}

1
tvbox/shenxian/lib/cheerio.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,6191 @@
;(function (root, factory) {
if (typeof exports === "object") {
// CommonJS
module.exports = exports = factory();
}
else if (typeof define === "function" && define.amd) {
// AMD
define([], factory);
}
else {
// Global (browser)
globalThis.CryptoJS = factory();
}
}(this, function () {
/*globals window, global, require*/
/**
* CryptoJS core components.
*/
var CryptoJS = CryptoJS || (function (Math, undefined) {
var crypto;
// Native crypto from window (Browser)
if (typeof window !== 'undefined' && window.crypto) {
crypto = window.crypto;
}
// Native crypto in web worker (Browser)
if (typeof self !== 'undefined' && self.crypto) {
crypto = self.crypto;
}
// Native crypto from worker
if (typeof globalThis !== 'undefined' && globalThis.crypto) {
crypto = globalThis.crypto;
}
// Native (experimental IE 11) crypto from window (Browser)
if (!crypto && typeof window !== 'undefined' && window.msCrypto) {
crypto = window.msCrypto;
}
// Native crypto from global (NodeJS)
if (!crypto && typeof global !== 'undefined' && global.crypto) {
crypto = global.crypto;
}
// Native crypto import via require (NodeJS)
if (!crypto && typeof require === 'function') {
try {
crypto = require('crypto');
} catch (err) {}
}
/*
* Cryptographically secure pseudorandom number generator
*
* As Math.random() is cryptographically not safe to use
*/
var cryptoSecureRandomInt = function () {
if (crypto) {
// Use getRandomValues method (Browser)
if (typeof crypto.getRandomValues === 'function') {
try {
return crypto.getRandomValues(new Uint32Array(1))[0];
} catch (err) {}
}
// Use randomBytes method (NodeJS)
if (typeof crypto.randomBytes === 'function') {
try {
return crypto.randomBytes(4).readInt32LE();
} catch (err) {}
}
}
throw new Error('Native crypto module could not be used to get secure random number.');
};
/*
* Local polyfill of Object.create
*/
var create = Object.create || (function () {
function F() {}
return function (obj) {
var subtype;
F.prototype = obj;
subtype = new F();
F.prototype = null;
return subtype;
};
}());
/**
* CryptoJS namespace.
*/
var C = {};
/**
* Library namespace.
*/
var C_lib = C.lib = {};
/**
* Base object for prototypal inheritance.
*/
var Base = C_lib.Base = (function () {
return {
/**
* Creates a new object that inherits from this object.
*
* @param {Object} overrides Properties to copy into the new object.
*
* @return {Object} The new object.
*
* @static
*
* @example
*
* var MyType = CryptoJS.lib.Base.extend({
* field: 'value',
*
* method: function () {
* }
* });
*/
extend: function (overrides) {
// Spawn
var subtype = create(this);
// Augment
if (overrides) {
subtype.mixIn(overrides);
}
// Create default initializer
if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {
subtype.init = function () {
subtype.$super.init.apply(this, arguments);
};
}
// Initializer's prototype is the subtype object
subtype.init.prototype = subtype;
// Reference supertype
subtype.$super = this;
return subtype;
},
/**
* Extends this object and runs the init method.
* Arguments to create() will be passed to init().
*
* @return {Object} The new object.
*
* @static
*
* @example
*
* var instance = MyType.create();
*/
create: function () {
var instance = this.extend();
instance.init.apply(instance, arguments);
return instance;
},
/**
* Initializes a newly created object.
* Override this method to add some logic when your objects are created.
*
* @example
*
* var MyType = CryptoJS.lib.Base.extend({
* init: function () {
* // ...
* }
* });
*/
init: function () {
},
/**
* Copies properties into this object.
*
* @param {Object} properties The properties to mix in.
*
* @example
*
* MyType.mixIn({
* field: 'value'
* });
*/
mixIn: function (properties) {
for (var propertyName in properties) {
if (properties.hasOwnProperty(propertyName)) {
this[propertyName] = properties[propertyName];
}
}
// IE won't copy toString using the loop above
if (properties.hasOwnProperty('toString')) {
this.toString = properties.toString;
}
},
/**
* Creates a copy of this object.
*
* @return {Object} The clone.
*
* @example
*
* var clone = instance.clone();
*/
clone: function () {
return this.init.prototype.extend(this);
}
};
}());
/**
* An array of 32-bit words.
*
* @property {Array} words The array of 32-bit words.
* @property {number} sigBytes The number of significant bytes in this word array.
*/
var WordArray = C_lib.WordArray = Base.extend({
/**
* Initializes a newly created word array.
*
* @param {Array} words (Optional) An array of 32-bit words.
* @param {number} sigBytes (Optional) The number of significant bytes in the words.
*
* @example
*
* var wordArray = CryptoJS.lib.WordArray.create();
* var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);
* var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);
*/
init: function (words, sigBytes) {
words = this.words = words || [];
if (sigBytes != undefined) {
this.sigBytes = sigBytes;
} else {
this.sigBytes = words.length * 4;
}
},
/**
* Converts this word array to a string.
*
* @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex
*
* @return {string} The stringified word array.
*
* @example
*
* var string = wordArray + '';
* var string = wordArray.toString();
* var string = wordArray.toString(CryptoJS.enc.Utf8);
*/
toString: function (encoder) {
return (encoder || Hex).stringify(this);
},
/**
* Concatenates a word array to this word array.
*
* @param {WordArray} wordArray The word array to append.
*
* @return {WordArray} This word array.
*
* @example
*
* wordArray1.concat(wordArray2);
*/
concat: function (wordArray) {
// Shortcuts
var thisWords = this.words;
var thatWords = wordArray.words;
var thisSigBytes = this.sigBytes;
var thatSigBytes = wordArray.sigBytes;
// Clamp excess bits
this.clamp();
// Concat
if (thisSigBytes % 4) {
// Copy one byte at a time
for (var i = 0; i < thatSigBytes; i++) {
var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);
}
} else {
// Copy one word at a time
for (var j = 0; j < thatSigBytes; j += 4) {
thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2];
}
}
this.sigBytes += thatSigBytes;
// Chainable
return this;
},
/**
* Removes insignificant bits.
*
* @example
*
* wordArray.clamp();
*/
clamp: function () {
// Shortcuts
var words = this.words;
var sigBytes = this.sigBytes;
// Clamp
words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);
words.length = Math.ceil(sigBytes / 4);
},
/**
* Creates a copy of this word array.
*
* @return {WordArray} The clone.
*
* @example
*
* var clone = wordArray.clone();
*/
clone: function () {
var clone = Base.clone.call(this);
clone.words = this.words.slice(0);
return clone;
},
/**
* Creates a word array filled with random bytes.
*
* @param {number} nBytes The number of random bytes to generate.
*
* @return {WordArray} The random word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.lib.WordArray.random(16);
*/
random: function (nBytes) {
var words = [];
for (var i = 0; i < nBytes; i += 4) {
words.push(cryptoSecureRandomInt());
}
return new WordArray.init(words, nBytes);
}
});
/**
* Encoder namespace.
*/
var C_enc = C.enc = {};
/**
* Hex encoding strategy.
*/
var Hex = C_enc.Hex = {
/**
* Converts a word array to a hex string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The hex string.
*
* @static
*
* @example
*
* var hexString = CryptoJS.enc.Hex.stringify(wordArray);
*/
stringify: function (wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
// Convert
var hexChars = [];
for (var i = 0; i < sigBytes; i++) {
var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
hexChars.push((bite >>> 4).toString(16));
hexChars.push((bite & 0x0f).toString(16));
}
return hexChars.join('');
},
/**
* Converts a hex string to a word array.
*
* @param {string} hexStr The hex string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Hex.parse(hexString);
*/
parse: function (hexStr) {
// Shortcut
var hexStrLength = hexStr.length;
// Convert
var words = [];
for (var i = 0; i < hexStrLength; i += 2) {
words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);
}
return new WordArray.init(words, hexStrLength / 2);
}
};
/**
* Latin1 encoding strategy.
*/
var Latin1 = C_enc.Latin1 = {
/**
* Converts a word array to a Latin1 string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The Latin1 string.
*
* @static
*
* @example
*
* var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);
*/
stringify: function (wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
// Convert
var latin1Chars = [];
for (var i = 0; i < sigBytes; i++) {
var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
latin1Chars.push(String.fromCharCode(bite));
}
return latin1Chars.join('');
},
/**
* Converts a Latin1 string to a word array.
*
* @param {string} latin1Str The Latin1 string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Latin1.parse(latin1String);
*/
parse: function (latin1Str) {
// Shortcut
var latin1StrLength = latin1Str.length;
// Convert
var words = [];
for (var i = 0; i < latin1StrLength; i++) {
words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);
}
return new WordArray.init(words, latin1StrLength);
}
};
/**
* UTF-8 encoding strategy.
*/
var Utf8 = C_enc.Utf8 = {
/**
* Converts a word array to a UTF-8 string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The UTF-8 string.
*
* @static
*
* @example
*
* var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);
*/
stringify: function (wordArray) {
try {
return decodeURIComponent(escape(Latin1.stringify(wordArray)));
} catch (e) {
throw new Error('Malformed UTF-8 data');
}
},
/**
* Converts a UTF-8 string to a word array.
*
* @param {string} utf8Str The UTF-8 string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Utf8.parse(utf8String);
*/
parse: function (utf8Str) {
return Latin1.parse(unescape(encodeURIComponent(utf8Str)));
}
};
/**
* Abstract buffered block algorithm template.
*
* The property blockSize must be implemented in a concrete subtype.
*
* @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0
*/
var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({
/**
* Resets this block algorithm's data buffer to its initial state.
*
* @example
*
* bufferedBlockAlgorithm.reset();
*/
reset: function () {
// Initial values
this._data = new WordArray.init();
this._nDataBytes = 0;
},
/**
* Adds new data to this block algorithm's buffer.
*
* @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.
*
* @example
*
* bufferedBlockAlgorithm._append('data');
* bufferedBlockAlgorithm._append(wordArray);
*/
_append: function (data) {
// Convert string to WordArray, else assume WordArray already
if (typeof data == 'string') {
data = Utf8.parse(data);
}
// Append
this._data.concat(data);
this._nDataBytes += data.sigBytes;
},
/**
* Processes available data blocks.
*
* This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.
*
* @param {boolean} doFlush Whether all blocks and partial blocks should be processed.
*
* @return {WordArray} The processed data.
*
* @example
*
* var processedData = bufferedBlockAlgorithm._process();
* var processedData = bufferedBlockAlgorithm._process(!!'flush');
*/
_process: function (doFlush) {
var processedWords;
// Shortcuts
var data = this._data;
var dataWords = data.words;
var dataSigBytes = data.sigBytes;
var blockSize = this.blockSize;
var blockSizeBytes = blockSize * 4;
// Count blocks ready
var nBlocksReady = dataSigBytes / blockSizeBytes;
if (doFlush) {
// Round up to include partial blocks
nBlocksReady = Math.ceil(nBlocksReady);
} else {
// Round down to include only full blocks,
// less the number of blocks that must remain in the buffer
nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);
}
// Count words ready
var nWordsReady = nBlocksReady * blockSize;
// Count bytes ready
var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);
// Process blocks
if (nWordsReady) {
for (var offset = 0; offset < nWordsReady; offset += blockSize) {
// Perform concrete-algorithm logic
this._doProcessBlock(dataWords, offset);
}
// Remove processed words
processedWords = dataWords.splice(0, nWordsReady);
data.sigBytes -= nBytesReady;
}
// Return processed words
return new WordArray.init(processedWords, nBytesReady);
},
/**
* Creates a copy of this object.
*
* @return {Object} The clone.
*
* @example
*
* var clone = bufferedBlockAlgorithm.clone();
*/
clone: function () {
var clone = Base.clone.call(this);
clone._data = this._data.clone();
return clone;
},
_minBufferSize: 0
});
/**
* Abstract hasher template.
*
* @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits)
*/
var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({
/**
* Configuration options.
*/
cfg: Base.extend(),
/**
* Initializes a newly created hasher.
*
* @param {Object} cfg (Optional) The configuration options to use for this hash computation.
*
* @example
*
* var hasher = CryptoJS.algo.SHA256.create();
*/
init: function (cfg) {
// Apply config defaults
this.cfg = this.cfg.extend(cfg);
// Set initial values
this.reset();
},
/**
* Resets this hasher to its initial state.
*
* @example
*
* hasher.reset();
*/
reset: function () {
// Reset data buffer
BufferedBlockAlgorithm.reset.call(this);
// Perform concrete-hasher logic
this._doReset();
},
/**
* Updates this hasher with a message.
*
* @param {WordArray|string} messageUpdate The message to append.
*
* @return {Hasher} This hasher.
*
* @example
*
* hasher.update('message');
* hasher.update(wordArray);
*/
update: function (messageUpdate) {
// Append
this._append(messageUpdate);
// Update the hash
this._process();
// Chainable
return this;
},
/**
* Finalizes the hash computation.
* Note that the finalize operation is effectively a destructive, read-once operation.
*
* @param {WordArray|string} messageUpdate (Optional) A final message update.
*
* @return {WordArray} The hash.
*
* @example
*
* var hash = hasher.finalize();
* var hash = hasher.finalize('message');
* var hash = hasher.finalize(wordArray);
*/
finalize: function (messageUpdate) {
// Final message update
if (messageUpdate) {
this._append(messageUpdate);
}
// Perform concrete-hasher logic
var hash = this._doFinalize();
return hash;
},
blockSize: 512/32,
/**
* Creates a shortcut function to a hasher's object interface.
*
* @param {Hasher} hasher The hasher to create a helper for.
*
* @return {Function} The shortcut function.
*
* @static
*
* @example
*
* var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);
*/
_createHelper: function (hasher) {
return function (message, cfg) {
return new hasher.init(cfg).finalize(message);
};
},
/**
* Creates a shortcut function to the HMAC's object interface.
*
* @param {Hasher} hasher The hasher to use in this HMAC helper.
*
* @return {Function} The shortcut function.
*
* @static
*
* @example
*
* var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);
*/
_createHmacHelper: function (hasher) {
return function (message, key) {
return new C_algo.HMAC.init(hasher, key).finalize(message);
};
}
});
/**
* Algorithm namespace.
*/
var C_algo = C.algo = {};
return C;
}(Math));
(function (undefined) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Base = C_lib.Base;
var X32WordArray = C_lib.WordArray;
/**
* x64 namespace.
*/
var C_x64 = C.x64 = {};
/**
* A 64-bit word.
*/
var X64Word = C_x64.Word = Base.extend({
/**
* Initializes a newly created 64-bit word.
*
* @param {number} high The high 32 bits.
* @param {number} low The low 32 bits.
*
* @example
*
* var x64Word = CryptoJS.x64.Word.create(0x00010203, 0x04050607);
*/
init: function (high, low) {
this.high = high;
this.low = low;
}
/**
* Bitwise NOTs this word.
*
* @return {X64Word} A new x64-Word object after negating.
*
* @example
*
* var negated = x64Word.not();
*/
// not: function () {
// var high = ~this.high;
// var low = ~this.low;
// return X64Word.create(high, low);
// },
/**
* Bitwise ANDs this word with the passed word.
*
* @param {X64Word} word The x64-Word to AND with this word.
*
* @return {X64Word} A new x64-Word object after ANDing.
*
* @example
*
* var anded = x64Word.and(anotherX64Word);
*/
// and: function (word) {
// var high = this.high & word.high;
// var low = this.low & word.low;
// return X64Word.create(high, low);
// },
/**
* Bitwise ORs this word with the passed word.
*
* @param {X64Word} word The x64-Word to OR with this word.
*
* @return {X64Word} A new x64-Word object after ORing.
*
* @example
*
* var ored = x64Word.or(anotherX64Word);
*/
// or: function (word) {
// var high = this.high | word.high;
// var low = this.low | word.low;
// return X64Word.create(high, low);
// },
/**
* Bitwise XORs this word with the passed word.
*
* @param {X64Word} word The x64-Word to XOR with this word.
*
* @return {X64Word} A new x64-Word object after XORing.
*
* @example
*
* var xored = x64Word.xor(anotherX64Word);
*/
// xor: function (word) {
// var high = this.high ^ word.high;
// var low = this.low ^ word.low;
// return X64Word.create(high, low);
// },
/**
* Shifts this word n bits to the left.
*
* @param {number} n The number of bits to shift.
*
* @return {X64Word} A new x64-Word object after shifting.
*
* @example
*
* var shifted = x64Word.shiftL(25);
*/
// shiftL: function (n) {
// if (n < 32) {
// var high = (this.high << n) | (this.low >>> (32 - n));
// var low = this.low << n;
// } else {
// var high = this.low << (n - 32);
// var low = 0;
// }
// return X64Word.create(high, low);
// },
/**
* Shifts this word n bits to the right.
*
* @param {number} n The number of bits to shift.
*
* @return {X64Word} A new x64-Word object after shifting.
*
* @example
*
* var shifted = x64Word.shiftR(7);
*/
// shiftR: function (n) {
// if (n < 32) {
// var low = (this.low >>> n) | (this.high << (32 - n));
// var high = this.high >>> n;
// } else {
// var low = this.high >>> (n - 32);
// var high = 0;
// }
// return X64Word.create(high, low);
// },
/**
* Rotates this word n bits to the left.
*
* @param {number} n The number of bits to rotate.
*
* @return {X64Word} A new x64-Word object after rotating.
*
* @example
*
* var rotated = x64Word.rotL(25);
*/
// rotL: function (n) {
// return this.shiftL(n).or(this.shiftR(64 - n));
// },
/**
* Rotates this word n bits to the right.
*
* @param {number} n The number of bits to rotate.
*
* @return {X64Word} A new x64-Word object after rotating.
*
* @example
*
* var rotated = x64Word.rotR(7);
*/
// rotR: function (n) {
// return this.shiftR(n).or(this.shiftL(64 - n));
// },
/**
* Adds this word with the passed word.
*
* @param {X64Word} word The x64-Word to add with this word.
*
* @return {X64Word} A new x64-Word object after adding.
*
* @example
*
* var added = x64Word.add(anotherX64Word);
*/
// add: function (word) {
// var low = (this.low + word.low) | 0;
// var carry = (low >>> 0) < (this.low >>> 0) ? 1 : 0;
// var high = (this.high + word.high + carry) | 0;
// return X64Word.create(high, low);
// }
});
/**
* An array of 64-bit words.
*
* @property {Array} words The array of CryptoJS.x64.Word objects.
* @property {number} sigBytes The number of significant bytes in this word array.
*/
var X64WordArray = C_x64.WordArray = Base.extend({
/**
* Initializes a newly created word array.
*
* @param {Array} words (Optional) An array of CryptoJS.x64.Word objects.
* @param {number} sigBytes (Optional) The number of significant bytes in the words.
*
* @example
*
* var wordArray = CryptoJS.x64.WordArray.create();
*
* var wordArray = CryptoJS.x64.WordArray.create([
* CryptoJS.x64.Word.create(0x00010203, 0x04050607),
* CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)
* ]);
*
* var wordArray = CryptoJS.x64.WordArray.create([
* CryptoJS.x64.Word.create(0x00010203, 0x04050607),
* CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)
* ], 10);
*/
init: function (words, sigBytes) {
words = this.words = words || [];
if (sigBytes != undefined) {
this.sigBytes = sigBytes;
} else {
this.sigBytes = words.length * 8;
}
},
/**
* Converts this 64-bit word array to a 32-bit word array.
*
* @return {CryptoJS.lib.WordArray} This word array's data as a 32-bit word array.
*
* @example
*
* var x32WordArray = x64WordArray.toX32();
*/
toX32: function () {
// Shortcuts
var x64Words = this.words;
var x64WordsLength = x64Words.length;
// Convert
var x32Words = [];
for (var i = 0; i < x64WordsLength; i++) {
var x64Word = x64Words[i];
x32Words.push(x64Word.high);
x32Words.push(x64Word.low);
}
return X32WordArray.create(x32Words, this.sigBytes);
},
/**
* Creates a copy of this word array.
*
* @return {X64WordArray} The clone.
*
* @example
*
* var clone = x64WordArray.clone();
*/
clone: function () {
var clone = Base.clone.call(this);
// Clone "words" array
var words = clone.words = this.words.slice(0);
// Clone each X64Word object
var wordsLength = words.length;
for (var i = 0; i < wordsLength; i++) {
words[i] = words[i].clone();
}
return clone;
}
});
}());
(function () {
// Check if typed arrays are supported
if (typeof ArrayBuffer != 'function') {
return;
}
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
// Reference original init
var superInit = WordArray.init;
// Augment WordArray.init to handle typed arrays
var subInit = WordArray.init = function (typedArray) {
// Convert buffers to uint8
if (typedArray instanceof ArrayBuffer) {
typedArray = new Uint8Array(typedArray);
}
// Convert other array views to uint8
if (
typedArray instanceof Int8Array ||
(typeof Uint8ClampedArray !== "undefined" && typedArray instanceof Uint8ClampedArray) ||
typedArray instanceof Int16Array ||
typedArray instanceof Uint16Array ||
typedArray instanceof Int32Array ||
typedArray instanceof Uint32Array ||
typedArray instanceof Float32Array ||
typedArray instanceof Float64Array
) {
typedArray = new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength);
}
// Handle Uint8Array
if (typedArray instanceof Uint8Array) {
// Shortcut
var typedArrayByteLength = typedArray.byteLength;
// Extract bytes
var words = [];
for (var i = 0; i < typedArrayByteLength; i++) {
words[i >>> 2] |= typedArray[i] << (24 - (i % 4) * 8);
}
// Initialize this word array
superInit.call(this, words, typedArrayByteLength);
} else {
// Else call normal init
superInit.apply(this, arguments);
}
};
subInit.prototype = WordArray;
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var C_enc = C.enc;
/**
* UTF-16 BE encoding strategy.
*/
var Utf16BE = C_enc.Utf16 = C_enc.Utf16BE = {
/**
* Converts a word array to a UTF-16 BE string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The UTF-16 BE string.
*
* @static
*
* @example
*
* var utf16String = CryptoJS.enc.Utf16.stringify(wordArray);
*/
stringify: function (wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
// Convert
var utf16Chars = [];
for (var i = 0; i < sigBytes; i += 2) {
var codePoint = (words[i >>> 2] >>> (16 - (i % 4) * 8)) & 0xffff;
utf16Chars.push(String.fromCharCode(codePoint));
}
return utf16Chars.join('');
},
/**
* Converts a UTF-16 BE string to a word array.
*
* @param {string} utf16Str The UTF-16 BE string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Utf16.parse(utf16String);
*/
parse: function (utf16Str) {
// Shortcut
var utf16StrLength = utf16Str.length;
// Convert
var words = [];
for (var i = 0; i < utf16StrLength; i++) {
words[i >>> 1] |= utf16Str.charCodeAt(i) << (16 - (i % 2) * 16);
}
return WordArray.create(words, utf16StrLength * 2);
}
};
/**
* UTF-16 LE encoding strategy.
*/
C_enc.Utf16LE = {
/**
* Converts a word array to a UTF-16 LE string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The UTF-16 LE string.
*
* @static
*
* @example
*
* var utf16Str = CryptoJS.enc.Utf16LE.stringify(wordArray);
*/
stringify: function (wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
// Convert
var utf16Chars = [];
for (var i = 0; i < sigBytes; i += 2) {
var codePoint = swapEndian((words[i >>> 2] >>> (16 - (i % 4) * 8)) & 0xffff);
utf16Chars.push(String.fromCharCode(codePoint));
}
return utf16Chars.join('');
},
/**
* Converts a UTF-16 LE string to a word array.
*
* @param {string} utf16Str The UTF-16 LE string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Utf16LE.parse(utf16Str);
*/
parse: function (utf16Str) {
// Shortcut
var utf16StrLength = utf16Str.length;
// Convert
var words = [];
for (var i = 0; i < utf16StrLength; i++) {
words[i >>> 1] |= swapEndian(utf16Str.charCodeAt(i) << (16 - (i % 2) * 16));
}
return WordArray.create(words, utf16StrLength * 2);
}
};
function swapEndian(word) {
return ((word << 8) & 0xff00ff00) | ((word >>> 8) & 0x00ff00ff);
}
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var C_enc = C.enc;
/**
* Base64 encoding strategy.
*/
var Base64 = C_enc.Base64 = {
/**
* Converts a word array to a Base64 string.
*
* @param {WordArray} wordArray The word array.
*
* @return {string} The Base64 string.
*
* @static
*
* @example
*
* var base64String = CryptoJS.enc.Base64.stringify(wordArray);
*/
stringify: function (wordArray) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
var map = this._map;
// Clamp excess bits
wordArray.clamp();
// Convert
var base64Chars = [];
for (var i = 0; i < sigBytes; i += 3) {
var byte1 = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff;
var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff;
var triplet = (byte1 << 16) | (byte2 << 8) | byte3;
for (var j = 0; (j < 4) && (i + j * 0.75 < sigBytes); j++) {
base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f));
}
}
// Add padding
var paddingChar = map.charAt(64);
if (paddingChar) {
while (base64Chars.length % 4) {
base64Chars.push(paddingChar);
}
}
return base64Chars.join('');
},
/**
* Converts a Base64 string to a word array.
*
* @param {string} base64Str The Base64 string.
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Base64.parse(base64String);
*/
parse: function (base64Str) {
// Shortcuts
var base64StrLength = base64Str.length;
var map = this._map;
var reverseMap = this._reverseMap;
if (!reverseMap) {
reverseMap = this._reverseMap = [];
for (var j = 0; j < map.length; j++) {
reverseMap[map.charCodeAt(j)] = j;
}
}
// Ignore padding
var paddingChar = map.charAt(64);
if (paddingChar) {
var paddingIndex = base64Str.indexOf(paddingChar);
if (paddingIndex !== -1) {
base64StrLength = paddingIndex;
}
}
// Convert
return parseLoop(base64Str, base64StrLength, reverseMap);
},
_map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='
};
function parseLoop(base64Str, base64StrLength, reverseMap) {
var words = [];
var nBytes = 0;
for (var i = 0; i < base64StrLength; i++) {
if (i % 4) {
var bits1 = reverseMap[base64Str.charCodeAt(i - 1)] << ((i % 4) * 2);
var bits2 = reverseMap[base64Str.charCodeAt(i)] >>> (6 - (i % 4) * 2);
var bitsCombined = bits1 | bits2;
words[nBytes >>> 2] |= bitsCombined << (24 - (nBytes % 4) * 8);
nBytes++;
}
}
return WordArray.create(words, nBytes);
}
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var C_enc = C.enc;
/**
* Base64url encoding strategy.
*/
var Base64url = C_enc.Base64url = {
/**
* Converts a word array to a Base64url string.
*
* @param {WordArray} wordArray The word array.
*
* @param {boolean} urlSafe Whether to use url safe
*
* @return {string} The Base64url string.
*
* @static
*
* @example
*
* var base64String = CryptoJS.enc.Base64url.stringify(wordArray);
*/
stringify: function (wordArray, urlSafe=true) {
// Shortcuts
var words = wordArray.words;
var sigBytes = wordArray.sigBytes;
var map = urlSafe ? this._safe_map : this._map;
// Clamp excess bits
wordArray.clamp();
// Convert
var base64Chars = [];
for (var i = 0; i < sigBytes; i += 3) {
var byte1 = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;
var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff;
var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff;
var triplet = (byte1 << 16) | (byte2 << 8) | byte3;
for (var j = 0; (j < 4) && (i + j * 0.75 < sigBytes); j++) {
base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f));
}
}
// Add padding
var paddingChar = map.charAt(64);
if (paddingChar) {
while (base64Chars.length % 4) {
base64Chars.push(paddingChar);
}
}
return base64Chars.join('');
},
/**
* Converts a Base64url string to a word array.
*
* @param {string} base64Str The Base64url string.
*
* @param {boolean} urlSafe Whether to use url safe
*
* @return {WordArray} The word array.
*
* @static
*
* @example
*
* var wordArray = CryptoJS.enc.Base64url.parse(base64String);
*/
parse: function (base64Str, urlSafe=true) {
// Shortcuts
var base64StrLength = base64Str.length;
var map = urlSafe ? this._safe_map : this._map;
var reverseMap = this._reverseMap;
if (!reverseMap) {
reverseMap = this._reverseMap = [];
for (var j = 0; j < map.length; j++) {
reverseMap[map.charCodeAt(j)] = j;
}
}
// Ignore padding
var paddingChar = map.charAt(64);
if (paddingChar) {
var paddingIndex = base64Str.indexOf(paddingChar);
if (paddingIndex !== -1) {
base64StrLength = paddingIndex;
}
}
// Convert
return parseLoop(base64Str, base64StrLength, reverseMap);
},
_map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',
_safe_map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',
};
function parseLoop(base64Str, base64StrLength, reverseMap) {
var words = [];
var nBytes = 0;
for (var i = 0; i < base64StrLength; i++) {
if (i % 4) {
var bits1 = reverseMap[base64Str.charCodeAt(i - 1)] << ((i % 4) * 2);
var bits2 = reverseMap[base64Str.charCodeAt(i)] >>> (6 - (i % 4) * 2);
var bitsCombined = bits1 | bits2;
words[nBytes >>> 2] |= bitsCombined << (24 - (nBytes % 4) * 8);
nBytes++;
}
}
return WordArray.create(words, nBytes);
}
}());
(function (Math) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var Hasher = C_lib.Hasher;
var C_algo = C.algo;
// Constants table
var T = [];
// Compute constants
(function () {
for (var i = 0; i < 64; i++) {
T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0;
}
}());
/**
* MD5 hash algorithm.
*/
var MD5 = C_algo.MD5 = Hasher.extend({
_doReset: function () {
this._hash = new WordArray.init([
0x67452301, 0xefcdab89,
0x98badcfe, 0x10325476
]);
},
_doProcessBlock: function (M, offset) {
// Swap endian
for (var i = 0; i < 16; i++) {
// Shortcuts
var offset_i = offset + i;
var M_offset_i = M[offset_i];
M[offset_i] = (
(((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |
(((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)
);
}
// Shortcuts
var H = this._hash.words;
var M_offset_0 = M[offset + 0];
var M_offset_1 = M[offset + 1];
var M_offset_2 = M[offset + 2];
var M_offset_3 = M[offset + 3];
var M_offset_4 = M[offset + 4];
var M_offset_5 = M[offset + 5];
var M_offset_6 = M[offset + 6];
var M_offset_7 = M[offset + 7];
var M_offset_8 = M[offset + 8];
var M_offset_9 = M[offset + 9];
var M_offset_10 = M[offset + 10];
var M_offset_11 = M[offset + 11];
var M_offset_12 = M[offset + 12];
var M_offset_13 = M[offset + 13];
var M_offset_14 = M[offset + 14];
var M_offset_15 = M[offset + 15];
// Working varialbes
var a = H[0];
var b = H[1];
var c = H[2];
var d = H[3];
// Computation
a = FF(a, b, c, d, M_offset_0, 7, T[0]);
d = FF(d, a, b, c, M_offset_1, 12, T[1]);
c = FF(c, d, a, b, M_offset_2, 17, T[2]);
b = FF(b, c, d, a, M_offset_3, 22, T[3]);
a = FF(a, b, c, d, M_offset_4, 7, T[4]);
d = FF(d, a, b, c, M_offset_5, 12, T[5]);
c = FF(c, d, a, b, M_offset_6, 17, T[6]);
b = FF(b, c, d, a, M_offset_7, 22, T[7]);
a = FF(a, b, c, d, M_offset_8, 7, T[8]);
d = FF(d, a, b, c, M_offset_9, 12, T[9]);
c = FF(c, d, a, b, M_offset_10, 17, T[10]);
b = FF(b, c, d, a, M_offset_11, 22, T[11]);
a = FF(a, b, c, d, M_offset_12, 7, T[12]);
d = FF(d, a, b, c, M_offset_13, 12, T[13]);
c = FF(c, d, a, b, M_offset_14, 17, T[14]);
b = FF(b, c, d, a, M_offset_15, 22, T[15]);
a = GG(a, b, c, d, M_offset_1, 5, T[16]);
d = GG(d, a, b, c, M_offset_6, 9, T[17]);
c = GG(c, d, a, b, M_offset_11, 14, T[18]);
b = GG(b, c, d, a, M_offset_0, 20, T[19]);
a = GG(a, b, c, d, M_offset_5, 5, T[20]);
d = GG(d, a, b, c, M_offset_10, 9, T[21]);
c = GG(c, d, a, b, M_offset_15, 14, T[22]);
b = GG(b, c, d, a, M_offset_4, 20, T[23]);
a = GG(a, b, c, d, M_offset_9, 5, T[24]);
d = GG(d, a, b, c, M_offset_14, 9, T[25]);
c = GG(c, d, a, b, M_offset_3, 14, T[26]);
b = GG(b, c, d, a, M_offset_8, 20, T[27]);
a = GG(a, b, c, d, M_offset_13, 5, T[28]);
d = GG(d, a, b, c, M_offset_2, 9, T[29]);
c = GG(c, d, a, b, M_offset_7, 14, T[30]);
b = GG(b, c, d, a, M_offset_12, 20, T[31]);
a = HH(a, b, c, d, M_offset_5, 4, T[32]);
d = HH(d, a, b, c, M_offset_8, 11, T[33]);
c = HH(c, d, a, b, M_offset_11, 16, T[34]);
b = HH(b, c, d, a, M_offset_14, 23, T[35]);
a = HH(a, b, c, d, M_offset_1, 4, T[36]);
d = HH(d, a, b, c, M_offset_4, 11, T[37]);
c = HH(c, d, a, b, M_offset_7, 16, T[38]);
b = HH(b, c, d, a, M_offset_10, 23, T[39]);
a = HH(a, b, c, d, M_offset_13, 4, T[40]);
d = HH(d, a, b, c, M_offset_0, 11, T[41]);
c = HH(c, d, a, b, M_offset_3, 16, T[42]);
b = HH(b, c, d, a, M_offset_6, 23, T[43]);
a = HH(a, b, c, d, M_offset_9, 4, T[44]);
d = HH(d, a, b, c, M_offset_12, 11, T[45]);
c = HH(c, d, a, b, M_offset_15, 16, T[46]);
b = HH(b, c, d, a, M_offset_2, 23, T[47]);
a = II(a, b, c, d, M_offset_0, 6, T[48]);
d = II(d, a, b, c, M_offset_7, 10, T[49]);
c = II(c, d, a, b, M_offset_14, 15, T[50]);
b = II(b, c, d, a, M_offset_5, 21, T[51]);
a = II(a, b, c, d, M_offset_12, 6, T[52]);
d = II(d, a, b, c, M_offset_3, 10, T[53]);
c = II(c, d, a, b, M_offset_10, 15, T[54]);
b = II(b, c, d, a, M_offset_1, 21, T[55]);
a = II(a, b, c, d, M_offset_8, 6, T[56]);
d = II(d, a, b, c, M_offset_15, 10, T[57]);
c = II(c, d, a, b, M_offset_6, 15, T[58]);
b = II(b, c, d, a, M_offset_13, 21, T[59]);
a = II(a, b, c, d, M_offset_4, 6, T[60]);
d = II(d, a, b, c, M_offset_11, 10, T[61]);
c = II(c, d, a, b, M_offset_2, 15, T[62]);
b = II(b, c, d, a, M_offset_9, 21, T[63]);
// Intermediate hash value
H[0] = (H[0] + a) | 0;
H[1] = (H[1] + b) | 0;
H[2] = (H[2] + c) | 0;
H[3] = (H[3] + d) | 0;
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000);
var nBitsTotalL = nBitsTotal;
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = (
(((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) |
(((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)
);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (
(((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) |
(((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)
);
data.sigBytes = (dataWords.length + 1) * 4;
// Hash final blocks
this._process();
// Shortcuts
var hash = this._hash;
var H = hash.words;
// Swap endian
for (var i = 0; i < 4; i++) {
// Shortcut
var H_i = H[i];
H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |
(((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);
}
// Return final computed hash
return hash;
},
clone: function () {
var clone = Hasher.clone.call(this);
clone._hash = this._hash.clone();
return clone;
}
});
function FF(a, b, c, d, x, s, t) {
var n = a + ((b & c) | (~b & d)) + x + t;
return ((n << s) | (n >>> (32 - s))) + b;
}
function GG(a, b, c, d, x, s, t) {
var n = a + ((b & d) | (c & ~d)) + x + t;
return ((n << s) | (n >>> (32 - s))) + b;
}
function HH(a, b, c, d, x, s, t) {
var n = a + (b ^ c ^ d) + x + t;
return ((n << s) | (n >>> (32 - s))) + b;
}
function II(a, b, c, d, x, s, t) {
var n = a + (c ^ (b | ~d)) + x + t;
return ((n << s) | (n >>> (32 - s))) + b;
}
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.MD5('message');
* var hash = CryptoJS.MD5(wordArray);
*/
C.MD5 = Hasher._createHelper(MD5);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacMD5(message, key);
*/
C.HmacMD5 = Hasher._createHmacHelper(MD5);
}(Math));
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var Hasher = C_lib.Hasher;
var C_algo = C.algo;
// Reusable object
var W = [];
/**
* SHA-1 hash algorithm.
*/
var SHA1 = C_algo.SHA1 = Hasher.extend({
_doReset: function () {
this._hash = new WordArray.init([
0x67452301, 0xefcdab89,
0x98badcfe, 0x10325476,
0xc3d2e1f0
]);
},
_doProcessBlock: function (M, offset) {
// Shortcut
var H = this._hash.words;
// Working variables
var a = H[0];
var b = H[1];
var c = H[2];
var d = H[3];
var e = H[4];
// Computation
for (var i = 0; i < 80; i++) {
if (i < 16) {
W[i] = M[offset + i] | 0;
} else {
var n = W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16];
W[i] = (n << 1) | (n >>> 31);
}
var t = ((a << 5) | (a >>> 27)) + e + W[i];
if (i < 20) {
t += ((b & c) | (~b & d)) + 0x5a827999;
} else if (i < 40) {
t += (b ^ c ^ d) + 0x6ed9eba1;
} else if (i < 60) {
t += ((b & c) | (b & d) | (c & d)) - 0x70e44324;
} else /* if (i < 80) */ {
t += (b ^ c ^ d) - 0x359d3e2a;
}
e = d;
d = c;
c = (b << 30) | (b >>> 2);
b = a;
a = t;
}
// Intermediate hash value
H[0] = (H[0] + a) | 0;
H[1] = (H[1] + b) | 0;
H[2] = (H[2] + c) | 0;
H[3] = (H[3] + d) | 0;
H[4] = (H[4] + e) | 0;
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal;
data.sigBytes = dataWords.length * 4;
// Hash final blocks
this._process();
// Return final computed hash
return this._hash;
},
clone: function () {
var clone = Hasher.clone.call(this);
clone._hash = this._hash.clone();
return clone;
}
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA1('message');
* var hash = CryptoJS.SHA1(wordArray);
*/
C.SHA1 = Hasher._createHelper(SHA1);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA1(message, key);
*/
C.HmacSHA1 = Hasher._createHmacHelper(SHA1);
}());
(function (Math) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var Hasher = C_lib.Hasher;
var C_algo = C.algo;
// Initialization and round constants tables
var H = [];
var K = [];
// Compute constants
(function () {
function isPrime(n) {
var sqrtN = Math.sqrt(n);
for (var factor = 2; factor <= sqrtN; factor++) {
if (!(n % factor)) {
return false;
}
}
return true;
}
function getFractionalBits(n) {
return ((n - (n | 0)) * 0x100000000) | 0;
}
var n = 2;
var nPrime = 0;
while (nPrime < 64) {
if (isPrime(n)) {
if (nPrime < 8) {
H[nPrime] = getFractionalBits(Math.pow(n, 1 / 2));
}
K[nPrime] = getFractionalBits(Math.pow(n, 1 / 3));
nPrime++;
}
n++;
}
}());
// Reusable object
var W = [];
/**
* SHA-256 hash algorithm.
*/
var SHA256 = C_algo.SHA256 = Hasher.extend({
_doReset: function () {
this._hash = new WordArray.init(H.slice(0));
},
_doProcessBlock: function (M, offset) {
// Shortcut
var H = this._hash.words;
// Working variables
var a = H[0];
var b = H[1];
var c = H[2];
var d = H[3];
var e = H[4];
var f = H[5];
var g = H[6];
var h = H[7];
// Computation
for (var i = 0; i < 64; i++) {
if (i < 16) {
W[i] = M[offset + i] | 0;
} else {
var gamma0x = W[i - 15];
var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^
((gamma0x << 14) | (gamma0x >>> 18)) ^
(gamma0x >>> 3);
var gamma1x = W[i - 2];
var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^
((gamma1x << 13) | (gamma1x >>> 19)) ^
(gamma1x >>> 10);
W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16];
}
var ch = (e & f) ^ (~e & g);
var maj = (a & b) ^ (a & c) ^ (b & c);
var sigma0 = ((a << 30) | (a >>> 2)) ^ ((a << 19) | (a >>> 13)) ^ ((a << 10) | (a >>> 22));
var sigma1 = ((e << 26) | (e >>> 6)) ^ ((e << 21) | (e >>> 11)) ^ ((e << 7) | (e >>> 25));
var t1 = h + sigma1 + ch + K[i] + W[i];
var t2 = sigma0 + maj;
h = g;
g = f;
f = e;
e = (d + t1) | 0;
d = c;
c = b;
b = a;
a = (t1 + t2) | 0;
}
// Intermediate hash value
H[0] = (H[0] + a) | 0;
H[1] = (H[1] + b) | 0;
H[2] = (H[2] + c) | 0;
H[3] = (H[3] + d) | 0;
H[4] = (H[4] + e) | 0;
H[5] = (H[5] + f) | 0;
H[6] = (H[6] + g) | 0;
H[7] = (H[7] + h) | 0;
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal;
data.sigBytes = dataWords.length * 4;
// Hash final blocks
this._process();
// Return final computed hash
return this._hash;
},
clone: function () {
var clone = Hasher.clone.call(this);
clone._hash = this._hash.clone();
return clone;
}
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA256('message');
* var hash = CryptoJS.SHA256(wordArray);
*/
C.SHA256 = Hasher._createHelper(SHA256);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA256(message, key);
*/
C.HmacSHA256 = Hasher._createHmacHelper(SHA256);
}(Math));
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var C_algo = C.algo;
var SHA256 = C_algo.SHA256;
/**
* SHA-224 hash algorithm.
*/
var SHA224 = C_algo.SHA224 = SHA256.extend({
_doReset: function () {
this._hash = new WordArray.init([
0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,
0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4
]);
},
_doFinalize: function () {
var hash = SHA256._doFinalize.call(this);
hash.sigBytes -= 4;
return hash;
}
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA224('message');
* var hash = CryptoJS.SHA224(wordArray);
*/
C.SHA224 = SHA256._createHelper(SHA224);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA224(message, key);
*/
C.HmacSHA224 = SHA256._createHmacHelper(SHA224);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Hasher = C_lib.Hasher;
var C_x64 = C.x64;
var X64Word = C_x64.Word;
var X64WordArray = C_x64.WordArray;
var C_algo = C.algo;
function X64Word_create() {
return X64Word.create.apply(X64Word, arguments);
}
// Constants
var K = [
X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd),
X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc),
X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019),
X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118),
X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe),
X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2),
X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1),
X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694),
X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3),
X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65),
X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483),
X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5),
X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210),
X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4),
X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725),
X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70),
X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926),
X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df),
X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8),
X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b),
X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001),
X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30),
X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910),
X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8),
X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53),
X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8),
X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb),
X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3),
X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60),
X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec),
X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9),
X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b),
X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207),
X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178),
X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6),
X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b),
X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493),
X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c),
X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a),
X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817)
];
// Reusable objects
var W = [];
(function () {
for (var i = 0; i < 80; i++) {
W[i] = X64Word_create();
}
}());
/**
* SHA-512 hash algorithm.
*/
var SHA512 = C_algo.SHA512 = Hasher.extend({
_doReset: function () {
this._hash = new X64WordArray.init([
new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b),
new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1),
new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f),
new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179)
]);
},
_doProcessBlock: function (M, offset) {
// Shortcuts
var H = this._hash.words;
var H0 = H[0];
var H1 = H[1];
var H2 = H[2];
var H3 = H[3];
var H4 = H[4];
var H5 = H[5];
var H6 = H[6];
var H7 = H[7];
var H0h = H0.high;
var H0l = H0.low;
var H1h = H1.high;
var H1l = H1.low;
var H2h = H2.high;
var H2l = H2.low;
var H3h = H3.high;
var H3l = H3.low;
var H4h = H4.high;
var H4l = H4.low;
var H5h = H5.high;
var H5l = H5.low;
var H6h = H6.high;
var H6l = H6.low;
var H7h = H7.high;
var H7l = H7.low;
// Working variables
var ah = H0h;
var al = H0l;
var bh = H1h;
var bl = H1l;
var ch = H2h;
var cl = H2l;
var dh = H3h;
var dl = H3l;
var eh = H4h;
var el = H4l;
var fh = H5h;
var fl = H5l;
var gh = H6h;
var gl = H6l;
var hh = H7h;
var hl = H7l;
// Rounds
for (var i = 0; i < 80; i++) {
var Wil;
var Wih;
// Shortcut
var Wi = W[i];
// Extend message
if (i < 16) {
Wih = Wi.high = M[offset + i * 2] | 0;
Wil = Wi.low = M[offset + i * 2 + 1] | 0;
} else {
// Gamma0
var gamma0x = W[i - 15];
var gamma0xh = gamma0x.high;
var gamma0xl = gamma0x.low;
var gamma0h = ((gamma0xh >>> 1) | (gamma0xl << 31)) ^ ((gamma0xh >>> 8) | (gamma0xl << 24)) ^ (gamma0xh >>> 7);
var gamma0l = ((gamma0xl >>> 1) | (gamma0xh << 31)) ^ ((gamma0xl >>> 8) | (gamma0xh << 24)) ^ ((gamma0xl >>> 7) | (gamma0xh << 25));
// Gamma1
var gamma1x = W[i - 2];
var gamma1xh = gamma1x.high;
var gamma1xl = gamma1x.low;
var gamma1h = ((gamma1xh >>> 19) | (gamma1xl << 13)) ^ ((gamma1xh << 3) | (gamma1xl >>> 29)) ^ (gamma1xh >>> 6);
var gamma1l = ((gamma1xl >>> 19) | (gamma1xh << 13)) ^ ((gamma1xl << 3) | (gamma1xh >>> 29)) ^ ((gamma1xl >>> 6) | (gamma1xh << 26));
// W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]
var Wi7 = W[i - 7];
var Wi7h = Wi7.high;
var Wi7l = Wi7.low;
var Wi16 = W[i - 16];
var Wi16h = Wi16.high;
var Wi16l = Wi16.low;
Wil = gamma0l + Wi7l;
Wih = gamma0h + Wi7h + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0);
Wil = Wil + gamma1l;
Wih = Wih + gamma1h + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0);
Wil = Wil + Wi16l;
Wih = Wih + Wi16h + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0);
Wi.high = Wih;
Wi.low = Wil;
}
var chh = (eh & fh) ^ (~eh & gh);
var chl = (el & fl) ^ (~el & gl);
var majh = (ah & bh) ^ (ah & ch) ^ (bh & ch);
var majl = (al & bl) ^ (al & cl) ^ (bl & cl);
var sigma0h = ((ah >>> 28) | (al << 4)) ^ ((ah << 30) | (al >>> 2)) ^ ((ah << 25) | (al >>> 7));
var sigma0l = ((al >>> 28) | (ah << 4)) ^ ((al << 30) | (ah >>> 2)) ^ ((al << 25) | (ah >>> 7));
var sigma1h = ((eh >>> 14) | (el << 18)) ^ ((eh >>> 18) | (el << 14)) ^ ((eh << 23) | (el >>> 9));
var sigma1l = ((el >>> 14) | (eh << 18)) ^ ((el >>> 18) | (eh << 14)) ^ ((el << 23) | (eh >>> 9));
// t1 = h + sigma1 + ch + K[i] + W[i]
var Ki = K[i];
var Kih = Ki.high;
var Kil = Ki.low;
var t1l = hl + sigma1l;
var t1h = hh + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0);
var t1l = t1l + chl;
var t1h = t1h + chh + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0);
var t1l = t1l + Kil;
var t1h = t1h + Kih + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0);
var t1l = t1l + Wil;
var t1h = t1h + Wih + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0);
// t2 = sigma0 + maj
var t2l = sigma0l + majl;
var t2h = sigma0h + majh + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0);
// Update working variables
hh = gh;
hl = gl;
gh = fh;
gl = fl;
fh = eh;
fl = el;
el = (dl + t1l) | 0;
eh = (dh + t1h + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0;
dh = ch;
dl = cl;
ch = bh;
cl = bl;
bh = ah;
bl = al;
al = (t1l + t2l) | 0;
ah = (t1h + t2h + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0;
}
// Intermediate hash value
H0l = H0.low = (H0l + al);
H0.high = (H0h + ah + ((H0l >>> 0) < (al >>> 0) ? 1 : 0));
H1l = H1.low = (H1l + bl);
H1.high = (H1h + bh + ((H1l >>> 0) < (bl >>> 0) ? 1 : 0));
H2l = H2.low = (H2l + cl);
H2.high = (H2h + ch + ((H2l >>> 0) < (cl >>> 0) ? 1 : 0));
H3l = H3.low = (H3l + dl);
H3.high = (H3h + dh + ((H3l >>> 0) < (dl >>> 0) ? 1 : 0));
H4l = H4.low = (H4l + el);
H4.high = (H4h + eh + ((H4l >>> 0) < (el >>> 0) ? 1 : 0));
H5l = H5.low = (H5l + fl);
H5.high = (H5h + fh + ((H5l >>> 0) < (fl >>> 0) ? 1 : 0));
H6l = H6.low = (H6l + gl);
H6.high = (H6h + gh + ((H6l >>> 0) < (gl >>> 0) ? 1 : 0));
H7l = H7.low = (H7l + hl);
H7.high = (H7h + hh + ((H7l >>> 0) < (hl >>> 0) ? 1 : 0));
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
dataWords[(((nBitsLeft + 128) >>> 10) << 5) + 30] = Math.floor(nBitsTotal / 0x100000000);
dataWords[(((nBitsLeft + 128) >>> 10) << 5) + 31] = nBitsTotal;
data.sigBytes = dataWords.length * 4;
// Hash final blocks
this._process();
// Convert hash to 32-bit word array before returning
var hash = this._hash.toX32();
// Return final computed hash
return hash;
},
clone: function () {
var clone = Hasher.clone.call(this);
clone._hash = this._hash.clone();
return clone;
},
blockSize: 1024/32
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA512('message');
* var hash = CryptoJS.SHA512(wordArray);
*/
C.SHA512 = Hasher._createHelper(SHA512);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA512(message, key);
*/
C.HmacSHA512 = Hasher._createHmacHelper(SHA512);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_x64 = C.x64;
var X64Word = C_x64.Word;
var X64WordArray = C_x64.WordArray;
var C_algo = C.algo;
var SHA512 = C_algo.SHA512;
/**
* SHA-384 hash algorithm.
*/
var SHA384 = C_algo.SHA384 = SHA512.extend({
_doReset: function () {
this._hash = new X64WordArray.init([
new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507),
new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939),
new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511),
new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4)
]);
},
_doFinalize: function () {
var hash = SHA512._doFinalize.call(this);
hash.sigBytes -= 16;
return hash;
}
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA384('message');
* var hash = CryptoJS.SHA384(wordArray);
*/
C.SHA384 = SHA512._createHelper(SHA384);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA384(message, key);
*/
C.HmacSHA384 = SHA512._createHmacHelper(SHA384);
}());
(function (Math) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var Hasher = C_lib.Hasher;
var C_x64 = C.x64;
var X64Word = C_x64.Word;
var C_algo = C.algo;
// Constants tables
var RHO_OFFSETS = [];
var PI_INDEXES = [];
var ROUND_CONSTANTS = [];
// Compute Constants
(function () {
// Compute rho offset constants
var x = 1, y = 0;
for (var t = 0; t < 24; t++) {
RHO_OFFSETS[x + 5 * y] = ((t + 1) * (t + 2) / 2) % 64;
var newX = y % 5;
var newY = (2 * x + 3 * y) % 5;
x = newX;
y = newY;
}
// Compute pi index constants
for (var x = 0; x < 5; x++) {
for (var y = 0; y < 5; y++) {
PI_INDEXES[x + 5 * y] = y + ((2 * x + 3 * y) % 5) * 5;
}
}
// Compute round constants
var LFSR = 0x01;
for (var i = 0; i < 24; i++) {
var roundConstantMsw = 0;
var roundConstantLsw = 0;
for (var j = 0; j < 7; j++) {
if (LFSR & 0x01) {
var bitPosition = (1 << j) - 1;
if (bitPosition < 32) {
roundConstantLsw ^= 1 << bitPosition;
} else /* if (bitPosition >= 32) */ {
roundConstantMsw ^= 1 << (bitPosition - 32);
}
}
// Compute next LFSR
if (LFSR & 0x80) {
// Primitive polynomial over GF(2): x^8 + x^6 + x^5 + x^4 + 1
LFSR = (LFSR << 1) ^ 0x71;
} else {
LFSR <<= 1;
}
}
ROUND_CONSTANTS[i] = X64Word.create(roundConstantMsw, roundConstantLsw);
}
}());
// Reusable objects for temporary values
var T = [];
(function () {
for (var i = 0; i < 25; i++) {
T[i] = X64Word.create();
}
}());
/**
* SHA-3 hash algorithm.
*/
var SHA3 = C_algo.SHA3 = Hasher.extend({
/**
* Configuration options.
*
* @property {number} outputLength
* The desired number of bits in the output hash.
* Only values permitted are: 224, 256, 384, 512.
* Default: 512
*/
cfg: Hasher.cfg.extend({
outputLength: 512
}),
_doReset: function () {
var state = this._state = []
for (var i = 0; i < 25; i++) {
state[i] = new X64Word.init();
}
this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32;
},
_doProcessBlock: function (M, offset) {
// Shortcuts
var state = this._state;
var nBlockSizeLanes = this.blockSize / 2;
// Absorb
for (var i = 0; i < nBlockSizeLanes; i++) {
// Shortcuts
var M2i = M[offset + 2 * i];
var M2i1 = M[offset + 2 * i + 1];
// Swap endian
M2i = (
(((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) |
(((M2i << 24) | (M2i >>> 8)) & 0xff00ff00)
);
M2i1 = (
(((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) |
(((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00)
);
// Absorb message into state
var lane = state[i];
lane.high ^= M2i1;
lane.low ^= M2i;
}
// Rounds
for (var round = 0; round < 24; round++) {
// Theta
for (var x = 0; x < 5; x++) {
// Mix column lanes
var tMsw = 0, tLsw = 0;
for (var y = 0; y < 5; y++) {
var lane = state[x + 5 * y];
tMsw ^= lane.high;
tLsw ^= lane.low;
}
// Temporary values
var Tx = T[x];
Tx.high = tMsw;
Tx.low = tLsw;
}
for (var x = 0; x < 5; x++) {
// Shortcuts
var Tx4 = T[(x + 4) % 5];
var Tx1 = T[(x + 1) % 5];
var Tx1Msw = Tx1.high;
var Tx1Lsw = Tx1.low;
// Mix surrounding columns
var tMsw = Tx4.high ^ ((Tx1Msw << 1) | (Tx1Lsw >>> 31));
var tLsw = Tx4.low ^ ((Tx1Lsw << 1) | (Tx1Msw >>> 31));
for (var y = 0; y < 5; y++) {
var lane = state[x + 5 * y];
lane.high ^= tMsw;
lane.low ^= tLsw;
}
}
// Rho Pi
for (var laneIndex = 1; laneIndex < 25; laneIndex++) {
var tMsw;
var tLsw;
// Shortcuts
var lane = state[laneIndex];
var laneMsw = lane.high;
var laneLsw = lane.low;
var rhoOffset = RHO_OFFSETS[laneIndex];
// Rotate lanes
if (rhoOffset < 32) {
tMsw = (laneMsw << rhoOffset) | (laneLsw >>> (32 - rhoOffset));
tLsw = (laneLsw << rhoOffset) | (laneMsw >>> (32 - rhoOffset));
} else /* if (rhoOffset >= 32) */ {
tMsw = (laneLsw << (rhoOffset - 32)) | (laneMsw >>> (64 - rhoOffset));
tLsw = (laneMsw << (rhoOffset - 32)) | (laneLsw >>> (64 - rhoOffset));
}
// Transpose lanes
var TPiLane = T[PI_INDEXES[laneIndex]];
TPiLane.high = tMsw;
TPiLane.low = tLsw;
}
// Rho pi at x = y = 0
var T0 = T[0];
var state0 = state[0];
T0.high = state0.high;
T0.low = state0.low;
// Chi
for (var x = 0; x < 5; x++) {
for (var y = 0; y < 5; y++) {
// Shortcuts
var laneIndex = x + 5 * y;
var lane = state[laneIndex];
var TLane = T[laneIndex];
var Tx1Lane = T[((x + 1) % 5) + 5 * y];
var Tx2Lane = T[((x + 2) % 5) + 5 * y];
// Mix rows
lane.high = TLane.high ^ (~Tx1Lane.high & Tx2Lane.high);
lane.low = TLane.low ^ (~Tx1Lane.low & Tx2Lane.low);
}
}
// Iota
var lane = state[0];
var roundConstant = ROUND_CONSTANTS[round];
lane.high ^= roundConstant.high;
lane.low ^= roundConstant.low;
}
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
var blockSizeBits = this.blockSize * 32;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x1 << (24 - nBitsLeft % 32);
dataWords[((Math.ceil((nBitsLeft + 1) / blockSizeBits) * blockSizeBits) >>> 5) - 1] |= 0x80;
data.sigBytes = dataWords.length * 4;
// Hash final blocks
this._process();
// Shortcuts
var state = this._state;
var outputLengthBytes = this.cfg.outputLength / 8;
var outputLengthLanes = outputLengthBytes / 8;
// Squeeze
var hashWords = [];
for (var i = 0; i < outputLengthLanes; i++) {
// Shortcuts
var lane = state[i];
var laneMsw = lane.high;
var laneLsw = lane.low;
// Swap endian
laneMsw = (
(((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) |
(((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00)
);
laneLsw = (
(((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) |
(((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00)
);
// Squeeze state to retrieve hash
hashWords.push(laneLsw);
hashWords.push(laneMsw);
}
// Return final computed hash
return new WordArray.init(hashWords, outputLengthBytes);
},
clone: function () {
var clone = Hasher.clone.call(this);
var state = clone._state = this._state.slice(0);
for (var i = 0; i < 25; i++) {
state[i] = state[i].clone();
}
return clone;
}
});
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.SHA3('message');
* var hash = CryptoJS.SHA3(wordArray);
*/
C.SHA3 = Hasher._createHelper(SHA3);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacSHA3(message, key);
*/
C.HmacSHA3 = Hasher._createHmacHelper(SHA3);
}(Math));
/** @preserve
(c) 2012 by Cédric Mesnil. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
(function (Math) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var Hasher = C_lib.Hasher;
var C_algo = C.algo;
// Constants table
var _zl = WordArray.create([
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,
3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,
1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,
4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13]);
var _zr = WordArray.create([
5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,
6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,
15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,
8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,
12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11]);
var _sl = WordArray.create([
11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,
7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,
11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,
11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,
9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ]);
var _sr = WordArray.create([
8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,
9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,
9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,
15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,
8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ]);
var _hl = WordArray.create([ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E]);
var _hr = WordArray.create([ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000]);
/**
* RIPEMD160 hash algorithm.
*/
var RIPEMD160 = C_algo.RIPEMD160 = Hasher.extend({
_doReset: function () {
this._hash = WordArray.create([0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0]);
},
_doProcessBlock: function (M, offset) {
// Swap endian
for (var i = 0; i < 16; i++) {
// Shortcuts
var offset_i = offset + i;
var M_offset_i = M[offset_i];
// Swap
M[offset_i] = (
(((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |
(((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)
);
}
// Shortcut
var H = this._hash.words;
var hl = _hl.words;
var hr = _hr.words;
var zl = _zl.words;
var zr = _zr.words;
var sl = _sl.words;
var sr = _sr.words;
// Working variables
var al, bl, cl, dl, el;
var ar, br, cr, dr, er;
ar = al = H[0];
br = bl = H[1];
cr = cl = H[2];
dr = dl = H[3];
er = el = H[4];
// Computation
var t;
for (var i = 0; i < 80; i += 1) {
t = (al + M[offset+zl[i]])|0;
if (i<16){
t += f1(bl,cl,dl) + hl[0];
} else if (i<32) {
t += f2(bl,cl,dl) + hl[1];
} else if (i<48) {
t += f3(bl,cl,dl) + hl[2];
} else if (i<64) {
t += f4(bl,cl,dl) + hl[3];
} else {// if (i<80) {
t += f5(bl,cl,dl) + hl[4];
}
t = t|0;
t = rotl(t,sl[i]);
t = (t+el)|0;
al = el;
el = dl;
dl = rotl(cl, 10);
cl = bl;
bl = t;
t = (ar + M[offset+zr[i]])|0;
if (i<16){
t += f5(br,cr,dr) + hr[0];
} else if (i<32) {
t += f4(br,cr,dr) + hr[1];
} else if (i<48) {
t += f3(br,cr,dr) + hr[2];
} else if (i<64) {
t += f2(br,cr,dr) + hr[3];
} else {// if (i<80) {
t += f1(br,cr,dr) + hr[4];
}
t = t|0;
t = rotl(t,sr[i]) ;
t = (t+er)|0;
ar = er;
er = dr;
dr = rotl(cr, 10);
cr = br;
br = t;
}
// Intermediate hash value
t = (H[1] + cl + dr)|0;
H[1] = (H[2] + dl + er)|0;
H[2] = (H[3] + el + ar)|0;
H[3] = (H[4] + al + br)|0;
H[4] = (H[0] + bl + cr)|0;
H[0] = t;
},
_doFinalize: function () {
// Shortcuts
var data = this._data;
var dataWords = data.words;
var nBitsTotal = this._nDataBytes * 8;
var nBitsLeft = data.sigBytes * 8;
// Add padding
dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);
dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (
(((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) |
(((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00)
);
data.sigBytes = (dataWords.length + 1) * 4;
// Hash final blocks
this._process();
// Shortcuts
var hash = this._hash;
var H = hash.words;
// Swap endian
for (var i = 0; i < 5; i++) {
// Shortcut
var H_i = H[i];
// Swap
H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |
(((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);
}
// Return final computed hash
return hash;
},
clone: function () {
var clone = Hasher.clone.call(this);
clone._hash = this._hash.clone();
return clone;
}
});
function f1(x, y, z) {
return ((x) ^ (y) ^ (z));
}
function f2(x, y, z) {
return (((x)&(y)) | ((~x)&(z)));
}
function f3(x, y, z) {
return (((x) | (~(y))) ^ (z));
}
function f4(x, y, z) {
return (((x) & (z)) | ((y)&(~(z))));
}
function f5(x, y, z) {
return ((x) ^ ((y) |(~(z))));
}
function rotl(x,n) {
return (x<<n) | (x>>>(32-n));
}
/**
* Shortcut function to the hasher's object interface.
*
* @param {WordArray|string} message The message to hash.
*
* @return {WordArray} The hash.
*
* @static
*
* @example
*
* var hash = CryptoJS.RIPEMD160('message');
* var hash = CryptoJS.RIPEMD160(wordArray);
*/
C.RIPEMD160 = Hasher._createHelper(RIPEMD160);
/**
* Shortcut function to the HMAC's object interface.
*
* @param {WordArray|string} message The message to hash.
* @param {WordArray|string} key The secret key.
*
* @return {WordArray} The HMAC.
*
* @static
*
* @example
*
* var hmac = CryptoJS.HmacRIPEMD160(message, key);
*/
C.HmacRIPEMD160 = Hasher._createHmacHelper(RIPEMD160);
}(Math));
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Base = C_lib.Base;
var C_enc = C.enc;
var Utf8 = C_enc.Utf8;
var C_algo = C.algo;
/**
* HMAC algorithm.
*/
var HMAC = C_algo.HMAC = Base.extend({
/**
* Initializes a newly created HMAC.
*
* @param {Hasher} hasher The hash algorithm to use.
* @param {WordArray|string} key The secret key.
*
* @example
*
* var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key);
*/
init: function (hasher, key) {
// Init hasher
hasher = this._hasher = new hasher.init();
// Convert string to WordArray, else assume WordArray already
if (typeof key == 'string') {
key = Utf8.parse(key);
}
// Shortcuts
var hasherBlockSize = hasher.blockSize;
var hasherBlockSizeBytes = hasherBlockSize * 4;
// Allow arbitrary length keys
if (key.sigBytes > hasherBlockSizeBytes) {
key = hasher.finalize(key);
}
// Clamp excess bits
key.clamp();
// Clone key for inner and outer pads
var oKey = this._oKey = key.clone();
var iKey = this._iKey = key.clone();
// Shortcuts
var oKeyWords = oKey.words;
var iKeyWords = iKey.words;
// XOR keys with pad constants
for (var i = 0; i < hasherBlockSize; i++) {
oKeyWords[i] ^= 0x5c5c5c5c;
iKeyWords[i] ^= 0x36363636;
}
oKey.sigBytes = iKey.sigBytes = hasherBlockSizeBytes;
// Set initial values
this.reset();
},
/**
* Resets this HMAC to its initial state.
*
* @example
*
* hmacHasher.reset();
*/
reset: function () {
// Shortcut
var hasher = this._hasher;
// Reset
hasher.reset();
hasher.update(this._iKey);
},
/**
* Updates this HMAC with a message.
*
* @param {WordArray|string} messageUpdate The message to append.
*
* @return {HMAC} This HMAC instance.
*
* @example
*
* hmacHasher.update('message');
* hmacHasher.update(wordArray);
*/
update: function (messageUpdate) {
this._hasher.update(messageUpdate);
// Chainable
return this;
},
/**
* Finalizes the HMAC computation.
* Note that the finalize operation is effectively a destructive, read-once operation.
*
* @param {WordArray|string} messageUpdate (Optional) A final message update.
*
* @return {WordArray} The HMAC.
*
* @example
*
* var hmac = hmacHasher.finalize();
* var hmac = hmacHasher.finalize('message');
* var hmac = hmacHasher.finalize(wordArray);
*/
finalize: function (messageUpdate) {
// Shortcut
var hasher = this._hasher;
// Compute HMAC
var innerHash = hasher.finalize(messageUpdate);
hasher.reset();
var hmac = hasher.finalize(this._oKey.clone().concat(innerHash));
return hmac;
}
});
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Base = C_lib.Base;
var WordArray = C_lib.WordArray;
var C_algo = C.algo;
var SHA1 = C_algo.SHA1;
var HMAC = C_algo.HMAC;
/**
* Password-Based Key Derivation Function 2 algorithm.
*/
var PBKDF2 = C_algo.PBKDF2 = Base.extend({
/**
* Configuration options.
*
* @property {number} keySize The key size in words to generate. Default: 4 (128 bits)
* @property {Hasher} hasher The hasher to use. Default: SHA1
* @property {number} iterations The number of iterations to perform. Default: 1
*/
cfg: Base.extend({
keySize: 128/32,
hasher: SHA1,
iterations: 1
}),
/**
* Initializes a newly created key derivation function.
*
* @param {Object} cfg (Optional) The configuration options to use for the derivation.
*
* @example
*
* var kdf = CryptoJS.algo.PBKDF2.create();
* var kdf = CryptoJS.algo.PBKDF2.create({ keySize: 8 });
* var kdf = CryptoJS.algo.PBKDF2.create({ keySize: 8, iterations: 1000 });
*/
init: function (cfg) {
this.cfg = this.cfg.extend(cfg);
},
/**
* Computes the Password-Based Key Derivation Function 2.
*
* @param {WordArray|string} password The password.
* @param {WordArray|string} salt A salt.
*
* @return {WordArray} The derived key.
*
* @example
*
* var key = kdf.compute(password, salt);
*/
compute: function (password, salt) {
// Shortcut
var cfg = this.cfg;
// Init HMAC
var hmac = HMAC.create(cfg.hasher, password);
// Initial values
var derivedKey = WordArray.create();
var blockIndex = WordArray.create([0x00000001]);
// Shortcuts
var derivedKeyWords = derivedKey.words;
var blockIndexWords = blockIndex.words;
var keySize = cfg.keySize;
var iterations = cfg.iterations;
// Generate key
while (derivedKeyWords.length < keySize) {
var block = hmac.update(salt).finalize(blockIndex);
hmac.reset();
// Shortcuts
var blockWords = block.words;
var blockWordsLength = blockWords.length;
// Iterations
var intermediate = block;
for (var i = 1; i < iterations; i++) {
intermediate = hmac.finalize(intermediate);
hmac.reset();
// Shortcut
var intermediateWords = intermediate.words;
// XOR intermediate with block
for (var j = 0; j < blockWordsLength; j++) {
blockWords[j] ^= intermediateWords[j];
}
}
derivedKey.concat(block);
blockIndexWords[0]++;
}
derivedKey.sigBytes = keySize * 4;
return derivedKey;
}
});
/**
* Computes the Password-Based Key Derivation Function 2.
*
* @param {WordArray|string} password The password.
* @param {WordArray|string} salt A salt.
* @param {Object} cfg (Optional) The configuration options to use for this computation.
*
* @return {WordArray} The derived key.
*
* @static
*
* @example
*
* var key = CryptoJS.PBKDF2(password, salt);
* var key = CryptoJS.PBKDF2(password, salt, { keySize: 8 });
* var key = CryptoJS.PBKDF2(password, salt, { keySize: 8, iterations: 1000 });
*/
C.PBKDF2 = function (password, salt, cfg) {
return PBKDF2.create(cfg).compute(password, salt);
};
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Base = C_lib.Base;
var WordArray = C_lib.WordArray;
var C_algo = C.algo;
var MD5 = C_algo.MD5;
/**
* This key derivation function is meant to conform with EVP_BytesToKey.
* www.openssl.org/docs/crypto/EVP_BytesToKey.html
*/
var EvpKDF = C_algo.EvpKDF = Base.extend({
/**
* Configuration options.
*
* @property {number} keySize The key size in words to generate. Default: 4 (128 bits)
* @property {Hasher} hasher The hash algorithm to use. Default: MD5
* @property {number} iterations The number of iterations to perform. Default: 1
*/
cfg: Base.extend({
keySize: 128/32,
hasher: MD5,
iterations: 1
}),
/**
* Initializes a newly created key derivation function.
*
* @param {Object} cfg (Optional) The configuration options to use for the derivation.
*
* @example
*
* var kdf = CryptoJS.algo.EvpKDF.create();
* var kdf = CryptoJS.algo.EvpKDF.create({ keySize: 8 });
* var kdf = CryptoJS.algo.EvpKDF.create({ keySize: 8, iterations: 1000 });
*/
init: function (cfg) {
this.cfg = this.cfg.extend(cfg);
},
/**
* Derives a key from a password.
*
* @param {WordArray|string} password The password.
* @param {WordArray|string} salt A salt.
*
* @return {WordArray} The derived key.
*
* @example
*
* var key = kdf.compute(password, salt);
*/
compute: function (password, salt) {
var block;
// Shortcut
var cfg = this.cfg;
// Init hasher
var hasher = cfg.hasher.create();
// Initial values
var derivedKey = WordArray.create();
// Shortcuts
var derivedKeyWords = derivedKey.words;
var keySize = cfg.keySize;
var iterations = cfg.iterations;
// Generate key
while (derivedKeyWords.length < keySize) {
if (block) {
hasher.update(block);
}
block = hasher.update(password).finalize(salt);
hasher.reset();
// Iterations
for (var i = 1; i < iterations; i++) {
block = hasher.finalize(block);
hasher.reset();
}
derivedKey.concat(block);
}
derivedKey.sigBytes = keySize * 4;
return derivedKey;
}
});
/**
* Derives a key from a password.
*
* @param {WordArray|string} password The password.
* @param {WordArray|string} salt A salt.
* @param {Object} cfg (Optional) The configuration options to use for this computation.
*
* @return {WordArray} The derived key.
*
* @static
*
* @example
*
* var key = CryptoJS.EvpKDF(password, salt);
* var key = CryptoJS.EvpKDF(password, salt, { keySize: 8 });
* var key = CryptoJS.EvpKDF(password, salt, { keySize: 8, iterations: 1000 });
*/
C.EvpKDF = function (password, salt, cfg) {
return EvpKDF.create(cfg).compute(password, salt);
};
}());
/**
* Cipher core components.
*/
CryptoJS.lib.Cipher || (function (undefined) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var Base = C_lib.Base;
var WordArray = C_lib.WordArray;
var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm;
var C_enc = C.enc;
var Utf8 = C_enc.Utf8;
var Base64 = C_enc.Base64;
var C_algo = C.algo;
var EvpKDF = C_algo.EvpKDF;
/**
* Abstract base cipher template.
*
* @property {number} keySize This cipher's key size. Default: 4 (128 bits)
* @property {number} ivSize This cipher's IV size. Default: 4 (128 bits)
* @property {number} _ENC_XFORM_MODE A constant representing encryption mode.
* @property {number} _DEC_XFORM_MODE A constant representing decryption mode.
*/
var Cipher = C_lib.Cipher = BufferedBlockAlgorithm.extend({
/**
* Configuration options.
*
* @property {WordArray} iv The IV to use for this operation.
*/
cfg: Base.extend(),
/**
* Creates this cipher in encryption mode.
*
* @param {WordArray} key The key.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {Cipher} A cipher instance.
*
* @static
*
* @example
*
* var cipher = CryptoJS.algo.AES.createEncryptor(keyWordArray, { iv: ivWordArray });
*/
createEncryptor: function (key, cfg) {
return this.create(this._ENC_XFORM_MODE, key, cfg);
},
/**
* Creates this cipher in decryption mode.
*
* @param {WordArray} key The key.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {Cipher} A cipher instance.
*
* @static
*
* @example
*
* var cipher = CryptoJS.algo.AES.createDecryptor(keyWordArray, { iv: ivWordArray });
*/
createDecryptor: function (key, cfg) {
return this.create(this._DEC_XFORM_MODE, key, cfg);
},
/**
* Initializes a newly created cipher.
*
* @param {number} xformMode Either the encryption or decryption transormation mode constant.
* @param {WordArray} key The key.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @example
*
* var cipher = CryptoJS.algo.AES.create(CryptoJS.algo.AES._ENC_XFORM_MODE, keyWordArray, { iv: ivWordArray });
*/
init: function (xformMode, key, cfg) {
// Apply config defaults
this.cfg = this.cfg.extend(cfg);
// Store transform mode and key
this._xformMode = xformMode;
this._key = key;
// Set initial values
this.reset();
},
/**
* Resets this cipher to its initial state.
*
* @example
*
* cipher.reset();
*/
reset: function () {
// Reset data buffer
BufferedBlockAlgorithm.reset.call(this);
// Perform concrete-cipher logic
this._doReset();
},
/**
* Adds data to be encrypted or decrypted.
*
* @param {WordArray|string} dataUpdate The data to encrypt or decrypt.
*
* @return {WordArray} The data after processing.
*
* @example
*
* var encrypted = cipher.process('data');
* var encrypted = cipher.process(wordArray);
*/
process: function (dataUpdate) {
// Append
this._append(dataUpdate);
// Process available blocks
return this._process();
},
/**
* Finalizes the encryption or decryption process.
* Note that the finalize operation is effectively a destructive, read-once operation.
*
* @param {WordArray|string} dataUpdate The final data to encrypt or decrypt.
*
* @return {WordArray} The data after final processing.
*
* @example
*
* var encrypted = cipher.finalize();
* var encrypted = cipher.finalize('data');
* var encrypted = cipher.finalize(wordArray);
*/
finalize: function (dataUpdate) {
// Final data update
if (dataUpdate) {
this._append(dataUpdate);
}
// Perform concrete-cipher logic
var finalProcessedData = this._doFinalize();
return finalProcessedData;
},
keySize: 128/32,
ivSize: 128/32,
_ENC_XFORM_MODE: 1,
_DEC_XFORM_MODE: 2,
/**
* Creates shortcut functions to a cipher's object interface.
*
* @param {Cipher} cipher The cipher to create a helper for.
*
* @return {Object} An object with encrypt and decrypt shortcut functions.
*
* @static
*
* @example
*
* var AES = CryptoJS.lib.Cipher._createHelper(CryptoJS.algo.AES);
*/
_createHelper: (function () {
function selectCipherStrategy(key) {
if (typeof key == 'string') {
return PasswordBasedCipher;
} else {
return SerializableCipher;
}
}
return function (cipher) {
return {
encrypt: function (message, key, cfg) {
return selectCipherStrategy(key).encrypt(cipher, message, key, cfg);
},
decrypt: function (ciphertext, key, cfg) {
return selectCipherStrategy(key).decrypt(cipher, ciphertext, key, cfg);
}
};
};
}())
});
/**
* Abstract base stream cipher template.
*
* @property {number} blockSize The number of 32-bit words this cipher operates on. Default: 1 (32 bits)
*/
var StreamCipher = C_lib.StreamCipher = Cipher.extend({
_doFinalize: function () {
// Process partial blocks
var finalProcessedBlocks = this._process(!!'flush');
return finalProcessedBlocks;
},
blockSize: 1
});
/**
* Mode namespace.
*/
var C_mode = C.mode = {};
/**
* Abstract base block cipher mode template.
*/
var BlockCipherMode = C_lib.BlockCipherMode = Base.extend({
/**
* Creates this mode for encryption.
*
* @param {Cipher} cipher A block cipher instance.
* @param {Array} iv The IV words.
*
* @static
*
* @example
*
* var mode = CryptoJS.mode.CBC.createEncryptor(cipher, iv.words);
*/
createEncryptor: function (cipher, iv) {
return this.Encryptor.create(cipher, iv);
},
/**
* Creates this mode for decryption.
*
* @param {Cipher} cipher A block cipher instance.
* @param {Array} iv The IV words.
*
* @static
*
* @example
*
* var mode = CryptoJS.mode.CBC.createDecryptor(cipher, iv.words);
*/
createDecryptor: function (cipher, iv) {
return this.Decryptor.create(cipher, iv);
},
/**
* Initializes a newly created mode.
*
* @param {Cipher} cipher A block cipher instance.
* @param {Array} iv The IV words.
*
* @example
*
* var mode = CryptoJS.mode.CBC.Encryptor.create(cipher, iv.words);
*/
init: function (cipher, iv) {
this._cipher = cipher;
this._iv = iv;
}
});
/**
* Cipher Block Chaining mode.
*/
var CBC = C_mode.CBC = (function () {
/**
* Abstract base CBC mode.
*/
var CBC = BlockCipherMode.extend();
/**
* CBC encryptor.
*/
CBC.Encryptor = CBC.extend({
/**
* Processes the data block at offset.
*
* @param {Array} words The data words to operate on.
* @param {number} offset The offset where the block starts.
*
* @example
*
* mode.processBlock(data.words, offset);
*/
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
// XOR and encrypt
xorBlock.call(this, words, offset, blockSize);
cipher.encryptBlock(words, offset);
// Remember this block to use with next block
this._prevBlock = words.slice(offset, offset + blockSize);
}
});
/**
* CBC decryptor.
*/
CBC.Decryptor = CBC.extend({
/**
* Processes the data block at offset.
*
* @param {Array} words The data words to operate on.
* @param {number} offset The offset where the block starts.
*
* @example
*
* mode.processBlock(data.words, offset);
*/
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
// Remember this block to use with next block
var thisBlock = words.slice(offset, offset + blockSize);
// Decrypt and XOR
cipher.decryptBlock(words, offset);
xorBlock.call(this, words, offset, blockSize);
// This block becomes the previous block
this._prevBlock = thisBlock;
}
});
function xorBlock(words, offset, blockSize) {
var block;
// Shortcut
var iv = this._iv;
// Choose mixing block
if (iv) {
block = iv;
// Remove IV for subsequent blocks
this._iv = undefined;
} else {
block = this._prevBlock;
}
// XOR blocks
for (var i = 0; i < blockSize; i++) {
words[offset + i] ^= block[i];
}
}
return CBC;
}());
/**
* Padding namespace.
*/
var C_pad = C.pad = {};
/**
* PKCS #5/7 padding strategy.
*/
var Pkcs7 = C_pad.Pkcs7 = {
/**
* Pads data using the algorithm defined in PKCS #5/7.
*
* @param {WordArray} data The data to pad.
* @param {number} blockSize The multiple that the data should be padded to.
*
* @static
*
* @example
*
* CryptoJS.pad.Pkcs7.pad(wordArray, 4);
*/
pad: function (data, blockSize) {
// Shortcut
var blockSizeBytes = blockSize * 4;
// Count padding bytes
var nPaddingBytes = blockSizeBytes - data.sigBytes % blockSizeBytes;
// Create padding word
var paddingWord = (nPaddingBytes << 24) | (nPaddingBytes << 16) | (nPaddingBytes << 8) | nPaddingBytes;
// Create padding
var paddingWords = [];
for (var i = 0; i < nPaddingBytes; i += 4) {
paddingWords.push(paddingWord);
}
var padding = WordArray.create(paddingWords, nPaddingBytes);
// Add padding
data.concat(padding);
},
/**
* Unpads data that had been padded using the algorithm defined in PKCS #5/7.
*
* @param {WordArray} data The data to unpad.
*
* @static
*
* @example
*
* CryptoJS.pad.Pkcs7.unpad(wordArray);
*/
unpad: function (data) {
// Get number of padding bytes from last byte
var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff;
// Remove padding
data.sigBytes -= nPaddingBytes;
}
};
/**
* Abstract base block cipher template.
*
* @property {number} blockSize The number of 32-bit words this cipher operates on. Default: 4 (128 bits)
*/
var BlockCipher = C_lib.BlockCipher = Cipher.extend({
/**
* Configuration options.
*
* @property {Mode} mode The block mode to use. Default: CBC
* @property {Padding} padding The padding strategy to use. Default: Pkcs7
*/
cfg: Cipher.cfg.extend({
mode: CBC,
padding: Pkcs7
}),
reset: function () {
var modeCreator;
// Reset cipher
Cipher.reset.call(this);
// Shortcuts
var cfg = this.cfg;
var iv = cfg.iv;
var mode = cfg.mode;
// Reset block mode
if (this._xformMode == this._ENC_XFORM_MODE) {
modeCreator = mode.createEncryptor;
} else /* if (this._xformMode == this._DEC_XFORM_MODE) */ {
modeCreator = mode.createDecryptor;
// Keep at least one block in the buffer for unpadding
this._minBufferSize = 1;
}
if (this._mode && this._mode.__creator == modeCreator) {
this._mode.init(this, iv && iv.words);
} else {
this._mode = modeCreator.call(mode, this, iv && iv.words);
this._mode.__creator = modeCreator;
}
},
_doProcessBlock: function (words, offset) {
this._mode.processBlock(words, offset);
},
_doFinalize: function () {
var finalProcessedBlocks;
// Shortcut
var padding = this.cfg.padding;
// Finalize
if (this._xformMode == this._ENC_XFORM_MODE) {
// Pad data
padding.pad(this._data, this.blockSize);
// Process final blocks
finalProcessedBlocks = this._process(!!'flush');
} else /* if (this._xformMode == this._DEC_XFORM_MODE) */ {
// Process final blocks
finalProcessedBlocks = this._process(!!'flush');
// Unpad data
padding.unpad(finalProcessedBlocks);
}
return finalProcessedBlocks;
},
blockSize: 128/32
});
/**
* A collection of cipher parameters.
*
* @property {WordArray} ciphertext The raw ciphertext.
* @property {WordArray} key The key to this ciphertext.
* @property {WordArray} iv The IV used in the ciphering operation.
* @property {WordArray} salt The salt used with a key derivation function.
* @property {Cipher} algorithm The cipher algorithm.
* @property {Mode} mode The block mode used in the ciphering operation.
* @property {Padding} padding The padding scheme used in the ciphering operation.
* @property {number} blockSize The block size of the cipher.
* @property {Format} formatter The default formatting strategy to convert this cipher params object to a string.
*/
var CipherParams = C_lib.CipherParams = Base.extend({
/**
* Initializes a newly created cipher params object.
*
* @param {Object} cipherParams An object with any of the possible cipher parameters.
*
* @example
*
* var cipherParams = CryptoJS.lib.CipherParams.create({
* ciphertext: ciphertextWordArray,
* key: keyWordArray,
* iv: ivWordArray,
* salt: saltWordArray,
* algorithm: CryptoJS.algo.AES,
* mode: CryptoJS.mode.CBC,
* padding: CryptoJS.pad.PKCS7,
* blockSize: 4,
* formatter: CryptoJS.format.OpenSSL
* });
*/
init: function (cipherParams) {
this.mixIn(cipherParams);
},
/**
* Converts this cipher params object to a string.
*
* @param {Format} formatter (Optional) The formatting strategy to use.
*
* @return {string} The stringified cipher params.
*
* @throws Error If neither the formatter nor the default formatter is set.
*
* @example
*
* var string = cipherParams + '';
* var string = cipherParams.toString();
* var string = cipherParams.toString(CryptoJS.format.OpenSSL);
*/
toString: function (formatter) {
return (formatter || this.formatter).stringify(this);
}
});
/**
* Format namespace.
*/
var C_format = C.format = {};
/**
* OpenSSL formatting strategy.
*/
var OpenSSLFormatter = C_format.OpenSSL = {
/**
* Converts a cipher params object to an OpenSSL-compatible string.
*
* @param {CipherParams} cipherParams The cipher params object.
*
* @return {string} The OpenSSL-compatible string.
*
* @static
*
* @example
*
* var openSSLString = CryptoJS.format.OpenSSL.stringify(cipherParams);
*/
stringify: function (cipherParams) {
var wordArray;
// Shortcuts
var ciphertext = cipherParams.ciphertext;
var salt = cipherParams.salt;
// Format
if (salt) {
wordArray = WordArray.create([0x53616c74, 0x65645f5f]).concat(salt).concat(ciphertext);
} else {
wordArray = ciphertext;
}
return wordArray.toString(Base64);
},
/**
* Converts an OpenSSL-compatible string to a cipher params object.
*
* @param {string} openSSLStr The OpenSSL-compatible string.
*
* @return {CipherParams} The cipher params object.
*
* @static
*
* @example
*
* var cipherParams = CryptoJS.format.OpenSSL.parse(openSSLString);
*/
parse: function (openSSLStr) {
var salt;
// Parse base64
var ciphertext = Base64.parse(openSSLStr);
// Shortcut
var ciphertextWords = ciphertext.words;
// Test for salt
if (ciphertextWords[0] == 0x53616c74 && ciphertextWords[1] == 0x65645f5f) {
// Extract salt
salt = WordArray.create(ciphertextWords.slice(2, 4));
// Remove salt from ciphertext
ciphertextWords.splice(0, 4);
ciphertext.sigBytes -= 16;
}
return CipherParams.create({ ciphertext: ciphertext, salt: salt });
}
};
/**
* A cipher wrapper that returns ciphertext as a serializable cipher params object.
*/
var SerializableCipher = C_lib.SerializableCipher = Base.extend({
/**
* Configuration options.
*
* @property {Formatter} format The formatting strategy to convert cipher param objects to and from a string. Default: OpenSSL
*/
cfg: Base.extend({
format: OpenSSLFormatter
}),
/**
* Encrypts a message.
*
* @param {Cipher} cipher The cipher algorithm to use.
* @param {WordArray|string} message The message to encrypt.
* @param {WordArray} key The key.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {CipherParams} A cipher params object.
*
* @static
*
* @example
*
* var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key);
* var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key, { iv: iv });
* var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key, { iv: iv, format: CryptoJS.format.OpenSSL });
*/
encrypt: function (cipher, message, key, cfg) {
// Apply config defaults
cfg = this.cfg.extend(cfg);
// Encrypt
var encryptor = cipher.createEncryptor(key, cfg);
var ciphertext = encryptor.finalize(message);
// Shortcut
var cipherCfg = encryptor.cfg;
// Create and return serializable cipher params
return CipherParams.create({
ciphertext: ciphertext,
key: key,
iv: cipherCfg.iv,
algorithm: cipher,
mode: cipherCfg.mode,
padding: cipherCfg.padding,
blockSize: cipher.blockSize,
formatter: cfg.format
});
},
/**
* Decrypts serialized ciphertext.
*
* @param {Cipher} cipher The cipher algorithm to use.
* @param {CipherParams|string} ciphertext The ciphertext to decrypt.
* @param {WordArray} key The key.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {WordArray} The plaintext.
*
* @static
*
* @example
*
* var plaintext = CryptoJS.lib.SerializableCipher.decrypt(CryptoJS.algo.AES, formattedCiphertext, key, { iv: iv, format: CryptoJS.format.OpenSSL });
* var plaintext = CryptoJS.lib.SerializableCipher.decrypt(CryptoJS.algo.AES, ciphertextParams, key, { iv: iv, format: CryptoJS.format.OpenSSL });
*/
decrypt: function (cipher, ciphertext, key, cfg) {
// Apply config defaults
cfg = this.cfg.extend(cfg);
// Convert string to CipherParams
ciphertext = this._parse(ciphertext, cfg.format);
// Decrypt
var plaintext = cipher.createDecryptor(key, cfg).finalize(ciphertext.ciphertext);
return plaintext;
},
/**
* Converts serialized ciphertext to CipherParams,
* else assumed CipherParams already and returns ciphertext unchanged.
*
* @param {CipherParams|string} ciphertext The ciphertext.
* @param {Formatter} format The formatting strategy to use to parse serialized ciphertext.
*
* @return {CipherParams} The unserialized ciphertext.
*
* @static
*
* @example
*
* var ciphertextParams = CryptoJS.lib.SerializableCipher._parse(ciphertextStringOrParams, format);
*/
_parse: function (ciphertext, format) {
if (typeof ciphertext == 'string') {
return format.parse(ciphertext, this);
} else {
return ciphertext;
}
}
});
/**
* Key derivation function namespace.
*/
var C_kdf = C.kdf = {};
/**
* OpenSSL key derivation function.
*/
var OpenSSLKdf = C_kdf.OpenSSL = {
/**
* Derives a key and IV from a password.
*
* @param {string} password The password to derive from.
* @param {number} keySize The size in words of the key to generate.
* @param {number} ivSize The size in words of the IV to generate.
* @param {WordArray|string} salt (Optional) A 64-bit salt to use. If omitted, a salt will be generated randomly.
*
* @return {CipherParams} A cipher params object with the key, IV, and salt.
*
* @static
*
* @example
*
* var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32);
* var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32, 'saltsalt');
*/
execute: function (password, keySize, ivSize, salt) {
// Generate random salt
if (!salt) {
salt = WordArray.random(64/8);
}
// Derive key and IV
var key = EvpKDF.create({ keySize: keySize + ivSize }).compute(password, salt);
// Separate key and IV
var iv = WordArray.create(key.words.slice(keySize), ivSize * 4);
key.sigBytes = keySize * 4;
// Return params
return CipherParams.create({ key: key, iv: iv, salt: salt });
}
};
/**
* A serializable cipher wrapper that derives the key from a password,
* and returns ciphertext as a serializable cipher params object.
*/
var PasswordBasedCipher = C_lib.PasswordBasedCipher = SerializableCipher.extend({
/**
* Configuration options.
*
* @property {KDF} kdf The key derivation function to use to generate a key and IV from a password. Default: OpenSSL
*/
cfg: SerializableCipher.cfg.extend({
kdf: OpenSSLKdf
}),
/**
* Encrypts a message using a password.
*
* @param {Cipher} cipher The cipher algorithm to use.
* @param {WordArray|string} message The message to encrypt.
* @param {string} password The password.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {CipherParams} A cipher params object.
*
* @static
*
* @example
*
* var ciphertextParams = CryptoJS.lib.PasswordBasedCipher.encrypt(CryptoJS.algo.AES, message, 'password');
* var ciphertextParams = CryptoJS.lib.PasswordBasedCipher.encrypt(CryptoJS.algo.AES, message, 'password', { format: CryptoJS.format.OpenSSL });
*/
encrypt: function (cipher, message, password, cfg) {
// Apply config defaults
cfg = this.cfg.extend(cfg);
// Derive key and other params
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize);
// Add IV to config
cfg.iv = derivedParams.iv;
// Encrypt
var ciphertext = SerializableCipher.encrypt.call(this, cipher, message, derivedParams.key, cfg);
// Mix in derived params
ciphertext.mixIn(derivedParams);
return ciphertext;
},
/**
* Decrypts serialized ciphertext using a password.
*
* @param {Cipher} cipher The cipher algorithm to use.
* @param {CipherParams|string} ciphertext The ciphertext to decrypt.
* @param {string} password The password.
* @param {Object} cfg (Optional) The configuration options to use for this operation.
*
* @return {WordArray} The plaintext.
*
* @static
*
* @example
*
* var plaintext = CryptoJS.lib.PasswordBasedCipher.decrypt(CryptoJS.algo.AES, formattedCiphertext, 'password', { format: CryptoJS.format.OpenSSL });
* var plaintext = CryptoJS.lib.PasswordBasedCipher.decrypt(CryptoJS.algo.AES, ciphertextParams, 'password', { format: CryptoJS.format.OpenSSL });
*/
decrypt: function (cipher, ciphertext, password, cfg) {
// Apply config defaults
cfg = this.cfg.extend(cfg);
// Convert string to CipherParams
ciphertext = this._parse(ciphertext, cfg.format);
// Derive key and other params
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize, ciphertext.salt);
// Add IV to config
cfg.iv = derivedParams.iv;
// Decrypt
var plaintext = SerializableCipher.decrypt.call(this, cipher, ciphertext, derivedParams.key, cfg);
return plaintext;
}
});
}());
/**
* Cipher Feedback block mode.
*/
CryptoJS.mode.CFB = (function () {
var CFB = CryptoJS.lib.BlockCipherMode.extend();
CFB.Encryptor = CFB.extend({
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cipher);
// Remember this block to use with next block
this._prevBlock = words.slice(offset, offset + blockSize);
}
});
CFB.Decryptor = CFB.extend({
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher;
var blockSize = cipher.blockSize;
// Remember this block to use with next block
var thisBlock = words.slice(offset, offset + blockSize);
generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cipher);
// This block becomes the previous block
this._prevBlock = thisBlock;
}
});
function generateKeystreamAndEncrypt(words, offset, blockSize, cipher) {
var keystream;
// Shortcut
var iv = this._iv;
// Generate keystream
if (iv) {
keystream = iv.slice(0);
// Remove IV for subsequent blocks
this._iv = undefined;
} else {
keystream = this._prevBlock;
}
cipher.encryptBlock(keystream, 0);
// Encrypt
for (var i = 0; i < blockSize; i++) {
words[offset + i] ^= keystream[i];
}
}
return CFB;
}());
/**
* Counter block mode.
*/
CryptoJS.mode.CTR = (function () {
var CTR = CryptoJS.lib.BlockCipherMode.extend();
var Encryptor = CTR.Encryptor = CTR.extend({
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher
var blockSize = cipher.blockSize;
var iv = this._iv;
var counter = this._counter;
// Generate keystream
if (iv) {
counter = this._counter = iv.slice(0);
// Remove IV for subsequent blocks
this._iv = undefined;
}
var keystream = counter.slice(0);
cipher.encryptBlock(keystream, 0);
// Increment counter
counter[blockSize - 1] = (counter[blockSize - 1] + 1) | 0
// Encrypt
for (var i = 0; i < blockSize; i++) {
words[offset + i] ^= keystream[i];
}
}
});
CTR.Decryptor = Encryptor;
return CTR;
}());
/** @preserve
* Counter block mode compatible with Dr Brian Gladman fileenc.c
* derived from CryptoJS.mode.CTR
* Jan Hruby jhruby.web@gmail.com
*/
CryptoJS.mode.CTRGladman = (function () {
var CTRGladman = CryptoJS.lib.BlockCipherMode.extend();
function incWord(word)
{
if (((word >> 24) & 0xff) === 0xff) { //overflow
var b1 = (word >> 16)&0xff;
var b2 = (word >> 8)&0xff;
var b3 = word & 0xff;
if (b1 === 0xff) // overflow b1
{
b1 = 0;
if (b2 === 0xff)
{
b2 = 0;
if (b3 === 0xff)
{
b3 = 0;
}
else
{
++b3;
}
}
else
{
++b2;
}
}
else
{
++b1;
}
word = 0;
word += (b1 << 16);
word += (b2 << 8);
word += b3;
}
else
{
word += (0x01 << 24);
}
return word;
}
function incCounter(counter)
{
if ((counter[0] = incWord(counter[0])) === 0)
{
// encr_data in fileenc.c from Dr Brian Gladman's counts only with DWORD j < 8
counter[1] = incWord(counter[1]);
}
return counter;
}
var Encryptor = CTRGladman.Encryptor = CTRGladman.extend({
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher
var blockSize = cipher.blockSize;
var iv = this._iv;
var counter = this._counter;
// Generate keystream
if (iv) {
counter = this._counter = iv.slice(0);
// Remove IV for subsequent blocks
this._iv = undefined;
}
incCounter(counter);
var keystream = counter.slice(0);
cipher.encryptBlock(keystream, 0);
// Encrypt
for (var i = 0; i < blockSize; i++) {
words[offset + i] ^= keystream[i];
}
}
});
CTRGladman.Decryptor = Encryptor;
return CTRGladman;
}());
/**
* Output Feedback block mode.
*/
CryptoJS.mode.OFB = (function () {
var OFB = CryptoJS.lib.BlockCipherMode.extend();
var Encryptor = OFB.Encryptor = OFB.extend({
processBlock: function (words, offset) {
// Shortcuts
var cipher = this._cipher
var blockSize = cipher.blockSize;
var iv = this._iv;
var keystream = this._keystream;
// Generate keystream
if (iv) {
keystream = this._keystream = iv.slice(0);
// Remove IV for subsequent blocks
this._iv = undefined;
}
cipher.encryptBlock(keystream, 0);
// Encrypt
for (var i = 0; i < blockSize; i++) {
words[offset + i] ^= keystream[i];
}
}
});
OFB.Decryptor = Encryptor;
return OFB;
}());
/**
* Electronic Codebook block mode.
*/
CryptoJS.mode.ECB = (function () {
var ECB = CryptoJS.lib.BlockCipherMode.extend();
ECB.Encryptor = ECB.extend({
processBlock: function (words, offset) {
this._cipher.encryptBlock(words, offset);
}
});
ECB.Decryptor = ECB.extend({
processBlock: function (words, offset) {
this._cipher.decryptBlock(words, offset);
}
});
return ECB;
}());
/**
* ANSI X.923 padding strategy.
*/
CryptoJS.pad.AnsiX923 = {
pad: function (data, blockSize) {
// Shortcuts
var dataSigBytes = data.sigBytes;
var blockSizeBytes = blockSize * 4;
// Count padding bytes
var nPaddingBytes = blockSizeBytes - dataSigBytes % blockSizeBytes;
// Compute last byte position
var lastBytePos = dataSigBytes + nPaddingBytes - 1;
// Pad
data.clamp();
data.words[lastBytePos >>> 2] |= nPaddingBytes << (24 - (lastBytePos % 4) * 8);
data.sigBytes += nPaddingBytes;
},
unpad: function (data) {
// Get number of padding bytes from last byte
var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff;
// Remove padding
data.sigBytes -= nPaddingBytes;
}
};
/**
* ISO 10126 padding strategy.
*/
CryptoJS.pad.Iso10126 = {
pad: function (data, blockSize) {
// Shortcut
var blockSizeBytes = blockSize * 4;
// Count padding bytes
var nPaddingBytes = blockSizeBytes - data.sigBytes % blockSizeBytes;
// Pad
data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes - 1)).
concat(CryptoJS.lib.WordArray.create([nPaddingBytes << 24], 1));
},
unpad: function (data) {
// Get number of padding bytes from last byte
var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff;
// Remove padding
data.sigBytes -= nPaddingBytes;
}
};
/**
* ISO/IEC 9797-1 Padding Method 2.
*/
CryptoJS.pad.Iso97971 = {
pad: function (data, blockSize) {
// Add 0x80 byte
data.concat(CryptoJS.lib.WordArray.create([0x80000000], 1));
// Zero pad the rest
CryptoJS.pad.ZeroPadding.pad(data, blockSize);
},
unpad: function (data) {
// Remove zero padding
CryptoJS.pad.ZeroPadding.unpad(data);
// Remove one more byte -- the 0x80 byte
data.sigBytes--;
}
};
/**
* Zero padding strategy.
*/
CryptoJS.pad.ZeroPadding = {
pad: function (data, blockSize) {
// Shortcut
var blockSizeBytes = blockSize * 4;
// Pad
data.clamp();
data.sigBytes += blockSizeBytes - ((data.sigBytes % blockSizeBytes) || blockSizeBytes);
},
unpad: function (data) {
// Shortcut
var dataWords = data.words;
// Unpad
var i = data.sigBytes - 1;
for (var i = data.sigBytes - 1; i >= 0; i--) {
if (((dataWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff)) {
data.sigBytes = i + 1;
break;
}
}
}
};
/**
* A noop padding strategy.
*/
CryptoJS.pad.NoPadding = {
pad: function () {
},
unpad: function () {
}
};
(function (undefined) {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var CipherParams = C_lib.CipherParams;
var C_enc = C.enc;
var Hex = C_enc.Hex;
var C_format = C.format;
var HexFormatter = C_format.Hex = {
/**
* Converts the ciphertext of a cipher params object to a hexadecimally encoded string.
*
* @param {CipherParams} cipherParams The cipher params object.
*
* @return {string} The hexadecimally encoded string.
*
* @static
*
* @example
*
* var hexString = CryptoJS.format.Hex.stringify(cipherParams);
*/
stringify: function (cipherParams) {
return cipherParams.ciphertext.toString(Hex);
},
/**
* Converts a hexadecimally encoded ciphertext string to a cipher params object.
*
* @param {string} input The hexadecimally encoded string.
*
* @return {CipherParams} The cipher params object.
*
* @static
*
* @example
*
* var cipherParams = CryptoJS.format.Hex.parse(hexString);
*/
parse: function (input) {
var ciphertext = Hex.parse(input);
return CipherParams.create({ ciphertext: ciphertext });
}
};
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var BlockCipher = C_lib.BlockCipher;
var C_algo = C.algo;
// Lookup tables
var SBOX = [];
var INV_SBOX = [];
var SUB_MIX_0 = [];
var SUB_MIX_1 = [];
var SUB_MIX_2 = [];
var SUB_MIX_3 = [];
var INV_SUB_MIX_0 = [];
var INV_SUB_MIX_1 = [];
var INV_SUB_MIX_2 = [];
var INV_SUB_MIX_3 = [];
// Compute lookup tables
(function () {
// Compute double table
var d = [];
for (var i = 0; i < 256; i++) {
if (i < 128) {
d[i] = i << 1;
} else {
d[i] = (i << 1) ^ 0x11b;
}
}
// Walk GF(2^8)
var x = 0;
var xi = 0;
for (var i = 0; i < 256; i++) {
// Compute sbox
var sx = xi ^ (xi << 1) ^ (xi << 2) ^ (xi << 3) ^ (xi << 4);
sx = (sx >>> 8) ^ (sx & 0xff) ^ 0x63;
SBOX[x] = sx;
INV_SBOX[sx] = x;
// Compute multiplication
var x2 = d[x];
var x4 = d[x2];
var x8 = d[x4];
// Compute sub bytes, mix columns tables
var t = (d[sx] * 0x101) ^ (sx * 0x1010100);
SUB_MIX_0[x] = (t << 24) | (t >>> 8);
SUB_MIX_1[x] = (t << 16) | (t >>> 16);
SUB_MIX_2[x] = (t << 8) | (t >>> 24);
SUB_MIX_3[x] = t;
// Compute inv sub bytes, inv mix columns tables
var t = (x8 * 0x1010101) ^ (x4 * 0x10001) ^ (x2 * 0x101) ^ (x * 0x1010100);
INV_SUB_MIX_0[sx] = (t << 24) | (t >>> 8);
INV_SUB_MIX_1[sx] = (t << 16) | (t >>> 16);
INV_SUB_MIX_2[sx] = (t << 8) | (t >>> 24);
INV_SUB_MIX_3[sx] = t;
// Compute next counter
if (!x) {
x = xi = 1;
} else {
x = x2 ^ d[d[d[x8 ^ x2]]];
xi ^= d[d[xi]];
}
}
}());
// Precomputed Rcon lookup
var RCON = [0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36];
/**
* AES block cipher algorithm.
*/
var AES = C_algo.AES = BlockCipher.extend({
_doReset: function () {
var t;
// Skip reset of nRounds has been set before and key did not change
if (this._nRounds && this._keyPriorReset === this._key) {
return;
}
// Shortcuts
var key = this._keyPriorReset = this._key;
var keyWords = key.words;
var keySize = key.sigBytes / 4;
// Compute number of rounds
var nRounds = this._nRounds = keySize + 6;
// Compute number of key schedule rows
var ksRows = (nRounds + 1) * 4;
// Compute key schedule
var keySchedule = this._keySchedule = [];
for (var ksRow = 0; ksRow < ksRows; ksRow++) {
if (ksRow < keySize) {
keySchedule[ksRow] = keyWords[ksRow];
} else {
t = keySchedule[ksRow - 1];
if (!(ksRow % keySize)) {
// Rot word
t = (t << 8) | (t >>> 24);
// Sub word
t = (SBOX[t >>> 24] << 24) | (SBOX[(t >>> 16) & 0xff] << 16) | (SBOX[(t >>> 8) & 0xff] << 8) | SBOX[t & 0xff];
// Mix Rcon
t ^= RCON[(ksRow / keySize) | 0] << 24;
} else if (keySize > 6 && ksRow % keySize == 4) {
// Sub word
t = (SBOX[t >>> 24] << 24) | (SBOX[(t >>> 16) & 0xff] << 16) | (SBOX[(t >>> 8) & 0xff] << 8) | SBOX[t & 0xff];
}
keySchedule[ksRow] = keySchedule[ksRow - keySize] ^ t;
}
}
// Compute inv key schedule
var invKeySchedule = this._invKeySchedule = [];
for (var invKsRow = 0; invKsRow < ksRows; invKsRow++) {
var ksRow = ksRows - invKsRow;
if (invKsRow % 4) {
var t = keySchedule[ksRow];
} else {
var t = keySchedule[ksRow - 4];
}
if (invKsRow < 4 || ksRow <= 4) {
invKeySchedule[invKsRow] = t;
} else {
invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^
INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]];
}
}
},
encryptBlock: function (M, offset) {
this._doCryptBlock(M, offset, this._keySchedule, SUB_MIX_0, SUB_MIX_1, SUB_MIX_2, SUB_MIX_3, SBOX);
},
decryptBlock: function (M, offset) {
// Swap 2nd and 4th rows
var t = M[offset + 1];
M[offset + 1] = M[offset + 3];
M[offset + 3] = t;
this._doCryptBlock(M, offset, this._invKeySchedule, INV_SUB_MIX_0, INV_SUB_MIX_1, INV_SUB_MIX_2, INV_SUB_MIX_3, INV_SBOX);
// Inv swap 2nd and 4th rows
var t = M[offset + 1];
M[offset + 1] = M[offset + 3];
M[offset + 3] = t;
},
_doCryptBlock: function (M, offset, keySchedule, SUB_MIX_0, SUB_MIX_1, SUB_MIX_2, SUB_MIX_3, SBOX) {
// Shortcut
var nRounds = this._nRounds;
// Get input, add round key
var s0 = M[offset] ^ keySchedule[0];
var s1 = M[offset + 1] ^ keySchedule[1];
var s2 = M[offset + 2] ^ keySchedule[2];
var s3 = M[offset + 3] ^ keySchedule[3];
// Key schedule row counter
var ksRow = 4;
// Rounds
for (var round = 1; round < nRounds; round++) {
// Shift rows, sub bytes, mix columns, add round key
var t0 = SUB_MIX_0[s0 >>> 24] ^ SUB_MIX_1[(s1 >>> 16) & 0xff] ^ SUB_MIX_2[(s2 >>> 8) & 0xff] ^ SUB_MIX_3[s3 & 0xff] ^ keySchedule[ksRow++];
var t1 = SUB_MIX_0[s1 >>> 24] ^ SUB_MIX_1[(s2 >>> 16) & 0xff] ^ SUB_MIX_2[(s3 >>> 8) & 0xff] ^ SUB_MIX_3[s0 & 0xff] ^ keySchedule[ksRow++];
var t2 = SUB_MIX_0[s2 >>> 24] ^ SUB_MIX_1[(s3 >>> 16) & 0xff] ^ SUB_MIX_2[(s0 >>> 8) & 0xff] ^ SUB_MIX_3[s1 & 0xff] ^ keySchedule[ksRow++];
var t3 = SUB_MIX_0[s3 >>> 24] ^ SUB_MIX_1[(s0 >>> 16) & 0xff] ^ SUB_MIX_2[(s1 >>> 8) & 0xff] ^ SUB_MIX_3[s2 & 0xff] ^ keySchedule[ksRow++];
// Update state
s0 = t0;
s1 = t1;
s2 = t2;
s3 = t3;
}
// Shift rows, sub bytes, add round key
var t0 = ((SBOX[s0 >>> 24] << 24) | (SBOX[(s1 >>> 16) & 0xff] << 16) | (SBOX[(s2 >>> 8) & 0xff] << 8) | SBOX[s3 & 0xff]) ^ keySchedule[ksRow++];
var t1 = ((SBOX[s1 >>> 24] << 24) | (SBOX[(s2 >>> 16) & 0xff] << 16) | (SBOX[(s3 >>> 8) & 0xff] << 8) | SBOX[s0 & 0xff]) ^ keySchedule[ksRow++];
var t2 = ((SBOX[s2 >>> 24] << 24) | (SBOX[(s3 >>> 16) & 0xff] << 16) | (SBOX[(s0 >>> 8) & 0xff] << 8) | SBOX[s1 & 0xff]) ^ keySchedule[ksRow++];
var t3 = ((SBOX[s3 >>> 24] << 24) | (SBOX[(s0 >>> 16) & 0xff] << 16) | (SBOX[(s1 >>> 8) & 0xff] << 8) | SBOX[s2 & 0xff]) ^ keySchedule[ksRow++];
// Set output
M[offset] = t0;
M[offset + 1] = t1;
M[offset + 2] = t2;
M[offset + 3] = t3;
},
keySize: 256/32
});
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.AES.encrypt(message, key, cfg);
* var plaintext = CryptoJS.AES.decrypt(ciphertext, key, cfg);
*/
C.AES = BlockCipher._createHelper(AES);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var WordArray = C_lib.WordArray;
var BlockCipher = C_lib.BlockCipher;
var C_algo = C.algo;
// Permuted Choice 1 constants
var PC1 = [
57, 49, 41, 33, 25, 17, 9, 1,
58, 50, 42, 34, 26, 18, 10, 2,
59, 51, 43, 35, 27, 19, 11, 3,
60, 52, 44, 36, 63, 55, 47, 39,
31, 23, 15, 7, 62, 54, 46, 38,
30, 22, 14, 6, 61, 53, 45, 37,
29, 21, 13, 5, 28, 20, 12, 4
];
// Permuted Choice 2 constants
var PC2 = [
14, 17, 11, 24, 1, 5,
3, 28, 15, 6, 21, 10,
23, 19, 12, 4, 26, 8,
16, 7, 27, 20, 13, 2,
41, 52, 31, 37, 47, 55,
30, 40, 51, 45, 33, 48,
44, 49, 39, 56, 34, 53,
46, 42, 50, 36, 29, 32
];
// Cumulative bit shift constants
var BIT_SHIFTS = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28];
// SBOXes and round permutation constants
var SBOX_P = [
{
0x0: 0x808200,
0x10000000: 0x8000,
0x20000000: 0x808002,
0x30000000: 0x2,
0x40000000: 0x200,
0x50000000: 0x808202,
0x60000000: 0x800202,
0x70000000: 0x800000,
0x80000000: 0x202,
0x90000000: 0x800200,
0xa0000000: 0x8200,
0xb0000000: 0x808000,
0xc0000000: 0x8002,
0xd0000000: 0x800002,
0xe0000000: 0x0,
0xf0000000: 0x8202,
0x8000000: 0x0,
0x18000000: 0x808202,
0x28000000: 0x8202,
0x38000000: 0x8000,
0x48000000: 0x808200,
0x58000000: 0x200,
0x68000000: 0x808002,
0x78000000: 0x2,
0x88000000: 0x800200,
0x98000000: 0x8200,
0xa8000000: 0x808000,
0xb8000000: 0x800202,
0xc8000000: 0x800002,
0xd8000000: 0x8002,
0xe8000000: 0x202,
0xf8000000: 0x800000,
0x1: 0x8000,
0x10000001: 0x2,
0x20000001: 0x808200,
0x30000001: 0x800000,
0x40000001: 0x808002,
0x50000001: 0x8200,
0x60000001: 0x200,
0x70000001: 0x800202,
0x80000001: 0x808202,
0x90000001: 0x808000,
0xa0000001: 0x800002,
0xb0000001: 0x8202,
0xc0000001: 0x202,
0xd0000001: 0x800200,
0xe0000001: 0x8002,
0xf0000001: 0x0,
0x8000001: 0x808202,
0x18000001: 0x808000,
0x28000001: 0x800000,
0x38000001: 0x200,
0x48000001: 0x8000,
0x58000001: 0x800002,
0x68000001: 0x2,
0x78000001: 0x8202,
0x88000001: 0x8002,
0x98000001: 0x800202,
0xa8000001: 0x202,
0xb8000001: 0x808200,
0xc8000001: 0x800200,
0xd8000001: 0x0,
0xe8000001: 0x8200,
0xf8000001: 0x808002
},
{
0x0: 0x40084010,
0x1000000: 0x4000,
0x2000000: 0x80000,
0x3000000: 0x40080010,
0x4000000: 0x40000010,
0x5000000: 0x40084000,
0x6000000: 0x40004000,
0x7000000: 0x10,
0x8000000: 0x84000,
0x9000000: 0x40004010,
0xa000000: 0x40000000,
0xb000000: 0x84010,
0xc000000: 0x80010,
0xd000000: 0x0,
0xe000000: 0x4010,
0xf000000: 0x40080000,
0x800000: 0x40004000,
0x1800000: 0x84010,
0x2800000: 0x10,
0x3800000: 0x40004010,
0x4800000: 0x40084010,
0x5800000: 0x40000000,
0x6800000: 0x80000,
0x7800000: 0x40080010,
0x8800000: 0x80010,
0x9800000: 0x0,
0xa800000: 0x4000,
0xb800000: 0x40080000,
0xc800000: 0x40000010,
0xd800000: 0x84000,
0xe800000: 0x40084000,
0xf800000: 0x4010,
0x10000000: 0x0,
0x11000000: 0x40080010,
0x12000000: 0x40004010,
0x13000000: 0x40084000,
0x14000000: 0x40080000,
0x15000000: 0x10,
0x16000000: 0x84010,
0x17000000: 0x4000,
0x18000000: 0x4010,
0x19000000: 0x80000,
0x1a000000: 0x80010,
0x1b000000: 0x40000010,
0x1c000000: 0x84000,
0x1d000000: 0x40004000,
0x1e000000: 0x40000000,
0x1f000000: 0x40084010,
0x10800000: 0x84010,
0x11800000: 0x80000,
0x12800000: 0x40080000,
0x13800000: 0x4000,
0x14800000: 0x40004000,
0x15800000: 0x40084010,
0x16800000: 0x10,
0x17800000: 0x40000000,
0x18800000: 0x40084000,
0x19800000: 0x40000010,
0x1a800000: 0x40004010,
0x1b800000: 0x80010,
0x1c800000: 0x0,
0x1d800000: 0x4010,
0x1e800000: 0x40080010,
0x1f800000: 0x84000
},
{
0x0: 0x104,
0x100000: 0x0,
0x200000: 0x4000100,
0x300000: 0x10104,
0x400000: 0x10004,
0x500000: 0x4000004,
0x600000: 0x4010104,
0x700000: 0x4010000,
0x800000: 0x4000000,
0x900000: 0x4010100,
0xa00000: 0x10100,
0xb00000: 0x4010004,
0xc00000: 0x4000104,
0xd00000: 0x10000,
0xe00000: 0x4,
0xf00000: 0x100,
0x80000: 0x4010100,
0x180000: 0x4010004,
0x280000: 0x0,
0x380000: 0x4000100,
0x480000: 0x4000004,
0x580000: 0x10000,
0x680000: 0x10004,
0x780000: 0x104,
0x880000: 0x4,
0x980000: 0x100,
0xa80000: 0x4010000,
0xb80000: 0x10104,
0xc80000: 0x10100,
0xd80000: 0x4000104,
0xe80000: 0x4010104,
0xf80000: 0x4000000,
0x1000000: 0x4010100,
0x1100000: 0x10004,
0x1200000: 0x10000,
0x1300000: 0x4000100,
0x1400000: 0x100,
0x1500000: 0x4010104,
0x1600000: 0x4000004,
0x1700000: 0x0,
0x1800000: 0x4000104,
0x1900000: 0x4000000,
0x1a00000: 0x4,
0x1b00000: 0x10100,
0x1c00000: 0x4010000,
0x1d00000: 0x104,
0x1e00000: 0x10104,
0x1f00000: 0x4010004,
0x1080000: 0x4000000,
0x1180000: 0x104,
0x1280000: 0x4010100,
0x1380000: 0x0,
0x1480000: 0x10004,
0x1580000: 0x4000100,
0x1680000: 0x100,
0x1780000: 0x4010004,
0x1880000: 0x10000,
0x1980000: 0x4010104,
0x1a80000: 0x10104,
0x1b80000: 0x4000004,
0x1c80000: 0x4000104,
0x1d80000: 0x4010000,
0x1e80000: 0x4,
0x1f80000: 0x10100
},
{
0x0: 0x80401000,
0x10000: 0x80001040,
0x20000: 0x401040,
0x30000: 0x80400000,
0x40000: 0x0,
0x50000: 0x401000,
0x60000: 0x80000040,
0x70000: 0x400040,
0x80000: 0x80000000,
0x90000: 0x400000,
0xa0000: 0x40,
0xb0000: 0x80001000,
0xc0000: 0x80400040,
0xd0000: 0x1040,
0xe0000: 0x1000,
0xf0000: 0x80401040,
0x8000: 0x80001040,
0x18000: 0x40,
0x28000: 0x80400040,
0x38000: 0x80001000,
0x48000: 0x401000,
0x58000: 0x80401040,
0x68000: 0x0,
0x78000: 0x80400000,
0x88000: 0x1000,
0x98000: 0x80401000,
0xa8000: 0x400000,
0xb8000: 0x1040,
0xc8000: 0x80000000,
0xd8000: 0x400040,
0xe8000: 0x401040,
0xf8000: 0x80000040,
0x100000: 0x400040,
0x110000: 0x401000,
0x120000: 0x80000040,
0x130000: 0x0,
0x140000: 0x1040,
0x150000: 0x80400040,
0x160000: 0x80401000,
0x170000: 0x80001040,
0x180000: 0x80401040,
0x190000: 0x80000000,
0x1a0000: 0x80400000,
0x1b0000: 0x401040,
0x1c0000: 0x80001000,
0x1d0000: 0x400000,
0x1e0000: 0x40,
0x1f0000: 0x1000,
0x108000: 0x80400000,
0x118000: 0x80401040,
0x128000: 0x0,
0x138000: 0x401000,
0x148000: 0x400040,
0x158000: 0x80000000,
0x168000: 0x80001040,
0x178000: 0x40,
0x188000: 0x80000040,
0x198000: 0x1000,
0x1a8000: 0x80001000,
0x1b8000: 0x80400040,
0x1c8000: 0x1040,
0x1d8000: 0x80401000,
0x1e8000: 0x400000,
0x1f8000: 0x401040
},
{
0x0: 0x80,
0x1000: 0x1040000,
0x2000: 0x40000,
0x3000: 0x20000000,
0x4000: 0x20040080,
0x5000: 0x1000080,
0x6000: 0x21000080,
0x7000: 0x40080,
0x8000: 0x1000000,
0x9000: 0x20040000,
0xa000: 0x20000080,
0xb000: 0x21040080,
0xc000: 0x21040000,
0xd000: 0x0,
0xe000: 0x1040080,
0xf000: 0x21000000,
0x800: 0x1040080,
0x1800: 0x21000080,
0x2800: 0x80,
0x3800: 0x1040000,
0x4800: 0x40000,
0x5800: 0x20040080,
0x6800: 0x21040000,
0x7800: 0x20000000,
0x8800: 0x20040000,
0x9800: 0x0,
0xa800: 0x21040080,
0xb800: 0x1000080,
0xc800: 0x20000080,
0xd800: 0x21000000,
0xe800: 0x1000000,
0xf800: 0x40080,
0x10000: 0x40000,
0x11000: 0x80,
0x12000: 0x20000000,
0x13000: 0x21000080,
0x14000: 0x1000080,
0x15000: 0x21040000,
0x16000: 0x20040080,
0x17000: 0x1000000,
0x18000: 0x21040080,
0x19000: 0x21000000,
0x1a000: 0x1040000,
0x1b000: 0x20040000,
0x1c000: 0x40080,
0x1d000: 0x20000080,
0x1e000: 0x0,
0x1f000: 0x1040080,
0x10800: 0x21000080,
0x11800: 0x1000000,
0x12800: 0x1040000,
0x13800: 0x20040080,
0x14800: 0x20000000,
0x15800: 0x1040080,
0x16800: 0x80,
0x17800: 0x21040000,
0x18800: 0x40080,
0x19800: 0x21040080,
0x1a800: 0x0,
0x1b800: 0x21000000,
0x1c800: 0x1000080,
0x1d800: 0x40000,
0x1e800: 0x20040000,
0x1f800: 0x20000080
},
{
0x0: 0x10000008,
0x100: 0x2000,
0x200: 0x10200000,
0x300: 0x10202008,
0x400: 0x10002000,
0x500: 0x200000,
0x600: 0x200008,
0x700: 0x10000000,
0x800: 0x0,
0x900: 0x10002008,
0xa00: 0x202000,
0xb00: 0x8,
0xc00: 0x10200008,
0xd00: 0x202008,
0xe00: 0x2008,
0xf00: 0x10202000,
0x80: 0x10200000,
0x180: 0x10202008,
0x280: 0x8,
0x380: 0x200000,
0x480: 0x202008,
0x580: 0x10000008,
0x680: 0x10002000,
0x780: 0x2008,
0x880: 0x200008,
0x980: 0x2000,
0xa80: 0x10002008,
0xb80: 0x10200008,
0xc80: 0x0,
0xd80: 0x10202000,
0xe80: 0x202000,
0xf80: 0x10000000,
0x1000: 0x10002000,
0x1100: 0x10200008,
0x1200: 0x10202008,
0x1300: 0x2008,
0x1400: 0x200000,
0x1500: 0x10000000,
0x1600: 0x10000008,
0x1700: 0x202000,
0x1800: 0x202008,
0x1900: 0x0,
0x1a00: 0x8,
0x1b00: 0x10200000,
0x1c00: 0x2000,
0x1d00: 0x10002008,
0x1e00: 0x10202000,
0x1f00: 0x200008,
0x1080: 0x8,
0x1180: 0x202000,
0x1280: 0x200000,
0x1380: 0x10000008,
0x1480: 0x10002000,
0x1580: 0x2008,
0x1680: 0x10202008,
0x1780: 0x10200000,
0x1880: 0x10202000,
0x1980: 0x10200008,
0x1a80: 0x2000,
0x1b80: 0x202008,
0x1c80: 0x200008,
0x1d80: 0x0,
0x1e80: 0x10000000,
0x1f80: 0x10002008
},
{
0x0: 0x100000,
0x10: 0x2000401,
0x20: 0x400,
0x30: 0x100401,
0x40: 0x2100401,
0x50: 0x0,
0x60: 0x1,
0x70: 0x2100001,
0x80: 0x2000400,
0x90: 0x100001,
0xa0: 0x2000001,
0xb0: 0x2100400,
0xc0: 0x2100000,
0xd0: 0x401,
0xe0: 0x100400,
0xf0: 0x2000000,
0x8: 0x2100001,
0x18: 0x0,
0x28: 0x2000401,
0x38: 0x2100400,
0x48: 0x100000,
0x58: 0x2000001,
0x68: 0x2000000,
0x78: 0x401,
0x88: 0x100401,
0x98: 0x2000400,
0xa8: 0x2100000,
0xb8: 0x100001,
0xc8: 0x400,
0xd8: 0x2100401,
0xe8: 0x1,
0xf8: 0x100400,
0x100: 0x2000000,
0x110: 0x100000,
0x120: 0x2000401,
0x130: 0x2100001,
0x140: 0x100001,
0x150: 0x2000400,
0x160: 0x2100400,
0x170: 0x100401,
0x180: 0x401,
0x190: 0x2100401,
0x1a0: 0x100400,
0x1b0: 0x1,
0x1c0: 0x0,
0x1d0: 0x2100000,
0x1e0: 0x2000001,
0x1f0: 0x400,
0x108: 0x100400,
0x118: 0x2000401,
0x128: 0x2100001,
0x138: 0x1,
0x148: 0x2000000,
0x158: 0x100000,
0x168: 0x401,
0x178: 0x2100400,
0x188: 0x2000001,
0x198: 0x2100000,
0x1a8: 0x0,
0x1b8: 0x2100401,
0x1c8: 0x100401,
0x1d8: 0x400,
0x1e8: 0x2000400,
0x1f8: 0x100001
},
{
0x0: 0x8000820,
0x1: 0x20000,
0x2: 0x8000000,
0x3: 0x20,
0x4: 0x20020,
0x5: 0x8020820,
0x6: 0x8020800,
0x7: 0x800,
0x8: 0x8020000,
0x9: 0x8000800,
0xa: 0x20800,
0xb: 0x8020020,
0xc: 0x820,
0xd: 0x0,
0xe: 0x8000020,
0xf: 0x20820,
0x80000000: 0x800,
0x80000001: 0x8020820,
0x80000002: 0x8000820,
0x80000003: 0x8000000,
0x80000004: 0x8020000,
0x80000005: 0x20800,
0x80000006: 0x20820,
0x80000007: 0x20,
0x80000008: 0x8000020,
0x80000009: 0x820,
0x8000000a: 0x20020,
0x8000000b: 0x8020800,
0x8000000c: 0x0,
0x8000000d: 0x8020020,
0x8000000e: 0x8000800,
0x8000000f: 0x20000,
0x10: 0x20820,
0x11: 0x8020800,
0x12: 0x20,
0x13: 0x800,
0x14: 0x8000800,
0x15: 0x8000020,
0x16: 0x8020020,
0x17: 0x20000,
0x18: 0x0,
0x19: 0x20020,
0x1a: 0x8020000,
0x1b: 0x8000820,
0x1c: 0x8020820,
0x1d: 0x20800,
0x1e: 0x820,
0x1f: 0x8000000,
0x80000010: 0x20000,
0x80000011: 0x800,
0x80000012: 0x8020020,
0x80000013: 0x20820,
0x80000014: 0x20,
0x80000015: 0x8020000,
0x80000016: 0x8000000,
0x80000017: 0x8000820,
0x80000018: 0x8020820,
0x80000019: 0x8000020,
0x8000001a: 0x8000800,
0x8000001b: 0x0,
0x8000001c: 0x20800,
0x8000001d: 0x820,
0x8000001e: 0x20020,
0x8000001f: 0x8020800
}
];
// Masks that select the SBOX input
var SBOX_MASK = [
0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000,
0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f
];
/**
* DES block cipher algorithm.
*/
var DES = C_algo.DES = BlockCipher.extend({
_doReset: function () {
// Shortcuts
var key = this._key;
var keyWords = key.words;
// Select 56 bits according to PC1
var keyBits = [];
for (var i = 0; i < 56; i++) {
var keyBitPos = PC1[i] - 1;
keyBits[i] = (keyWords[keyBitPos >>> 5] >>> (31 - keyBitPos % 32)) & 1;
}
// Assemble 16 subkeys
var subKeys = this._subKeys = [];
for (var nSubKey = 0; nSubKey < 16; nSubKey++) {
// Create subkey
var subKey = subKeys[nSubKey] = [];
// Shortcut
var bitShift = BIT_SHIFTS[nSubKey];
// Select 48 bits according to PC2
for (var i = 0; i < 24; i++) {
// Select from the left 28 key bits
subKey[(i / 6) | 0] |= keyBits[((PC2[i] - 1) + bitShift) % 28] << (31 - i % 6);
// Select from the right 28 key bits
subKey[4 + ((i / 6) | 0)] |= keyBits[28 + (((PC2[i + 24] - 1) + bitShift) % 28)] << (31 - i % 6);
}
// Since each subkey is applied to an expanded 32-bit input,
// the subkey can be broken into 8 values scaled to 32-bits,
// which allows the key to be used without expansion
subKey[0] = (subKey[0] << 1) | (subKey[0] >>> 31);
for (var i = 1; i < 7; i++) {
subKey[i] = subKey[i] >>> ((i - 1) * 4 + 3);
}
subKey[7] = (subKey[7] << 5) | (subKey[7] >>> 27);
}
// Compute inverse subkeys
var invSubKeys = this._invSubKeys = [];
for (var i = 0; i < 16; i++) {
invSubKeys[i] = subKeys[15 - i];
}
},
encryptBlock: function (M, offset) {
this._doCryptBlock(M, offset, this._subKeys);
},
decryptBlock: function (M, offset) {
this._doCryptBlock(M, offset, this._invSubKeys);
},
_doCryptBlock: function (M, offset, subKeys) {
// Get input
this._lBlock = M[offset];
this._rBlock = M[offset + 1];
// Initial permutation
exchangeLR.call(this, 4, 0x0f0f0f0f);
exchangeLR.call(this, 16, 0x0000ffff);
exchangeRL.call(this, 2, 0x33333333);
exchangeRL.call(this, 8, 0x00ff00ff);
exchangeLR.call(this, 1, 0x55555555);
// Rounds
for (var round = 0; round < 16; round++) {
// Shortcuts
var subKey = subKeys[round];
var lBlock = this._lBlock;
var rBlock = this._rBlock;
// Feistel function
var f = 0;
for (var i = 0; i < 8; i++) {
f |= SBOX_P[i][((rBlock ^ subKey[i]) & SBOX_MASK[i]) >>> 0];
}
this._lBlock = rBlock;
this._rBlock = lBlock ^ f;
}
// Undo swap from last round
var t = this._lBlock;
this._lBlock = this._rBlock;
this._rBlock = t;
// Final permutation
exchangeLR.call(this, 1, 0x55555555);
exchangeRL.call(this, 8, 0x00ff00ff);
exchangeRL.call(this, 2, 0x33333333);
exchangeLR.call(this, 16, 0x0000ffff);
exchangeLR.call(this, 4, 0x0f0f0f0f);
// Set output
M[offset] = this._lBlock;
M[offset + 1] = this._rBlock;
},
keySize: 64/32,
ivSize: 64/32,
blockSize: 64/32
});
// Swap bits across the left and right words
function exchangeLR(offset, mask) {
var t = ((this._lBlock >>> offset) ^ this._rBlock) & mask;
this._rBlock ^= t;
this._lBlock ^= t << offset;
}
function exchangeRL(offset, mask) {
var t = ((this._rBlock >>> offset) ^ this._lBlock) & mask;
this._lBlock ^= t;
this._rBlock ^= t << offset;
}
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.DES.encrypt(message, key, cfg);
* var plaintext = CryptoJS.DES.decrypt(ciphertext, key, cfg);
*/
C.DES = BlockCipher._createHelper(DES);
/**
* Triple-DES block cipher algorithm.
*/
var TripleDES = C_algo.TripleDES = BlockCipher.extend({
_doReset: function () {
// Shortcuts
var key = this._key;
var keyWords = key.words;
// Make sure the key length is valid (64, 128 or >= 192 bit)
if (keyWords.length !== 2 && keyWords.length !== 4 && keyWords.length < 6) {
throw new Error('Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.');
}
// Extend the key according to the keying options defined in 3DES standard
var key1 = keyWords.slice(0, 2);
var key2 = keyWords.length < 4 ? keyWords.slice(0, 2) : keyWords.slice(2, 4);
var key3 = keyWords.length < 6 ? keyWords.slice(0, 2) : keyWords.slice(4, 6);
// Create DES instances
this._des1 = DES.createEncryptor(WordArray.create(key1));
this._des2 = DES.createEncryptor(WordArray.create(key2));
this._des3 = DES.createEncryptor(WordArray.create(key3));
},
encryptBlock: function (M, offset) {
this._des1.encryptBlock(M, offset);
this._des2.decryptBlock(M, offset);
this._des3.encryptBlock(M, offset);
},
decryptBlock: function (M, offset) {
this._des3.decryptBlock(M, offset);
this._des2.encryptBlock(M, offset);
this._des1.decryptBlock(M, offset);
},
keySize: 192/32,
ivSize: 64/32,
blockSize: 64/32
});
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.TripleDES.encrypt(message, key, cfg);
* var plaintext = CryptoJS.TripleDES.decrypt(ciphertext, key, cfg);
*/
C.TripleDES = BlockCipher._createHelper(TripleDES);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var StreamCipher = C_lib.StreamCipher;
var C_algo = C.algo;
/**
* RC4 stream cipher algorithm.
*/
var RC4 = C_algo.RC4 = StreamCipher.extend({
_doReset: function () {
// Shortcuts
var key = this._key;
var keyWords = key.words;
var keySigBytes = key.sigBytes;
// Init sbox
var S = this._S = [];
for (var i = 0; i < 256; i++) {
S[i] = i;
}
// Key setup
for (var i = 0, j = 0; i < 256; i++) {
var keyByteIndex = i % keySigBytes;
var keyByte = (keyWords[keyByteIndex >>> 2] >>> (24 - (keyByteIndex % 4) * 8)) & 0xff;
j = (j + S[i] + keyByte) % 256;
// Swap
var t = S[i];
S[i] = S[j];
S[j] = t;
}
// Counters
this._i = this._j = 0;
},
_doProcessBlock: function (M, offset) {
M[offset] ^= generateKeystreamWord.call(this);
},
keySize: 256/32,
ivSize: 0
});
function generateKeystreamWord() {
// Shortcuts
var S = this._S;
var i = this._i;
var j = this._j;
// Generate keystream word
var keystreamWord = 0;
for (var n = 0; n < 4; n++) {
i = (i + 1) % 256;
j = (j + S[i]) % 256;
// Swap
var t = S[i];
S[i] = S[j];
S[j] = t;
keystreamWord |= S[(S[i] + S[j]) % 256] << (24 - n * 8);
}
// Update counters
this._i = i;
this._j = j;
return keystreamWord;
}
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.RC4.encrypt(message, key, cfg);
* var plaintext = CryptoJS.RC4.decrypt(ciphertext, key, cfg);
*/
C.RC4 = StreamCipher._createHelper(RC4);
/**
* Modified RC4 stream cipher algorithm.
*/
var RC4Drop = C_algo.RC4Drop = RC4.extend({
/**
* Configuration options.
*
* @property {number} drop The number of keystream words to drop. Default 192
*/
cfg: RC4.cfg.extend({
drop: 192
}),
_doReset: function () {
RC4._doReset.call(this);
// Drop
for (var i = this.cfg.drop; i > 0; i--) {
generateKeystreamWord.call(this);
}
}
});
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.RC4Drop.encrypt(message, key, cfg);
* var plaintext = CryptoJS.RC4Drop.decrypt(ciphertext, key, cfg);
*/
C.RC4Drop = StreamCipher._createHelper(RC4Drop);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var StreamCipher = C_lib.StreamCipher;
var C_algo = C.algo;
// Reusable objects
var S = [];
var C_ = [];
var G = [];
/**
* Rabbit stream cipher algorithm
*/
var Rabbit = C_algo.Rabbit = StreamCipher.extend({
_doReset: function () {
// Shortcuts
var K = this._key.words;
var iv = this.cfg.iv;
// Swap endian
for (var i = 0; i < 4; i++) {
K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) |
(((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00);
}
// Generate initial state values
var X = this._X = [
K[0], (K[3] << 16) | (K[2] >>> 16),
K[1], (K[0] << 16) | (K[3] >>> 16),
K[2], (K[1] << 16) | (K[0] >>> 16),
K[3], (K[2] << 16) | (K[1] >>> 16)
];
// Generate initial counter values
var C = this._C = [
(K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff),
(K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff),
(K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff),
(K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)
];
// Carry bit
this._b = 0;
// Iterate the system four times
for (var i = 0; i < 4; i++) {
nextState.call(this);
}
// Modify the counters
for (var i = 0; i < 8; i++) {
C[i] ^= X[(i + 4) & 7];
}
// IV setup
if (iv) {
// Shortcuts
var IV = iv.words;
var IV_0 = IV[0];
var IV_1 = IV[1];
// Generate four subvectors
var i0 = (((IV_0 << 8) | (IV_0 >>> 24)) & 0x00ff00ff) | (((IV_0 << 24) | (IV_0 >>> 8)) & 0xff00ff00);
var i2 = (((IV_1 << 8) | (IV_1 >>> 24)) & 0x00ff00ff) | (((IV_1 << 24) | (IV_1 >>> 8)) & 0xff00ff00);
var i1 = (i0 >>> 16) | (i2 & 0xffff0000);
var i3 = (i2 << 16) | (i0 & 0x0000ffff);
// Modify counter values
C[0] ^= i0;
C[1] ^= i1;
C[2] ^= i2;
C[3] ^= i3;
C[4] ^= i0;
C[5] ^= i1;
C[6] ^= i2;
C[7] ^= i3;
// Iterate the system four times
for (var i = 0; i < 4; i++) {
nextState.call(this);
}
}
},
_doProcessBlock: function (M, offset) {
// Shortcut
var X = this._X;
// Iterate the system
nextState.call(this);
// Generate four keystream words
S[0] = X[0] ^ (X[5] >>> 16) ^ (X[3] << 16);
S[1] = X[2] ^ (X[7] >>> 16) ^ (X[5] << 16);
S[2] = X[4] ^ (X[1] >>> 16) ^ (X[7] << 16);
S[3] = X[6] ^ (X[3] >>> 16) ^ (X[1] << 16);
for (var i = 0; i < 4; i++) {
// Swap endian
S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) |
(((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00);
// Encrypt
M[offset + i] ^= S[i];
}
},
blockSize: 128/32,
ivSize: 64/32
});
function nextState() {
// Shortcuts
var X = this._X;
var C = this._C;
// Save old counter values
for (var i = 0; i < 8; i++) {
C_[i] = C[i];
}
// Calculate new counter values
C[0] = (C[0] + 0x4d34d34d + this._b) | 0;
C[1] = (C[1] + 0xd34d34d3 + ((C[0] >>> 0) < (C_[0] >>> 0) ? 1 : 0)) | 0;
C[2] = (C[2] + 0x34d34d34 + ((C[1] >>> 0) < (C_[1] >>> 0) ? 1 : 0)) | 0;
C[3] = (C[3] + 0x4d34d34d + ((C[2] >>> 0) < (C_[2] >>> 0) ? 1 : 0)) | 0;
C[4] = (C[4] + 0xd34d34d3 + ((C[3] >>> 0) < (C_[3] >>> 0) ? 1 : 0)) | 0;
C[5] = (C[5] + 0x34d34d34 + ((C[4] >>> 0) < (C_[4] >>> 0) ? 1 : 0)) | 0;
C[6] = (C[6] + 0x4d34d34d + ((C[5] >>> 0) < (C_[5] >>> 0) ? 1 : 0)) | 0;
C[7] = (C[7] + 0xd34d34d3 + ((C[6] >>> 0) < (C_[6] >>> 0) ? 1 : 0)) | 0;
this._b = (C[7] >>> 0) < (C_[7] >>> 0) ? 1 : 0;
// Calculate the g-values
for (var i = 0; i < 8; i++) {
var gx = X[i] + C[i];
// Construct high and low argument for squaring
var ga = gx & 0xffff;
var gb = gx >>> 16;
// Calculate high and low result of squaring
var gh = ((((ga * ga) >>> 17) + ga * gb) >>> 15) + gb * gb;
var gl = (((gx & 0xffff0000) * gx) | 0) + (((gx & 0x0000ffff) * gx) | 0);
// High XOR low
G[i] = gh ^ gl;
}
// Calculate new state values
X[0] = (G[0] + ((G[7] << 16) | (G[7] >>> 16)) + ((G[6] << 16) | (G[6] >>> 16))) | 0;
X[1] = (G[1] + ((G[0] << 8) | (G[0] >>> 24)) + G[7]) | 0;
X[2] = (G[2] + ((G[1] << 16) | (G[1] >>> 16)) + ((G[0] << 16) | (G[0] >>> 16))) | 0;
X[3] = (G[3] + ((G[2] << 8) | (G[2] >>> 24)) + G[1]) | 0;
X[4] = (G[4] + ((G[3] << 16) | (G[3] >>> 16)) + ((G[2] << 16) | (G[2] >>> 16))) | 0;
X[5] = (G[5] + ((G[4] << 8) | (G[4] >>> 24)) + G[3]) | 0;
X[6] = (G[6] + ((G[5] << 16) | (G[5] >>> 16)) + ((G[4] << 16) | (G[4] >>> 16))) | 0;
X[7] = (G[7] + ((G[6] << 8) | (G[6] >>> 24)) + G[5]) | 0;
}
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.Rabbit.encrypt(message, key, cfg);
* var plaintext = CryptoJS.Rabbit.decrypt(ciphertext, key, cfg);
*/
C.Rabbit = StreamCipher._createHelper(Rabbit);
}());
(function () {
// Shortcuts
var C = CryptoJS;
var C_lib = C.lib;
var StreamCipher = C_lib.StreamCipher;
var C_algo = C.algo;
// Reusable objects
var S = [];
var C_ = [];
var G = [];
/**
* Rabbit stream cipher algorithm.
*
* This is a legacy version that neglected to convert the key to little-endian.
* This error doesn't affect the cipher's security,
* but it does affect its compatibility with other implementations.
*/
var RabbitLegacy = C_algo.RabbitLegacy = StreamCipher.extend({
_doReset: function () {
// Shortcuts
var K = this._key.words;
var iv = this.cfg.iv;
// Generate initial state values
var X = this._X = [
K[0], (K[3] << 16) | (K[2] >>> 16),
K[1], (K[0] << 16) | (K[3] >>> 16),
K[2], (K[1] << 16) | (K[0] >>> 16),
K[3], (K[2] << 16) | (K[1] >>> 16)
];
// Generate initial counter values
var C = this._C = [
(K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff),
(K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff),
(K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff),
(K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff)
];
// Carry bit
this._b = 0;
// Iterate the system four times
for (var i = 0; i < 4; i++) {
nextState.call(this);
}
// Modify the counters
for (var i = 0; i < 8; i++) {
C[i] ^= X[(i + 4) & 7];
}
// IV setup
if (iv) {
// Shortcuts
var IV = iv.words;
var IV_0 = IV[0];
var IV_1 = IV[1];
// Generate four subvectors
var i0 = (((IV_0 << 8) | (IV_0 >>> 24)) & 0x00ff00ff) | (((IV_0 << 24) | (IV_0 >>> 8)) & 0xff00ff00);
var i2 = (((IV_1 << 8) | (IV_1 >>> 24)) & 0x00ff00ff) | (((IV_1 << 24) | (IV_1 >>> 8)) & 0xff00ff00);
var i1 = (i0 >>> 16) | (i2 & 0xffff0000);
var i3 = (i2 << 16) | (i0 & 0x0000ffff);
// Modify counter values
C[0] ^= i0;
C[1] ^= i1;
C[2] ^= i2;
C[3] ^= i3;
C[4] ^= i0;
C[5] ^= i1;
C[6] ^= i2;
C[7] ^= i3;
// Iterate the system four times
for (var i = 0; i < 4; i++) {
nextState.call(this);
}
}
},
_doProcessBlock: function (M, offset) {
// Shortcut
var X = this._X;
// Iterate the system
nextState.call(this);
// Generate four keystream words
S[0] = X[0] ^ (X[5] >>> 16) ^ (X[3] << 16);
S[1] = X[2] ^ (X[7] >>> 16) ^ (X[5] << 16);
S[2] = X[4] ^ (X[1] >>> 16) ^ (X[7] << 16);
S[3] = X[6] ^ (X[3] >>> 16) ^ (X[1] << 16);
for (var i = 0; i < 4; i++) {
// Swap endian
S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) |
(((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00);
// Encrypt
M[offset + i] ^= S[i];
}
},
blockSize: 128/32,
ivSize: 64/32
});
function nextState() {
// Shortcuts
var X = this._X;
var C = this._C;
// Save old counter values
for (var i = 0; i < 8; i++) {
C_[i] = C[i];
}
// Calculate new counter values
C[0] = (C[0] + 0x4d34d34d + this._b) | 0;
C[1] = (C[1] + 0xd34d34d3 + ((C[0] >>> 0) < (C_[0] >>> 0) ? 1 : 0)) | 0;
C[2] = (C[2] + 0x34d34d34 + ((C[1] >>> 0) < (C_[1] >>> 0) ? 1 : 0)) | 0;
C[3] = (C[3] + 0x4d34d34d + ((C[2] >>> 0) < (C_[2] >>> 0) ? 1 : 0)) | 0;
C[4] = (C[4] + 0xd34d34d3 + ((C[3] >>> 0) < (C_[3] >>> 0) ? 1 : 0)) | 0;
C[5] = (C[5] + 0x34d34d34 + ((C[4] >>> 0) < (C_[4] >>> 0) ? 1 : 0)) | 0;
C[6] = (C[6] + 0x4d34d34d + ((C[5] >>> 0) < (C_[5] >>> 0) ? 1 : 0)) | 0;
C[7] = (C[7] + 0xd34d34d3 + ((C[6] >>> 0) < (C_[6] >>> 0) ? 1 : 0)) | 0;
this._b = (C[7] >>> 0) < (C_[7] >>> 0) ? 1 : 0;
// Calculate the g-values
for (var i = 0; i < 8; i++) {
var gx = X[i] + C[i];
// Construct high and low argument for squaring
var ga = gx & 0xffff;
var gb = gx >>> 16;
// Calculate high and low result of squaring
var gh = ((((ga * ga) >>> 17) + ga * gb) >>> 15) + gb * gb;
var gl = (((gx & 0xffff0000) * gx) | 0) + (((gx & 0x0000ffff) * gx) | 0);
// High XOR low
G[i] = gh ^ gl;
}
// Calculate new state values
X[0] = (G[0] + ((G[7] << 16) | (G[7] >>> 16)) + ((G[6] << 16) | (G[6] >>> 16))) | 0;
X[1] = (G[1] + ((G[0] << 8) | (G[0] >>> 24)) + G[7]) | 0;
X[2] = (G[2] + ((G[1] << 16) | (G[1] >>> 16)) + ((G[0] << 16) | (G[0] >>> 16))) | 0;
X[3] = (G[3] + ((G[2] << 8) | (G[2] >>> 24)) + G[1]) | 0;
X[4] = (G[4] + ((G[3] << 16) | (G[3] >>> 16)) + ((G[2] << 16) | (G[2] >>> 16))) | 0;
X[5] = (G[5] + ((G[4] << 8) | (G[4] >>> 24)) + G[3]) | 0;
X[6] = (G[6] + ((G[5] << 16) | (G[5] >>> 16)) + ((G[4] << 16) | (G[4] >>> 16))) | 0;
X[7] = (G[7] + ((G[6] << 8) | (G[6] >>> 24)) + G[5]) | 0;
}
/**
* Shortcut functions to the cipher's object interface.
*
* @example
*
* var ciphertext = CryptoJS.RabbitLegacy.encrypt(message, key, cfg);
* var plaintext = CryptoJS.RabbitLegacy.decrypt(ciphertext, key, cfg);
*/
C.RabbitLegacy = StreamCipher._createHelper(RabbitLegacy);
}());
return CryptoJS;
}));

BIN
tvbox/shenxian/lib/dm.jar Normal file

Binary file not shown.

1
tvbox/shenxian/lib/drpy.min.js vendored Normal file
View File

@ -0,0 +1 @@
import cheerio from"cheerio.min.js";import"crypto-js.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.48beta16 20231011";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(){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}}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}}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={encode:function(data,key,option){if(typeof rsaEncrypt==="function"){if(!option||typeof option!=="object"){return rsaEncrypt(data,key)}else{return rsaEncrypt(data,key,option)}}else{return false}},decode:function(data,key,option){if(typeof rsaDecrypt==="function"){if(!option||typeof option!=="object"){return rsaDecrypt(data,key)}else{return rsaDecrypt(data,key,option)}}else{return false}}};function getProxyUrl(){if(typeof getProxy==="function"){return getProxy(true)}else{return"http://127.0.0.1:9978/proxy?do=js"}}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.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(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}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){let p=homeObj.class_parse.split(";");let _ps=parseTags.getParse(p[0]);_pdfa=_ps.pdfa;_pdfh=_ps.pdfh;_pd=_ps.pd;MY_URL=rule.url;if(p.length>=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=url.split("[")[1].split("]")[0]}else if(searchObj.pg>1&&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;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.图片来源&&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("]")){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};

BIN
tvbox/shenxian/lib/fan.txt Normal file

Binary file not shown.

68
tvbox/shenxian/lib/gbk.js Normal file

File diff suppressed because one or more lines are too long

142
tvbox/shenxian/lib/qty.py Normal file
View File

@ -0,0 +1,142 @@
#coding=utf-8
#!/usr/bin/python
import sys
sys.path.append('..')
from base.spider import Spider
import json
import math
import re
class Spider(Spider):
def getName(self):
return "企鹅体育"
def init(self,extend=""):
pass
def isVideoFormat(self,url):
pass
def manualVideoCheck(self):
pass
def homeContent(self,filter):
result = {}
cateManual = {
"全部": "",
"足球": "Football",
"篮球": "Basketball",
"NBA": "NBA",
"台球": "Billiards",
"搏击": "Fight",
"网排": "Tennis",
"游戏": "Game",
"其他": "Others",
"橄棒冰": "MLB"
}
classes = []
for k in cateManual:
classes.append({
'type_name': k,
'type_id': cateManual[k]
})
result['class'] = classes
if (filter):
result['filters'] = self.config['filter']
return result
def homeVideoContent(self):
result = {}
return result
def categoryContent(self,tid,pg,filter,extend):
result = {}
url = 'https://live.qq.com/api/live/vlist?page_size=60&shortName={0}&page={1}'.format(tid, pg)
rsp = self.fetch(url)
content = rsp.text
jo = json.loads(content)
videos = []
vodList = jo['data']['result']
numvL = len(vodList)
pgc = math.ceil(numvL/15)
for vod in vodList:
aid = (vod['room_id'])
title = vod['room_name'].strip()
img = vod['room_src']
remark = (vod['game_name']).strip()
videos.append({
"vod_id": aid,
"vod_name": title,
"vod_pic": img,
"vod_remarks": remark
})
result['list'] = videos
result['page'] = pg
result['pagecount'] = pgc
result['limit'] = numvL
result['total'] = numvL
return result
def detailContent(self,array):
aid = array[0]
url = "https://m.live.qq.com/{0}".format(aid)
rsp = self.fetch(url)
html = self.cleanText(rsp.text)
if self.regStr(reg=r'\"show_status\":\"(\d)\"', src=html) == '1':
title = self.regStr(reg=r'\"room_name\":\"(.*?)\"', src=html)
pic = self.regStr(reg=r'\"room_src\":\"(.*?)\"', src=html)
typeName = self.regStr(reg=r'\"game_name\":\"(.*?)\"', src=html)
remark = self.regStr(reg=r'\"nickname\":\"(.*?)\"', src=html)
purl = self.regStr(reg=r'\"hls_url\":\"(.*?)\"', src=html)
else:
return {}
vod = {
"vod_id": aid,
"vod_name": title,
"vod_pic": pic,
"type_name": typeName,
"vod_year": "",
"vod_area": "",
"vod_remarks": remark,
"vod_actor": '',
"vod_director":'',
"vod_content": ''
}
playUrl = '{0}${1}#'.format(typeName, purl)
vod['vod_play_from'] = '神仙影视企鹅线路'
vod['vod_play_url'] = playUrl
result = {
'list': [
vod
]
}
return result
def searchContent(self,key,quick):
result = {}
return result
def playerContent(self,flag,id,vipFlags):
result = {}
url = id
header = {
'Referer': 'https://m.live.qq.com/',
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"
}
result["parse"] = 0
result["playUrl"] = ''
result["url"] = url
result["header"] = header
return result
config = {
"player": {},
"filter": {}
}
header = {}
def localProxy(self,param):
action = {
'url':'',
'header':'',
'param':'',
'type':'string',
'after':''
}
return [200, "video/MP2T", action, ""]

BIN
tvbox/shenxian/lib/s.jar Normal file

Binary file not shown.

View File

@ -0,0 +1,996 @@
咪咕,#genre#
CCTV1综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv1
CCTV2财经,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv2
CCTV3综艺,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv3
CCTV4中文国际,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv4
CCTV4美洲,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv4a
CCTV4欧洲,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv4o
CCTV5体育,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv5
CCTV5+体育赛事,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv5p
CCTV6电影,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv6
CCTV7国防军事,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv7
CCTV8电视剧,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv8
CCTV9纪录,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv9
CCTV10科教,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv10
CCTV11戏曲,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv11
CCTV12社会与法,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv12
CCTV13新闻,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv13
CCTV14少儿,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv14
CCTV15音乐,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv15
CCTV17农业农村,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cctv17
CCTV发现之旅,http://dp.sxtv.top:88/盗源可耻/migu.php?id=fxzl
CCTV老故事,http://dp.sxtv.top:88/盗源可耻/migu.php?id=lgs
CCTV中学生,http://dp.sxtv.top:88/盗源可耻/migu.php?id=zxs
CGTN,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtn
CGTN纪录,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtnjl
CCTV西班牙语,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtne
CCTV法语,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtnf
CCTV阿拉伯语,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtna
CCTV俄语,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cgtnr
东方卫视x,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dfws
重庆卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cqws
吉林卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jlws
辽宁卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=lnws
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=nmws
宁夏卫视x,http://dp.sxtv.top:88/盗源可耻/migu.php?id=nxws
甘肃卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gsws
青海卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=qhws
陕西卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=sxws
山东卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=sdws
河南卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hnws
湖北卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hubws
湖南卫视x,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hunws
江西卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jxws
江苏卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsws
东南卫视x,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dnws
海峡卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hxws
广东卫视x,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gdws
大湾区卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dwqws
广西卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gxws
云南卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ynws
贵州卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gzws
新疆卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xjws
西藏卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xzws
海南卫视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hinws
四海钓鱼,http://dp.sxtv.top:88/盗源可耻/migu.php?id=shdy
CHC动作电影,http://dp.sxtv.top:88/盗源可耻/migu.php?id=chcdzdy
CHC家庭影院,http://dp.sxtv.top:88/盗源可耻/migu.php?id=chcjtdy
东方影视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dfys
上海新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=shxwzh
上海第一财经,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dycj
上视纪实人文,http://dp.sxtv.top:88/盗源可耻/migu.php?id=shjsrw
上海外语,http://dp.sxtv.top:88/盗源可耻/migu.php?id=shics
法治天地,http://dp.sxtv.top:88/盗源可耻/migu.php?id=fztd
劲爆体育,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jbty
魅力足球,http://dp.sxtv.top:88/盗源可耻/migu.php?id=mlzq
乐游,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ly
欢笑剧场,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hxjc
七彩戏剧,http://dp.sxtv.top:88/盗源可耻/migu.php?id=qcxj
游戏风云,http://dp.sxtv.top:88/盗源可耻/migu.php?id=yxfy
临洮电视台,http://dp.sxtv.top:88/盗源可耻/migu.php?id=lttv
江苏城市,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jscs
江苏综艺,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jszy
江苏影视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsys
江苏公共新闻,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsggxw
江苏国际,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsgj
江苏教育,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsjy
江苏体育休闲,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jstyxx
优漫卡通,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ymkt
南京新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=njxwzh
南京教科,http://dp.sxtv.top:88/盗源可耻/migu.php?id=njkj
南京十八,http://dp.sxtv.top:88/盗源可耻/migu.php?id=njsb
淮安新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=haxwzh
连云港新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=lygxwzh
苏州新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=szxwzh
泰州新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=tzxwzh
宿迁新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=sqxwzh
徐州新闻综合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xzxwzh
广东影视,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gdys
嘉佳卡通,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jjkt
24小时亚洲杯频道,http://dp.sxtv.top:88/盗源可耻/migu.php?id=24hyzb
CBA经典,http://dp.sxtv.top:88/盗源可耻/migu.php?id=cbajd
掼蛋精英赛,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gdjys
高清大片,http://dp.sxtv.top:88/盗源可耻/migu.php?id=gqdp
和平精英赛事,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hpjxss
红色轮播台,http://dp.sxtv.top:88/盗源可耻/migu.php?id=hslbt
经典动画大集合,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jddhdjh
经典深圳旁边电影,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jdxgdy
军事迷必看大片,http://dp.sxtv.top:88/盗源可耻/migu.php?id=jsdp
历届春晚回顾,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ljcwhg
咪咕24小时体育台,http://dp.sxtv.top:88/盗源可耻/migu.php?id=mg24hty
玫瑰轮播台,http://dp.sxtv.top:88/盗源可耻/migu.php?id=mglbt
NBA经典,http://dp.sxtv.top:88/盗源可耻/migu.php?id=nbajd
欧洲足球风云,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ozzqfy
全民乒乓,http://dp.sxtv.top:88/盗源可耻/migu.php?id=qmpp
热剧联播,http://dp.sxtv.top:88/盗源可耻/migu.php?id=rjlb
赛事最经典,http://dp.sxtv.top:88/盗源可耻/migu.php?id=sszjd
体坛名栏汇,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ttmlh
UFC格斗精选,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ufcgdjx
五大联赛经典,http://dp.sxtv.top:88/盗源可耻/migu.php?id=wdlsjd
乡村振兴,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xczx
幸福中国年,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xfzgn
新片放映厅,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xpfyt
英雄联盟赛事,http://dp.sxtv.top:88/盗源可耻/migu.php?id=yxlmss
周杰伦现场,http://dp.sxtv.top:88/盗源可耻/migu.php?id=zjlxc
最强综艺趴,http://dp.sxtv.top:88/盗源可耻/migu.php?id=zqzyp
熊猫01高清,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xmpd
熊猫1,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm1
熊猫2,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm2
熊猫3,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm3
熊猫4,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm4
熊猫5,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm5
熊猫6,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm6
熊猫7,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm7
熊猫8,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm8
熊猫9,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm9
熊猫10,http://dp.sxtv.top:88/盗源可耻/migu.php?id=xm10
龙胜龙脊梯田,http://dp.sxtv.top:88/盗源可耻/migu.php?id=lsljtt
大藤峡,http://dp.sxtv.top:88/盗源可耻/migu.php?id=dtx
邕城,http://dp.sxtv.top:88/盗源可耻/migu.php?id=yc
遇龙河,http://dp.sxtv.top:88/盗源可耻/migu.php?id=ylh
开封金明广场,http://dp.sxtv.top:88/盗源可耻/migu.php?id=kfjmgc
开封清明上河园西门,http://dp.sxtv.top:88/盗源可耻/migu.php?id=kfqmshyxm
开封连霍高速路口,http://dp.sxtv.top:88/盗源可耻/migu.php?id=kflhgsgl
开封鼓楼,http://dp.sxtv.top:88/盗源可耻/migu.php?id=kfgl
武汉光谷,http://dp.sxtv.top:88/盗源可耻/migu.php?id=whgg
武汉江汉关,http://dp.sxtv.top:88/盗源可耻/migu.php?id=whjhg
武汉黄鹤楼,http://dp.sxtv.top:88/盗源可耻/migu.php?id=whhhl
蜀小果,#genre#
CCTV1,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv1
CCTV2,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv2
CCTV3,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv3
CCTV4,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv4
CCTV5,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv5
CCTV5+,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv5p
CCTV6,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv6
CCTV7,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv7
CCTV8,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv8
CCTV9,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv9
CCTV10,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv10
CCTV11,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv11
CCTV12,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv12
CCTV13,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv13
CCTV14,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv14
CCTV15,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv15
CCTV16,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv16
CCTV17,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv17
CCTV-4K 超高清,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv4k
CCTV-16 奥林匹克 4K,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cctv16-4k
4K超高清,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=emdy4k
CETV1,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cetv1
CETV2,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cetv2
CHC动作电影,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chcdz
CHC高清电影,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chcgq
CHC家庭影院,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chcjt
北京卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=bjws
安徽卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ahws
东方卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dfws
东南卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dnws
广东卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gdws
贵州卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gzws
河南卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hnws
黑龙江卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hljws
湖北卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hbws
湖南卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hunws
吉林卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jlws
江苏卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jsws
江西卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jxws
辽宁卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lnws
山东卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=sdws
深圳卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=szws
四川卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scws
天津卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=tjws
浙江卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zjws
重庆卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cqws
青海卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=qhws
兵团卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=btws
甘肃卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gsws
广西卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gxws
海南卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hanws
康巴卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=kbws
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=nmws
山东教育卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=sdjy
山西卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=sxiws
陕西卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=sxws
西藏卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xzws
云南卫视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ynws
凤凰中文,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=fhws
凤凰资讯,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=fhzx
重温经典,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cwjd
新视觉,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xsj
青羊电视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=qyzh
阿坝文艺,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=abwy
阿坝综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=abzh
安岳综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ayzh
安州综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=azzh
巴州,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=baz
宝兴综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=bxzh
北川综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=bchzh
苍溪综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cxzh
茶频道,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cpd
朝天综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chtzh
成都高新区,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chdgx
成都公共,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chdgg
成都新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chdxw
崇州综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chzzh
川网导视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cwds
船山综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=chszh
达川新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dcxw
达州导视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dcds
达州通川,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dztc
达州文化,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dzwh
达州新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dzxw
大邑,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=day
大英新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dyxw
东方财经,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dfcj
动漫秀场,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dmxch
都市剧场,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=dusjc
峨边综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ebzh
峨眉综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=emzh
峨嵋电影,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=emdy
恩阳新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=eyxw
法治天地,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=fztd
涪城综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pczh
甘孜综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gzzh
高县,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gx
珙县新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gxxw
古蔺新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=glxw
广元文化,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=guwh
广元综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=gyzh
洪雅新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=hyxw
夹江新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jjxw
剑阁综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jgzh
金口河综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jkhzh
金牛 标清,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jnbq
金色学堂,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jsxt
金堂,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jit
金鹰纪实,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jyjs
金鹰卡通,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jykt
劲爆体育,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jbty
精品导视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jpds
井研新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jyxw
开江新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=kjxw
康定,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=kd
快乐垂钓,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=klcd
乐山文旅,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lswl
乐山新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lsxw
乐游,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ly
乐至综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lzzh
梨园频道,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lypd
利州综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lzzh
凉山新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lsxw
凉山彝语综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lsyyzh
隆昌综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lczh
庐山综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=lszh
泸定综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ldzh
马边综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mbzh
眉山公共,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=msgg
眉山综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mszh
魅力足球,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mlzq
米易综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=myzh
绵阳科技,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mykj
绵阳新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=myxw
名山,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ms
木里,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mul
沐川综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=mczh
南充公共,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ncgg
南充综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=nczh
南江,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=nj
南溪综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=nxzh
攀钢新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pgxw
攀枝花新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pzhxw
彭山综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pszh
彭州综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pzzh
蓬溪新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pxixw
郫县新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pxxw
平昌综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pczh
平武综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pwzh
屏山综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pshzh
蒲江综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=pjzh
青白江综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=jbjzh
青神综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=qszh
邛崃综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=qlzh
渠县新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=qxxw
仁和新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=rhxw
仁寿综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=rszh
荣县综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=rxzh
三台综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=stzh
沙湾融媒,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=swrm
什邡新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=sfxw
生活时尚,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=shss
四川妇女,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scfn
四川经济,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scjj
四川科教,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scjk
四川文化,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scwh
四川乡村,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scxc
四川新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scxw
四川影视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=scys
松潘综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=spzh
遂宁文化,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=snwh
遂宁综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=snzh
天泉新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=tqxw
通江综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=tjzh
万源,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wy
旺苍综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wczh
温江综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wjzh
文物宝库,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wwbk
五通桥,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wtq
武术世界,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=wssj
西昌,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xc
西充综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xczh
新都综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xdzh
新津,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xj
兴文,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xw
宣汉综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xhzh
雅安公共,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=yagg
雅安新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=yaxw
盐边,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=yb
盐亭综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ytzh
雁江,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=yj
宜宾导视,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ybds
荥经,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=xjd
营山,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ysxw
岳池,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ycxw
越西综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=yxzh
长宁综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=cnzh
昭化综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zhzh
中江综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zjzh
资阳新闻,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zyxw
资中综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zzzh
梓潼综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=ztgq
自贡生活,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zgsh
自贡综合,http://dp.sxtv.top:88/盗源可耻/sxg.php?id=zgzh
陕西广电,#genre#
CCTV1HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5490
CCTV2HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5612
CCTV3HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5611
CCTV4HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5610
CCTV5HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5489
CCTV5+HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5494
CCTV6HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5609
CCTV7HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6002
CCTV8HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5492
CCTV9HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5607
CCTV10HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5606
CCTV11HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5853
CCTV12HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5605
CCTV13HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6062
CCTV14HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5604
CCTV15HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5854
CCTV16HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6095
CCTV17HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5608
央视台球HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6083
发现之旅,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6018
老故事,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6017
中学生,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6027
CGTN,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5519
CGTN,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5707
CGTN,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5708
CETV1,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5516
CETV1,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5709
CETV1,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5710
CHC家庭影院,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5927
CHC家庭影院,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6315
北京卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5502
北京卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5602
东方卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5503
天津卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5588
重庆卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5601
黑龙江卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5594
吉林卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5598
辽宁卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5593
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5511
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5725
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5726
宁夏卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5522
宁夏卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5727
宁夏卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5728
甘肃卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5561
青海卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5528
青海卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5729
青海卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5730
陕西卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5498
农林卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6335
河北卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6328
山西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5507
山西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5735
山西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5736
山东卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6326
安徽卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5590
河南卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6064
湖北卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6322
湖南卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5506
江西卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5599
江苏卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5504
浙江卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5505
东南卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5549
广东卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5589
深圳卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5592
广西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5557
广西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5719
广西卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5720
云南卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6063
贵州卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5586
四川卫视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5600
新疆卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5560
兵团卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5518
兵团卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5731
兵团卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5732
西藏卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5559
海南卫视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5562
北京纪实科教HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6011
百姓健康,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6021
环球奇观,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6029
四海钓鱼,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6025
优优宝贝,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6023
中华特产,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6022
陕西新闻资讯HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5500
陕西都市青春HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5830
陕西公共HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6334
陕西生活HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6331
陕西体育休闲HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6093
陕西影视HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6329
陕西西部电影HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6332
影视剧,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6306
西安新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5668
西安教育电视台,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6015
长安一套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5841
长安一套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5896
高陵综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6338
鄠邑综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5839
鄠邑综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5919
鄠邑二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5851
鄠邑二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5969
临潼综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5966
临潼影视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5967
蓝田综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5864
阎良综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5866
周至综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5837
周至综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5867
周至二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5838
周至二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5968
安康综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5855
安康综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6053
白河综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5847
白河综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5921
汉阴综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5849
汉阴综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5922
岚皋综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5850
岚皋综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5861
宁陕综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5848
宁陕综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5923
平利电视台,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5846
平利电视台,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5924
石泉综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5879
石泉综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6005
旬阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5844
旬阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5878
旬阳民生文化,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5925
镇坪综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6312
镇坪综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6343
紫阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5845
紫阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5928
宝鸡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5826
宝鸡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5827
宝鸡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5658
宝鸡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6038
宝鸡2,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6344
陈仓综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5869
凤翔综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5929
凤翔文化影视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5930
扶风综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5935
凤县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5868
陇县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5938
陇县道德文化,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5939
麟游综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5931
眉县新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5933
眉县经济生活,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5934
岐山综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5911
岐山二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5933
千阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5937
太白综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5918
汉中新闻综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6065
城固综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5944
佛坪综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5947
留坝电视台,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5943
略阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5870
勉县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5880
勉县经济,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5946
宁强综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5881
宁强二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5945
南郑综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5882
西乡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5862
西乡综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5863
洋县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5871
镇巴综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5883
商洛综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5666
商洛综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5825
丹凤综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5952
洛南综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5949
商南综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5953
山阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5950
山阳影视娱乐,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5951
商州综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5875
镇安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5876
镇安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5954
柞水综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5877
铜川新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5661
铜川新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5820
铜川新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5821
耀州综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5884
渭南新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5660
渭南新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5818
渭南新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5819
白水综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5914
白水二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5964
澄城综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5961
澄城综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6061
澄城公共,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5962
大荔新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5912
大荔影视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5960
美丽大荔,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5959
富平综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5905
富平二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5906
韩城综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5874
韩城综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5877
韩城生活,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5965
合阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5858
合阳二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5859
合阳三套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5860
华阴综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5856
华阴二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5857
华州综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5955
华州二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5956
蒲城综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5913
蒲城二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5963
潼关新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5915
潼关公共,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5958
潼关人文旅游,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5957
咸阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5659
咸阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5815
咸阳新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5816
杨凌综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5697
杨凌综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5897
杨凌综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5900
杨凌综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5940
杨凌现代农业,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5698
杨凌现代农业,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5901
杨凌现代农业,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5941
彬州新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5982
淳化综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5986
长武综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5984
泾阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5899
泾阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5917
泾阳二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5988
礼泉新闻,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5978
礼泉影视,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5979
乾县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5977
三原综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5973
武功新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5898
兴平综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5975
兴平二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5976
旬邑综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5985
永寿综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5980
延安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5662
延安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5700
延安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5828
延安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5829
延安综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6044
延安公共,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5699
安塞综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5902
宝塔电视台,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5885
富县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5695
甘泉综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5904
黄陵综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5886
黄龙综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5916
洛川综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5908
吴起综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5910
延长综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5907
延川综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5889
宜川新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5909
子长综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5887
榆林新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5822
榆林新闻综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5823
榆林二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6337
定边综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6013
定边二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5993
府谷综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5891
府谷二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5992
横山综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5894
横山综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6000
横山二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6001
靖边综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5892
靖边二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5994
佳县综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5890
米脂综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5895
清涧综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5996
绥德综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5995
神木综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5694
神木综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5893
神木二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5991
吴堡综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6010
榆阳综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5852
榆阳二套,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5990
子洲综合,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5997
子洲综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6340
子洲综合HD,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6341
重温经典,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=5563
cctv1,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6308
凤凰中文,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6317
凤凰资讯,http://dp.sxtv.top:88/盗源可耻/sxgd.php?id=6320
重庆有线,#genre#
CCTV1综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv1
CCTV2财经,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv2
CCTV3综艺,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv3
CCTV4中文国际,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv4
CCTV5体育,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv5
CCTV5+体育赛事,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv5p
CCTV6电影,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv6
CCTV7国防军事,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv7
CCTV8电视剧,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv8
CCTV9纪录,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv9
CCTV10科教,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv10
CCTV11戏曲,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv11
CCTV12社会与法,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv12
CCTV13新闻,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv13
CCTV14少儿,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv14
CCTV15音乐,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv15
CCTV16奥林匹克,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv16
CCTV17农业农村,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv17
CCTV4K 高清,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cctv4k
CCTV兵器科技,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=bqkj
CCTV第一剧场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dyjc
CCTV怀旧剧场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hjjc
CCTV风云剧场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fyjc
CCTV风云音乐,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fyyy
CCTV风云足球,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fyzq
CCTV央视文化精品,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=whjp
CCTV女性时尚,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=nxss
CCTV高尔夫网球,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=gefwq
CCTV央视台球,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=ystq
CCTV央广购物,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=yggw
CCTV中视购物,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zsgw
中学生,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zxs
发现之旅,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fxzl
老故事,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=lgs
书画,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sh
中国天气,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zgtq
CGTN,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cgtn
CETV1中教1台,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cetv1
CETV4中教4台,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cetv4
CETV早期教育,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zqjy
CHC高清电影,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=chcgq
CHC动作电影,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=chcdz
CHC家庭影院,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=chcjt
北京卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=bjws
东方卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dfws
天津卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=tjws
重庆卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqws
黑龙江卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hljws
吉林卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jlws
辽宁卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=lnws
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=nmws
宁夏卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=nxws
青海卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=qhws
河北卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hbws
山西卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sxiws
安徽卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=ahws
河南卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hnws
湖北卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hubws
湖南卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hunws
江西卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jxws
江苏卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jsws
浙江卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zjws
东南卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dnws
广东卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=gdws
深圳卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=szws
广西卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=gxws
云南卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=ynws
贵州卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=gzws
四川卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=scws
新疆卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=xjws
兵团卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=btws
西藏卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=xzws
海南卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hinws
三沙卫视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=ssws
北京纪实科教,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=bjjskj
北京卡酷,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=bjkk
中华特产,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zhtc
生态环境,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sthj
四海钓鱼,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=shdy
车迷频道,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cmpd
百姓健康,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=bxjk
环球奇观,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hqqg
环球旅游,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hqly
优优宝贝,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=yybb
聚鲨环球精选,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jshwjx
东方财经,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dfcj
欢笑剧场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hxjc
都市剧场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dsjc
魅力足球,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=mlxq
动漫秀场,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=dmxc
游戏风云,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=yxfy
生活时尚,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=shss
法治天地,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fztd
金色学堂,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jsxt
重庆新闻,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqxw
重庆科教,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqkj
重庆影视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqys
重庆文体娱乐,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqwtyl
重庆少儿,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqse
重庆时尚生活,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqsssh
重庆新农村,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqxnc
重庆社会与法,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqshyf
重庆移动,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqyd
重庆汽摩,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cqqm
重广融媒,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cgrm
爱看导视,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=akds
合川综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=hczh
长寿综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cszh
酉阳综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=yyzh
云阳综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=yunyzh
铜梁综合,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=tlzh
家有购物,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jygw
新动漫,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=xdm
证券服务,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=zqfw
山东教育,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sdjy
收藏天下,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sctx
国学频道,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=gxpd
快乐垂钓,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=klcd
金鹰卡通,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=jykt
先锋乒羽,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=xfpy
风尚购物,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=fsgw
财富天下,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cftx
天元围棋,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=tywq
摄影频道,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=sypd
求索纪录,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=qsjl
重温经典,http://dp.sxtv.top:88/盗源可耻/cqyx.php?id=cwjd
亦非云,#genre#
CCTV1综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=1
CCTV2财经,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=2
CCTV3综艺,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=3
CCTV4中文国际,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=4
CCTV5体育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=5
CCTV5+体育赛事,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13
CCTV6电影,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=6
CCTV7国防军事,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=7
CCTV8电视剧,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=8
CCTV9纪录,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=9
CCTV10科教,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=10
CCTV11戏曲,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41
CCTV12社会与法,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11
CCTV13新闻,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=39
CCTV14少儿,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=12
CCTV15音乐,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=40
CCTV16奥林匹克,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=116
CCTV17农业农村,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=90
CGTN纪录,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=14
CGTN,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=15
CETV1中教1台,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=33
CETV4中教4台,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=38
广东卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=16
深圳卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=17
江苏卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=18
浙江卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=19
吉林卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=20
湖北卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=21
江西卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=22
安徽卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=23
北京卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=24
湖南卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=25
东方卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=26
黑龙江卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=27
天津卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=28
山东卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=29
贵州卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=30
四川卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=31
辽宁卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=32
广东体育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=34
蛇口电视台,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=37
深圳宜和购物,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=42
广东民生,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=45
深圳都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=46
深圳电视剧,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=47
深圳财经生活,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=48
深圳娱乐,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=49
深圳体育健康,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=50
深圳少儿,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=51
深圳公共,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=52
优漫卡通,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=53
山西卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=54
陕西卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=55
重庆卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=56
甘肃卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=57
大湾区卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=58
广西卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=59
青海卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=60
云南卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=61
海南卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=62
广东少儿,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=63
新疆卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=64
广东珠江,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=65
西藏卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=66
兵团卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=67
宁夏卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=69
河南卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=78
河北卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=79
东南卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=80
金鹰卡通,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=81
内蒙古卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=93
北京纪实科教,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11001
卡酷少儿,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11003
车迷频道,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11004
环球旅游,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11005
中国天气,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11006
优优宝贝,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11007
聚鲨环球精选,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11008
书画频道,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11009
央广购物,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=11011
河北三佳购物,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=12001
河南梨园,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13001
河北杂技,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13002
河北经济生活,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13003
河北农民,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13004
河北都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13005
河北影视剧,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13006
河北少儿科教,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13007
河北公共,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13008
邯郸新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13009
河北收视指南,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13010
石家庄娱乐,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13011
石家庄生活,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13012
石家庄都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13013
石家庄新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13014
唐山新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13110
唐山生活服务,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13111
唐山影视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13112
唐山公共,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=13113
家庭理财,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=21001
家有购物,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=22002
北京纪实科教,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=22030
聚鲨环球精选2,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=32010
山东教育卫视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=37001
中华美食,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=37002
河南都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41101
河南民生,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41102
河南法治,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41103
河南电视剧,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41104
河南新闻,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41105
河南公共,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41106
河南乡村,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41107
河南睛彩中原,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41108
河南移动戏曲,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41109
河南功夫,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41110
河南收藏天下,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41111
郑州新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41112
周口新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41113
开封新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41114
洛阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41115
平顶山新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41116
安阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41117
鹤壁新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41118
新乡新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41119
焦作新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41120
濮阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41121
许昌综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41122
漯河新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41123
三门峡新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41124
商丘新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41125
驻马店新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41126
南阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41127
信阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41128
济源1套,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41129
长城铝综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41130
嘉佳卡通,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41133
东方财经,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41135
兰铁TV,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41136
人民铁道,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=41137
湖南教育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43021
湖南经视,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43024
金鹰卡通,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43025
湖南娱乐,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43027
湖南都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43028
湖南电影,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43029
湖南电视剧,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43030
快乐购,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43032
四海钓鱼,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43036
劲爆体育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43038
欢笑剧场,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43039
乐游,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43040
游戏风云,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43041
生活时尚,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43043
动漫秀场,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43045
CHC高清电影,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43063
湖南爱晚,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43080
新视觉,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43082
魅力足球,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43083
劲爆体育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43084
都市剧场,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43085
金鹰纪实,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43087
益阳新闻综合,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43088
益阳教育,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43089
益阳公共,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43090
湖南都市,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43094
湖南电影,http://dp.sxtv.top:88/盗源可耻/yfy.php?id=43098
龙江IPV6,#genre#
CCTV1,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226559/index.m3u8
CCTV2,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226540/index.m3u8
CCTV3,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226021/index.m3u8
CCTV4,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226428/index.m3u8
CCTV5,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226019/index.m3u8
CCTV5+,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225603/index.m3u8
CCTV6,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226010/index.m3u8
CCTV7,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225733/index.m3u8
CCTV8,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226008/index.m3u8
CCTV9,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225734/index.m3u8
CCTV10,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226473/index.m3u8
CCTV11,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226565/index.m3u8
CCTV12,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226568/index.m3u8
CCTV13,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226537/index.m3u8
CCTV14,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226591/index.m3u8
CCTV15,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226476/index.m3u8
CCTV16,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226100/index.m3u8
CCTV17,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8
湖南卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226307/index.m3u8
浙江卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226339/index.m3u8
江苏卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226310/index.m3u8
东方卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226345/index.m3u8
广东卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226248/index.m3u8
广西卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226549/index.m3u8
深圳卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226313/index.m3u8
北京卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226450/index.m3u8
东南卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226341/index.m3u8
四川卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226338/index.m3u8
天津卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226459/index.m3u8
安徽卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226391/index.m3u8
山东卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226456/index.m3u8
江西卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226344/index.m3u8
河北卫视「IPV6,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226406/index.m3u8
河南卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226480/index.m3u8
海南卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8
湖北卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226477/index.m3u8
贵州卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226474/index.m3u8
辽宁卫视「IPV6,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226546/index.m3u8
重庆卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226409/index.m3u8
吉林卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226397/index.m3u8
黑龙江卫视,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226327/index.m3u8
NewTv 超级电影,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225717/index.m3u8
NewTv 超级电视剧,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225716/index.m3u8
NewTv 超级体育,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225715/index.m3u8
NewTv 超级综艺,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225714/index.m3u8
NewTv 金牌综艺,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225666/index.m3u8
NewTv 东北热剧,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225741/index.m3u8
NewTv 哒啵赛事,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225675/index.m3u8
NewTv 古装剧场,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225663/index.m3u8
NewTv 欢乐剧场,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225742/index.m3u8
NewTv 黑莓动画,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225662/index.m3u8
NewTv 黑莓电影,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225743/index.m3u8
NewTv 怡伴健康,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225673/index.m3u8
NewTv 潮妈辣婆,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225685/index.m3u8
NewTv 军旅剧场,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225676/index.m3u8
NewTv 军事评论,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225668/index.m3u8
NewTv 中国功夫,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225681/index.m3u8
NewTv 农业致富,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225683/index.m3u8
NewTv 动作电影,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225661/index.m3u8
NewTv 家庭剧场,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225677/index.m3u8
NewTv 惊悚悬疑,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225665/index.m3u8
NewTv 武博世界,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225680/index.m3u8
NewTv 炫舞未来,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225719/index.m3u8
NewTv 爱情喜剧,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225669/index.m3u8
NewTv 精品萌宠,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226505/index.m3u8
NewTv 精品体育,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225674/index.m3u8
NewTv 精品大剧,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225670/index.m3u8
NewTv 精品记录,http://[2409:8087:1a01:df::7005]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225672/index.m3u8
咪咕直播 1*,http://[2409:8087:1a01:df::404d]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226124/index.m3u8
咪咕直播 2*,http://[2409:8087:1a01:df::403b]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226147/index.m3u8
咪咕直播 3*,http://[2409:8087:1a01:df::4033]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226398/index.m3u8
咪咕直播 4*,http://[2409:8087:1a01:df::4046]/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221226472/index.m3u8

View File

@ -0,0 +1,304 @@
var rule = {
title: 'EMO蓝光[V2]', // csp_AppYsV2
host: 'http://one3.emofun.top/mogai_api.php/v1.vod',
url: 'video?tid=fyclassfyfilter&limit=20&pg=fypage',
filter_url:'&class={{fl.class}}&area={{fl.area}}&lang={{fl.lang}}&letter={{fl.letter}}&year={{fl.year}}&by={{fl.by}}',
filter:{
"1":[{"key":"class","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":"记录"}]},{"key":"area","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":"lang","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","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":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
"2":[{"key":"class","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":"奇幻"}]},{"key":"area","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":"lang","name":"语言","value":[{"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","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":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
"3":[{"key":"class","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":"盛会"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"大陆"},{"n":"韩国","v":"韩国"},{"n":"香港","v":"香港"},{"n":"台湾","v":"台湾"},{"n":"美国","v":"美国"},{"n":"其它","v":"其它"}]},{"key":"lang","name":"语言","value":[{"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","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":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}],
"4":[{"key":"class","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":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"大陆","v":"大陆"},{"n":"日本","v":"日本"},{"n":"欧美","v":"欧美"},{"n":"其他","v":"其他"}]},{"key":"lang","name":"语言","value":[{"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","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":"2006","v":"2006"},{"n":"2005","v":"2005"},{"n":"2004","v":"2004"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"time"},{"n":"人气","v":"hits"},{"n":"评分","v":"score"}]}]
},
detailUrl:'/detail?vod_id=fyid',
searchUrl: '/search?text=**&pg=fypage',
searchable: 2,
quickSearch: 0,
filterable:1,//是否启用分类筛选,
headers:{'User-Agent':'okhttp/4.1.0'},
timeout:5000,
// 分类筛选 /api.php/app/nav || /xgapp.php/v1/nav || /api.php/v1.vod/types
class_name:'电影&剧集&综艺&emoFun动漫',
class_url:'1&2&3&4',
play_parse:true,
lazy:`js:
let play_Url = '';
if (/\\.m3u8|\\.mp4/.test(input)) {
input = {
jx: 0,
url: input,
parse: 0
}
} else if (/,/.test(input) && /url=/.test(input)) {
input = input.split('url=');
play_Url = input[0].split(',')[0];
input = {
jx: 0,
url: input[1],
playUrl: play_Url,
parse: 1
}
} else if (/url=|id=/.test(input)) {
input = {
jx: 0,
url: JSON.parse(request(input)).url,
parse: 0
}
} else if (/youku|iqiyi|v\\.qq\\.com|pptv|sohu|le\\.com|1905\\.com|mgtv|bilibili|ixigua/.test(input)) {
play_Url = /bilibili/.test(input) ? 'https://jx.xmflv.com/?url=' : 'https://jx.777jiexi.com/player/?url='; // type0的parse
// play_Url = /bilibili/.test(input) ? 'https://jx.xmflv.com/?url=' : 'json:http://pandown.pro/app/kkdy.php?url='; // type1的parse可加'json:'直接解析url (除了蜂蜜的'影视TV',其它的壳皆可用)
input = {
jx: 0,
url: input,
playUrl: play_Url,
parse: 1,
header: JSON.stringify({
'user-agent': 'Mozilla/5.0',
}),
}
} else {
input
}
`,
limit:6,
// 图片来源:'@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',
推荐:`js:
let d = [];
let jsondata = [];
let videoList = [];
if (/v1\\.vod/.test(HOST)) {
if(HOST.endsWith('/')){
jsondata = JSON.parse(request(HOST + 'vodPhbAll'));
} else {
jsondata = JSON.parse(request(HOST + '/vodPhbAll'));
}
videoList = jsondata.data.list;
} else {
if(HOST.endsWith('/')){
jsondata = JSON.parse(request(HOST + 'index_video'));
} else {
jsondata = JSON.parse(request(HOST + '/index_video'));
}
videoList = /xgapp/.test(HOST) ? jsondata.data : jsondata.list;
}
// log('videoList =========> '+stringify(videoList));
videoList.forEach((it,idex) => {
let vlist = /v1\\.vod/.test(HOST) ? videoList[idex].vod_list : videoList[idex].vlist ;
vlist.forEach(it => {
d.push({
url:it.vod_id,
title:it.vod_name,
img:it.vod_pic.startsWith('http') ? it.vod_pic : it.vod_pic.startsWith('//') ? 'https:' + it.vod_pic : it.vod_pic.startsWith('/') ? getHome(HOST) + it.vod_pic : getHome(HOST) + '/' + it.vod_pic,
desc:it.vod_remarks,
});
});
});
setResult(d);
`,
一级:`js:
let d = [];
let jsondata = [];
let videoList = [];
if (/v1\\.vod/.test(HOST)) {
input = input.replace('video','v1.vod').replace('tid','type').replace('pg=','page=');
jsondata = JSON.parse(request(input));
videoList = jsondata.data.list;
} else {
input = HOST + '/'+ input.split('/')[4];
jsondata = JSON.parse(request(input));
videoList = jsondata.list || jsondata.data;
}
// log('videoList =========> '+stringify(videoList));
videoList.forEach(it => {
d.push({
url:it.vod_id,
title:it.vod_name,
img:it.vod_pic.startsWith('http') ? it.vod_pic : it.vod_pic.startsWith('//') ? 'https:' + it.vod_pic : it.vod_pic.startsWith('/') ? getHome(HOST) + it.vod_pic : getHome(HOST) + '/' + it.vod_pic,
desc:it.vod_remarks,
});
});
setResult(d);
`,
二级:`js:
if (/v1\\.vod/.test(HOST)) {
input = HOST + '/'+ input.split('/')[3];
} else {
input = HOST + '/'+ input.split('/')[3].replace('detail','video_detail').replace('vod_id','id');
}
try {
let html = request(input);
html = JSON.parse(html);
let node = /xgapp/.test(HOST) ? html.data.vod_info : html.data;
VOD = {
vod_id: node.vod_id,
vod_name: node.vod_name,
vod_pic: node.vod_pic,
type_name: node.vod_class,
vod_year: node.vod_year,
vod_area: node.vod_area,
vod_remarks: node.vod_remarks,
vod_actor: node.vod_actor,
vod_director: node.vod_director,
vod_content: node.vod_content.strip()
};
if (typeof play_url === 'undefined') {
var play_url = ''
}
var name = {
'bfzym3u8': '暴风',
'1080zyk': '优质',
'kuaikan': '快看',
'lzm3u8': '量子',
'ffm3u8': '非凡',
'haiwaikan': '海外看',
'gsm3u8': '光速',
'zuidam3u8': '最大',
'bjm3u8': '八戒',
'snm3u8': '索尼',
'wolong': '卧龙',
'xlm3u8': '新浪',
'yhm3u8': '樱花',
'tkm3u8': '天空',
'jsm3u8': '极速',
'wjm3u8': '无尽',
'sdm3u8': '闪电',
'kcm3u8': '快车',
'jinyingm3u8': '金鹰',
'fsm3u8': '飞速',
'tpm3u8': '淘片',
'lem3u8': '鱼乐',
'dbm3u8': '百度',
'tomm3u8': '番茄',
'ukm3u8': 'U酷',
'ikm3u8': '爱坤',
'hnzym3u8': '红牛资源',
'hnm3u8': '红牛',
'68zy_m3u8': '68',
'kdm3u8': '酷点',
'bdxm3u8': '北斗星',
'qhm3u8': '奇虎',
'hhm3u8': '豪华',
'kbm3u8': '快播'
};
let episodes = /v1\\.vod/.test(HOST)?node.vod_play_list:node.vod_url_with_player;
if (episodes != '') {
let playMap = {};
let arr = [];
episodes.forEach(ep => {
let from = [];
if (/v1\\.vod/.test(HOST)) {
from = ep.player_info.from||ep.player_info.show||ep.from||ep.show;
} else {
from = ep.code||ep.name;
}
if (!playMap.hasOwnProperty(from)) {
playMap[from] = []
}
let parse_api = '';
if (/v1\\.vod/.test(HOST)) {
parse_api = ep.player_info.parse != null ? ep.player_info.parse : ep.player_info.parse2;
// parse_api = /,/.test(parse_api) ? parse_api.split(',')[1] : parse_api;
} else {
parse_api = ep.parse_api;
}
log('parse_api =========> '+parse_api);
if (parse_api != null && !/\\.m3u8|\\.mp4/.test(ep.url)) {
parse_api = parse_api.replaceAll('..','.') ;
ep.url = ep.url.replaceAll('$','$'+parse_api);
}
if (from != null) playMap[from].push(ep.url)
});
for (var key in playMap) {
if ('bfzym3u8' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 1
})
} else if ('1080zyk' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 2
})
} else if ('kuaikan' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 3
})
} else if ('lzm3u8' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 4
})
} else if ('ffm3u8' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 5
})
} else if ('snm3u8' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 6
})
} else if ('qhm3u8' == key) {
arr.push({
flag: name[key],
url: playMap[key],
sort: 7
})
} else {
arr.push({
flag: name[key] ? name[key] : key,
url: playMap[key],
sort: 8
})
}
}
arr.sort((a, b) => a.sort - b.sort);
let playFrom = [];
let playList = [];
arr.map(val => {
if (!/undefined/.test(val.flag)) {
playFrom.push(val.flag);
playList.push(val.url);
}
})
VOD.vod_play_from = playFrom.join('$$$');
VOD.vod_play_url = playList.join('$$$');
} else {
VOD.vod_play_from = node.vod_play_from;
VOD.vod_play_url = node.vod_play_url;
}
} catch (e) {
log("获取二级详情页发生错误:" + e.message);
}
`,
搜索:`js:
let d = [];
let jsondata = [];
let videoList = [];
if (/v1\\.vod/.test(HOST)) {
input = (HOST + '/'+ input.split('/')[3]).replace('/search','').replace('text=','wd=').replace('pg=','page=');
jsondata = JSON.parse(request(input));
videoList = jsondata.data.list;
} else {
input = HOST + '/'+ input.split('/')[3]
jsondata = JSON.parse(request(input));
videoList = jsondata.list || jsondata.data;
}
// log('videoList =========> '+stringify(videoList));
videoList.forEach(it => {
d.push({
url:it.vod_id,
title:it.vod_name,
img:it.vod_pic.startsWith('http') ? it.vod_pic : it.vod_pic.startsWith('//') ? 'https:' + it.vod_pic : it.vod_pic.startsWith('/') ? getHome(HOST) + it.vod_pic : getHome(HOST) + '/' + it.vod_pic,
desc:it.vod_remarks,
});
});
setResult(d);
`,
}

View File

@ -0,0 +1,38 @@
// 地址发布页 https://www.bttwo.vip/
var rule = {
title:'两个BT',
// host:'https://www.bttwoo.com',
host:'https://www.bttwo.net',
// url:'/fyclass/page/fypage',
url:'/fyclassfyfilter',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.area}}{{fl.year}}{{fl.class}}/page/fypage',
filter:{
"movie_bt":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"v":"/movie_bt_tags/zj","n":"传记"},{"v":"/movie_bt_tags/ertong","n":"儿童"},{"v":"/movie_bt_tags/adt","n":"冒险"},{"v":"/movie_bt_tags/juqing","n":"剧情"},{"v":"/movie_bt_tags/at","n":"动作"},{"v":"/movie_bt_tags/donghua","n":"动画"},{"v":"/movie_bt_tags/lishi","n":"历史"},{"v":"/movie_bt_tags/guzhuang","n":"古装"},{"v":"/movie_bt_tags/tongxing","n":"同性"},{"v":"/movie_bt_tags/xiju","n":"喜剧"},{"v":"/movie_bt_tags/qihuan","n":"奇幻"},{"v":"/movie_bt_tags/jiating","n":"家庭"},{"v":"/movie_bt_tags/kongbu","n":"恐怖"},{"v":"/movie_bt_tags/xuanni","n":"悬疑"},{"v":"/movie_bt_tags/qingse","n":"情色"},{"v":"/movie_bt_tags/jingsong","n":"惊悚"},{"v":"/movie_bt_tags/戏曲","n":"戏曲"},{"v":"/movie_bt_tags/zhanzheng","n":"战争"},{"v":"/movie_bt_tags/gw","n":"歌舞"},{"v":"/movie_bt_tags/wuxia","n":"武侠"},{"v":"/movie_bt_tags/zhannan","n":"灾难"},{"v":"/movie_bt_tags/aiqing","n":"爱情"},{"v":"/movie_bt_tags/fanzui","n":"犯罪"},{"v":"/movie_bt_tags/短片","n":"短片"},{"v":"/movie_bt_tags/kehuan","n":"科幻"},{"v":"/movie_bt_tags/jilu","n":"纪录片"},{"v":"/movie_bt_tags/xibu","n":"西部"},{"v":"/movie_bt_tags/yd","n":"运动"},{"v":"/movie_bt_tags/yinyue","n":"音乐"},{"v":"/movie_bt_tags/黑色电影","n":"黑色电影"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"v":"/movie_bt_cat/不丹","n":"不丹"},{"v":"/movie_bt_cat/ny","n":"东南亚"},{"v":"/movie_bt_cat/zhonji","n":"中国"},{"v":"/movie_bt_cat/zhogngtw","n":"中国台湾"},{"v":"/movie_bt_cat/dl","n":"中国大陆"},{"v":"/movie_bt_cat/zhongguoxg","n":"中国香港"},{"v":"/movie_bt_cat/dm","n":"丹麦"},{"v":"/movie_bt_cat/wuklan","n":"乌克兰"},{"v":"/movie_bt_cat/yisl","n":"以色列"},{"v":"/movie_bt_cat/yl","n":"伊朗"},{"v":"/movie_bt_cat/els","n":"俄罗斯"},{"v":"/movie_bt_cat/baojialiya","n":"保加利亚"},{"v":"/movie_bt_cat/克罗地亚","n":"克罗地亚"},{"v":"/movie_bt_cat/bingda","n":"冰岛"},{"v":"/movie_bt_cat/jnd","n":"加拿大"},{"v":"/movie_bt_cat/匈牙利","n":"匈牙利"},{"v":"/movie_bt_cat/nasilafu","n":"南斯拉夫"},{"v":"/movie_bt_cat/nanfei","n":"南非"},{"v":"/movie_bt_cat/kaer","n":"卡塔尔"},{"v":"/movie_bt_cat/luob","n":"卢森堡"},{"v":"/movie_bt_cat/yindu","n":"印度"},{"v":"/movie_bt_cat/印度尼西亚","n":"印度尼西亚"},{"v":"/movie_bt_cat/taiwan","n":"台湾"},{"v":"/movie_bt_cat/gelunbiya","n":"哥伦比亚"},{"v":"/movie_bt_cat/tuerqi","n":"土耳其"},{"v":"/movie_bt_cat/saierweiya","n":"塞尔维亚"},{"v":"/movie_bt_cat/moxige","n":"墨西哥"},{"v":"/movie_bt_cat/aodili","n":"奥地利"},{"v":"/movie_bt_cat/nirily","n":"尼日利亚"},{"v":"/movie_bt_cat/bx","n":"巴西"},{"v":"/movie_bt_cat/xl","n":"希腊"},{"v":"/movie_bt_cat/德国","n":"德国"},{"v":"/movie_bt_cat/ydl","n":"意大利"},{"v":"/movie_bt_cat/nw","n":"挪威"},{"v":"/movie_bt_cat/jirker","n":"捷克"},{"v":"/movie_bt_cat/摩洛哥","n":"摩洛哥"},{"v":"/movie_bt_cat/siluofake","n":"斯洛伐克"},{"v":"/movie_bt_cat/xinjip","n":"新加坡"},{"v":"/movie_bt_cat/xinxilan","n":"新西兰"},{"v":"/movie_bt_cat/rb","n":"日本"},{"v":"/movie_bt_cat/rihan","n":"日韩"},{"v":"/movie_bt_cat/omei","n":"欧美"},{"v":"/movie_bt_cat/bilishi","n":"比利时"},{"v":"/movie_bt_cat/fg","n":"法国"},{"v":"/movie_bt_cat/bolan","n":"波兰"},{"v":"/movie_bt_cat/波多黎各","n":"波多黎各"},{"v":"/movie_bt_cat/taigyo","n":"泰国"},{"v":"/movie_bt_cat/gangtai","n":"港台"},{"v":"/movie_bt_cat/adly","n":"澳大利亚"},{"v":"/movie_bt_cat/arl","n":"爱尔兰"},{"v":"/movie_bt_cat/asny","n":"爱沙尼亚"},{"v":"/movie_bt_cat/瑞典","n":"瑞典"},{"v":"/movie_bt_cat/ruishi","n":"瑞士"},{"v":"/movie_bt_cat/baierls","n":"白俄罗斯"},{"v":"/movie_bt_cat/tunisi","n":"突尼斯"},{"v":"/movie_bt_cat/ltwan","n":"立陶宛"},{"v":"/movie_bt_cat/lmny","n":"罗马尼亚"},{"v":"/movie_bt_cat/mg","n":"美国"},{"v":"/movie_bt_cat/芬兰","n":"芬兰"},{"v":"/movie_bt_cat/yg","n":"英国"},{"v":"/movie_bt_cat/hl","n":"荷兰"},{"v":"/movie_bt_cat/lsadlsi","n":"荷属安的列斯"},{"v":"/movie_bt_cat/feilb","n":"菲律宾"},{"v":"/movie_bt_cat/pty","n":"葡萄牙"},{"v":"/movie_bt_cat/dide","n":"西德"},{"v":"/movie_bt_cat/xby","n":"西班牙"},{"v":"/movie_bt_cat/yeun","n":"越南"},{"v":"/movie_bt_cat/ageiting","n":"阿根廷"},{"v":"/movie_bt_cat/alq","n":"阿联酋"},{"v":"/movie_bt_cat/hg","n":"韩国"},{"v":"/movie_bt_cat/xiangg","n":"香港"},{"v":"/movie_bt_cat/malaxy","n":"马来西亚"},{"v":"/movie_bt_cat/马耳他","n":"马耳他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"v":"/year/2023","n":"2023"},{"v":"/year/2022","n":"2022"},{"v":"/year/2021","n":"2021"},{"v":"/year/2020","n":"2020"},{"v":"/year/2019","n":"2019"},{"v":"/year/2018","n":"2018"},{"v":"/year/2017","n":"2017"},{"v":"/year/2016","n":"2016"},{"v":"/year/2015","n":"2015"},{"v":"/year/2014","n":"2014"},{"v":"/year/2013","n":"2013"},{"v":"/year/2012","n":"2012"},{"v":"/year/2011","n":"2011"},{"v":"/year/2010","n":"2010"},{"v":"/year/2009","n":"2009"},{"v":"/year/2008","n":"2008"},{"v":"/year/2007","n":"2007"},{"v":"/year/2006","n":"2006"},{"v":"/year/2005","n":"2005"},{"v":"/year/2004","n":"2004"},{"v":"/year/2003","n":"2003"},{"v":"/year/2002","n":"2002"},{"v":"/year/2001","n":"2001"},{"v":"/year/2000","n":"2000"},{"v":"/year/1999","n":"1999"},{"v":"/year/1998","n":"1998"},{"v":"/year/1997","n":"1997"},{"v":"/year/1996","n":"1996"},{"v":"/year/1995","n":"1995"},{"v":"/year/1994","n":"1994"},{"v":"/year/1993","n":"1993"},{"v":"/year/1992","n":"1992"},{"v":"/year/1991","n":"1991"},{"v":"/year/1990","n":"1990"},{"v":"/year/1989","n":"1989"},{"v":"/year/1988","n":"1988"},{"v":"/year/1987","n":"1987"},{"v":"/year/1986","n":"1986"},{"v":"/year/1985","n":"1985"},{"v":"/year/1984","n":"1984"},{"v":"/year/1983","n":"1983"},{"v":"/year/1982","n":"1982"},{"v":"/year/1980","n":"1980"},{"v":"/year/1978","n":"1978"},{"v":"/year/1977","n":"1977"},{"v":"/year/1976","n":"1976"},{"v":"/year/1975","n":"1975"},{"v":"/year/1974","n":"1974"},{"v":"/year/1973","n":"1973"},{"v":"/year/1972","n":"1972"},{"v":"/year/1970","n":"1970"},{"v":"/year/1969","n":"1969"},{"v":"/year/1963","n":"1963"},{"v":"/year/1962","n":"1962"},{"v":"/year/1961","n":"1961"},{"v":"/year/1960","n":"1960"},{"v":"/year/1959","n":"1959"},{"v":"/year/1958","n":"1958"},{"v":"/year/1957","n":"1957"},{"v":"/year/1956","n":"1956"},{"v":"/year/1955","n":"1955"},{"v":"/year/1954","n":"1954"},{"v":"/year/1953","n":"1953"},{"v":"/year/1952","n":"1952"},{"v":"/year/1949","n":"1949"},{"v":"/year/1938","n":"1938"},{"v":"/year/1931","n":"1931"},{"v":"/year/1925","n":"1925"},{"v":"/year/1921","n":"1921"}]}]
},
searchUrl:'/xssearch?q=**&f=_all&p=fypage',
searchable:2,
quickSearch:0,
headers:{
'User-Agent':'UC_UA'
},
timeout:5000,
class_name:'影视筛选&电视剧&高分电影&热门下载&本月热门&最新电影&国产剧&美剧&日韩剧',//静态分类名称拼接
class_url:'movie_bt&dsj&gf&hot&hot-month&new-movie&zgjun&meiju&jpsrtv',//静态分类标识拼接
// class_parse: '.navlist li:gt(0):lt(7);a&&Text;a&&href;.*/(\\w+)',
play_parse:true,
lazy:'',
limit:5,
推荐:'.leibox;li;*;*;*;*',
double:true, // 推荐内容是否双层定位
一级:'.bt_img li;.lazy&&alt;.thumb.lazy&&data-original;.jidi span&&Text;a&&href',
二级:{
"title":"h1&&Text;.moviedteail_list&&li:eq(0)&&Text",
"img":".dyimg.fl img&&src",
"desc":".moviedteail_list&&li:eq(9)&&Text;;;.moviedteail_list&&li:eq(7)&&Text;.moviedteail_list&&li:eq(5)&&Text",
"content":".yp_context&&p:eq(0)&&Text",
"tabs":".ypxingq_t:eq(1) span",
"lists":".paly_list_btn:eq(#id) a"
},
搜索:'*',
}

View File

@ -0,0 +1,26 @@
{
"作者": "",
"站名": "二三三动漫",
"主页url": "http://233dm.net",
"分类": "新番动漫$21#国产动漫$23#日本动漫$27#目录$4",
"分类url": "http://233dm.net/show/{cateId}--------{catePg}---.html",
"副标题": "module-item-note\">&&</div>",
"搜索模式": "1",
"搜索url": "/search/-------------.html?wd={wd}",
"搜索数组": "module-item\">&&</a>",
"搜索标题": "alt=\"&&\"",
"搜索副标题": "module-item-note\">&&</div>",
"导演": "导演:&&</div>",
"主演": "主演:&&</div>",
"简介": "【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+<p>&&</p>",
"线路数组": "data-dropdown-value=&&</div>",
"线路标题": "神仙影视+<span>&&</small>[替换:</span><small>>>👉]+集",
"播放数组": "module-play-list\">&&</div>"
}

View File

@ -0,0 +1,18 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"少儿口才_01","type_id":"01_01少儿口才天天练_01"},
{"type_name":"少儿口才_02","type_id":"01_02少儿口才"},
{"type_name":"少儿口才_03","type_id":"01_03少儿口才"},
{"type_name":"少儿口才_04","type_id":"01_04少儿口才"},
{"type_name":"【少儿口才训练系列】","type_id":"【少儿口才训练系列】"}
]
}

View File

@ -0,0 +1,15 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"幼儿思维推理训练"}
]
}

View File

@ -0,0 +1,16 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes":
[
{"type_name":"兔小贝拼音20集","type_id":"兔小贝拼音20集"},
{"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":"拼音启蒙动画上下册23集"},
{"type_name":"练宝宝学习拼音","type_id":"【拼音歌合集】练宝宝学习拼音"}
]
}

View File

@ -0,0 +1,12 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes":
[
{"type_name":"剑术","type_id":"剑术一段《中国武术段位制教程剑术》"},
{"type_name":"少儿武术","type_id":"少儿武术:五步拳"},
{"type_name":"武术入门","type_id":"少儿武术入门"},
{"type_name":"旭日东升武术","type_id":"少儿武术:旭日东升武术"},
{"type_name":"散打","type_id":"武术散打教学视频"}
]
}

View File

@ -0,0 +1,13 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes":
[
{"type_name":"写字启蒙教程","type_id":"写字启蒙教程"},
{"type_name":"叫叫硬笔书法","type_id":"叫叫硬笔书法"},
{"type_name":"硬笔书法123节超好用","type_id":"硬笔书法123节超好用"},
{"type_name":"王洪涛高效练字课","type_id":"王洪涛高效练字课"},
{"type_name":"书法全套课【168集全】","type_id":"书法全套课【168集全】"},
{"type_name":"1000+集全【汉字基本笔画部首入门】","type_id":"1000+集全【汉字基本笔画部首入门"}
]
}

View File

@ -0,0 +1,10 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes":
[
{"type_name":"Sratch编程","type_id":"【123集】新版少儿编程scratch3.0从入门到精通"},
{"type_name":"少儿Python","type_id":"少儿Python"},
{"type_name":"少儿C++","type_id":"小学生《趣味C++入门》"}
]
}

View File

@ -0,0 +1,14 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes":
[
{"type_name":"英语音标","type_id":"幼儿音标教学"},
{"type_name":"牛津阅读","type_id":"牛津阅读1-6级"},
{"type_name":"洪恩幼儿英语","type_id":"洪恩幼儿英语"},
{"type_name":"儿童英语","type_id":"儿童英语"},
{"type_name":"英语动画","type_id":"英语动画"},
{"type_name":"英文动画","type_id":"英文动画"},
{"type_name":"幼儿园英语","type_id":"幼儿园英语"}
]
}

View File

@ -0,0 +1,15 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"汉字宫"}
]
}

View File

@ -0,0 +1,26 @@
var rule = {
title:'兔小贝',
host:'https://www.tuxiaobei.com',
homeUrl:'',
url:'/list/mip-data?typeId=fyclass&page=fypage&callback=',
detailUrl:'/play/fyid',
searchUrl:'/search/index?key=**',
searchable:2,
headers:{
'User-Agent':'MOBILE_UA'
},
timeout:5000,
class_url:'2&3&4&25',
class_name:'儿歌&故事&国学&启蒙',
//class_name:'#page-viewport&&ul&&li;.text&&Text;a&&href;/(.*)',
cate_exclude:'应用',
推荐:'.pic-list.list-box;.items;.text&&Text;mip-img&&src;.all&&Text;a&&href',
double:true,
limit:5,
play_parse:true,
lazy:'js:fetch_params.headers["user-agent"] = IOS_UA;let html=fetch(input,fetch_params);let src = jsp.pdfh(html,"body&&#videoWrap&&video-src");input=src;',
// 一级:'json:data.items;name;image;collect_num;category_id+video_id',
一级:'json:data.items;name;image;duration_string;video_id',
二级:'*',
搜索:'.list-con&&.items;.text&&Text;mip-img&&src;.time&&Text;a&&href',
}

View File

@ -0,0 +1,58 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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年级化学"},
{"type_name":"9年级语文","type_id":"9年级语文"},
{"type_name":"9年级数学","type_id":"9年级数学"},
{"type_name":"9年级英语","type_id":"9年级英语"},
{"type_name":"9年级历史","type_id":"9年级历史"},
{"type_name":"9年级地理","type_id":"9年级地理"},
{"type_name":"9年级生物","type_id":"9年级生物"},
{"type_name":"9年级物理","type_id":"9年级物理"},
{"type_name":"9年级化学","type_id":"9年级化学"}
],
"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"}]}],
"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"}]}],
"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"}]}],
"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"}]}]
}
}

View File

@ -0,0 +1,31 @@
var rule = {
title:'动漫岛',
// host:'http://www.dmd85.com',
host:'http://www.dmand5.com',
// url:'/vod-list-id-fyclass-pg-fypage-order--by-{by}-class-{class}-year-{year}-letter--area--lang-.html',
url:'/vod-list-id-fyclass-pg-fypage-order-fyfilter-area--lang-.html',
filterable:1,//是否启用分类筛选,
filter_url:'-by-{{fl.by}}-class-{{fl.class}}-year-{{fl.year}}-letter-{{fl.letter}}',
filter: {"1":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"1"},{"n":"热血","v":"2"},{"n":"奇幻","v":"3"},{"n":"恋爱","v":"4"},{"n":"校园","v":"5"},{"n":"后宫","v":"6"},{"n":"搞笑","v":"7"},{"n":"青春","v":"8"},{"n":"百合","v":"9"},{"n":"科幻","v":"14"},{"n":"推理","v":"13"},{"n":"魔法","v":"12"},{"n":"神魔","v":"11"},{"n":"治愈","v":"10"},{"n":"竞技","v":"59"},{"n":"悬疑","v":"60"},{"n":"战争","v":"62"},{"n":"萝莉","v":"63"},{"n":"魔幻","v":"64"},{"n":"战斗","v":"65"},{"n":"歌舞","v":"98"},{"n":"历史","v":"99"},{"n":"励志","v":"108"},{"n":"偶像","v":"118"},{"n":"职场","v":"121"}]},{"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":"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"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"time"},{"n":"得分","v":"score"},{"n":"总排行","v":"hits"}]}],"3":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"36"},{"n":"热血","v":"37"},{"n":"奇幻","v":"38"},{"n":"恋爱","v":"39"},{"n":"恋爱","v":"40"},{"n":"恋爱","v":"40"},{"n":"搞笑","v":"42"},{"n":"治愈","v":"43"},{"n":"神魔","v":"44"},{"n":"魔法","v":"45"},{"n":"百合","v":"46"},{"n":"推理","v":"47"},{"n":"科幻","v":"48"},{"n":"竞技","v":"49"},{"n":"悬疑","v":"66"},{"n":"战争","v":"68"},{"n":"萝莉","v":"69"},{"n":"魔幻","v":"70"},{"n":"战斗","v":"71"},{"n":"青春","v":"72"},{"n":"历史","v":"100"},{"n":"歌舞","v":"101"},{"n":"恐怖","v":"104"},{"n":"职场","v":"107"},{"n":"励志","v":"109"},{"n":"偶像","v":"119"}]},{"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":"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"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"time"},{"n":"得分","v":"score"},{"n":"总排行","v":"hits"}]}],"4":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"50"},{"n":"热血","v":"51"},{"n":"武侠","v":"52"},{"n":"奇幻","v":"53"},{"n":"玄幻","v":"54"},{"n":"竞技","v":"55"},{"n":"魔幻","v":"56"},{"n":"科幻","v":"57"},{"n":"恋爱","v":"58"},{"n":"历史","v":"73"},{"n":"战斗","v":"74"},{"n":"搞笑","v":"75"},{"n":"神魔","v":"76"},{"n":"战争","v":"97"},{"n":"古风","v":"111"},{"n":"少女","v":"112"},{"n":"萝莉","v":"113"},{"n":"治愈","v":"114"},{"n":"日常","v":"115"},{"n":"歌舞","v":"116"},{"n":"偶像","v":"120"},{"n":"职场","v":"123"},{"n":"仙侠","v":"125"}]},{"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":"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"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"time"},{"n":"得分","v":"score"},{"n":"总排行","v":"hits"}]}],"16":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"77"},{"n":"热血","v":"78"},{"n":"奇幻","v":"79"},{"n":"恋爱","v":"80"},{"n":"校园","v":"81"},{"n":"后宫","v":"82"},{"n":"搞笑","v":"83"},{"n":"青春","v":"84"},{"n":"百合","v":"85"},{"n":"治愈","v":"86"},{"n":"神魔","v":"87"},{"n":"魔法","v":"88"},{"n":"推理","v":"89"},{"n":"科幻","v":"90"},{"n":"竞技","v":"91"},{"n":"悬疑","v":"92"},{"n":"战争","v":"93"},{"n":"萝莉","v":"94"},{"n":"魔幻","v":"95"},{"n":"战斗","v":"96"},{"n":"历史","v":"102"},{"n":"歌舞","v":"103"},{"n":"恐怖","v":"105"},{"n":"职场","v":"106"},{"n":"励志","v":"110"},{"n":"偶像","v":"117"},{"n":"职场","v":"124"}]},{"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":"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"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"time"},{"n":"得分","v":"score"},{"n":"总排行","v":"hits"}]}]},
searchUrl:'/search-pg-fypage-wd-**.html',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
headers:{
'User-Agent':'PC_UA',
},
class_parse:'.secNacUl li;a&&Text;a&&href;.*/(\\d+)-1.html',
play_parse:true,
lazy:'',
limit:6,
推荐:'.c1_l_wap_contact li;*;img&&src;.time:eq(0)&&Text;*',
一级:'.list3_cn_box .cn_box2;a&&title;.list_pic&&src;.list_20 li:eq(1) span&&Text;a&&href',
二级:{
"title":"h1&&Text;.o_r_contact&&li:eq(0)&&Text",
"img":".o_big_img_bg_b img&&src",
"desc":".o_r_contact&&li:eq(6)&&Text;.o_r_contact&&li:eq(5)&&Text;.o_r_contact&&li:eq(3)&&Text;.o_r_contact&&li:eq(2)&&Text;.o_r_contact&&li:eq(1)&&Text",
"content":".des_box&&Text",
"tabs":".from-tabs&&label",
"lists":".mn_list_li_movie:eq(#id) li"
},
搜索:'*',
}

View File

@ -0,0 +1,161 @@
{
"作者":"",
"站名":"动漫巴士",
"数组":"<div class=\"item\">&&</div>",
"图片":"data-bg=\"&&\"",
"标题":"\"title\"*>&&</a>",
"副标题":"<span class=\"desc\">&&</span>",
"分类url":"https://dm84.tv/show-{cateId}--{by}-{class}--{year}-{catePg}.html",
"分类":"国产动漫$1#日本动漫$2#欧美动漫$3#电影$4",
"筛选":{
"1":[
{"key":"class","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":"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"}
]
},
{"key":"by","name":"排序","value":[
{"n":"按时间","v":"time"},
{"n":"按人气","v":"hits"},
{"n":"按评分","v":"score"}
]
}
],
"2":[
{"key":"class","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":"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"}
]
},
{"key":"by","name":"排序","value":[
{"n":"按时间","v":"time"},
{"n":"按人气","v":"hits"},
{"n":"按评分","v":"score"}
]
}
],
"3":[
{"key":"class","name":"类型","value":[
{"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"}
]
},
{"key":"by","name":"排序","value":[
{"n":"按时间","v":"time"},
{"n":"按人气","v":"hits"},
{"n":"按评分","v":"score"}
]
}
],
"4":[
{"key":"class","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":"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"}
]
},
{"key":"by","name":"排序","value":[
{"n":"按时间","v":"time"},
{"n":"按人气","v":"hits"},
{"n":"按评分","v":"score"}
]
}
]
}
}

View File

@ -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(\'<em class="keyword">\',"").replace("</em>","");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)',
}

View File

@ -0,0 +1,56 @@
{
"作者":"",
"站名":"圣城影视",
"主页url":"https://sc1080.top/",
"简介":"【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+剧情:</span>&&</span>",
"导演":"导演:&&</div>",
"主演":"主演:&&</div>",
"影片状态":"集数:&&</div>",
"影片类型":"icon-cate-ds\">&&</a>",
"数组":"module-item-pic\">&&module-item\">",
"标题":"title=\"&&\"",
"副标题":"module-item-text\"&&</div>",
"图片":"data-src=\"&&\"",
"链接":"href=\"&&\"",
"搜索url":"/index.php/vod/search.html?wd={wd}",
"搜索数组":"lazy lazyload\"&&<h3>[不包含:肥猫不肥#神秘的哥哥]",
"搜索标题":"alt=\"&&\"",
"搜索副标题":"title=*>&&</a>",
"搜索图片":"data-src=\"&&\"",
"搜索链接":"href=\"&&\"",
"线路数组":"data-dropdown-value=&&</div>[排序:蓝光ZK][不包含:备用#鸡儿云#飞速云#新浪云#金鹰云#火狐云]",
"线路标题":"神仙影视+<span>&&</small>[替换:</span><small>>>共]+集",
"播放数组":"sort-item\"&&</div>",
"播放标题":"<span>&&</span>",
"播放列表":"<a&&</a>",
"分类url":"https://sc1080.top/index.php/vod/show/area/{area}/by/{by}/class/{class}/id/{cateId}/page/{catePg}/year/{year}.html",
"分类":"电影$1#电视剧$2#综艺$3#动漫$4#bilibli$5#记录片$6#奈飞片库$7#4K片库$8#次元城片库$9"
}

View File

@ -0,0 +1,28 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"意大利语"}
],
"filter":
{
"英语学习":[{"key":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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":"order","name":"排序","value":[{"n":"综合排序","v":"0"},{"n":"最多点击","v":"click"},{"n":"最新发布","v":"pubdate"},{"n":"最多弹幕","v":"dm"},{"n":"最多收藏","v":"stow"}]},{"key":"tid","name":"分类","value":[{"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"}]}]
}
}

View File

@ -0,0 +1,36 @@
var rule={
title:'奇米动漫',
host:'http://www.qimiqimi.net',
url:'/show/fyclassfyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.area}}{{fl.by}}{{fl.class}}{{fl.letter}}/page/fypage{{fl.year}}',
filter: {
"xinfan":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"n":"冒险","v":"/class/冒险"},{"n":"热血","v":"/class/热血"},{"n":"奇幻","v":"/class/奇幻"},{"n":"恋爱","v":"/class/恋爱"},{"n":"校园","v":"/class/校园"},{"n":"后宫","v":"/class/后宫"},{"n":"搞笑","v":"/class/搞笑"},{"n":"治愈","v":"/class/治愈"},{"n":"神魔","v":"/class/神魔"},{"n":"魔法","v":"/class/魔法"},{"n":"百合","v":"/class/百合"},{"n":"推理","v":"/class/推理"},{"n":"科幻","v":"/class/科幻"},{"n":"竞技","v":"/class/竞技"},{"n":"悬疑","v":"/class/悬疑"},{"n":"青春","v":"/class/青春"},{"n":"战争","v":"/class/战争"},{"n":"萝莉","v":"/class/萝莉"},{"n":"魔幻","v":"/class/魔幻"},{"n":"战斗","v":"/class/战斗"},{"n":"日常","v":"/class/日常"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"/area/日本/"},{"n":"大陆","v":"/area/中国/"},{"n":"欧美","v":"/area/欧美/"},{"n":"韩国","v":"/area/韩国/"},{"n":"港台","v":"/area/港台/"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"},{"n":"2007","v":"/year/2007"},{"n":"2006","v":"/year/2006"},{"n":"2005","v":"/year/2005"},{"n":"2004","v":"/year/2004"},{"n":"2003","v":"/year/2003"},{"n":"2002","v":"/year/2002"},{"n":"2001","v":"/year/2001"},{"n":"2000","v":"/year/2000"}]},{"key":"letter","name":"字母","value":[{"n":"字母","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"riman":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"n":"冒险","v":"/class/冒险"},{"n":"热血","v":"/class/热血"},{"n":"奇幻","v":"/class/奇幻"},{"n":"恋爱","v":"/class/恋爱"},{"n":"校园","v":"/class/校园"},{"n":"后宫","v":"/class/后宫"},{"n":"搞笑","v":"/class/搞笑"},{"n":"治愈","v":"/class/治愈"},{"n":"神魔","v":"/class/神魔"},{"n":"魔法","v":"/class/魔法"},{"n":"百合","v":"/class/百合"},{"n":"推理","v":"/class/推理"},{"n":"科幻","v":"/class/科幻"},{"n":"竞技","v":"/class/竞技"},{"n":"悬疑","v":"/class/悬疑"},{"n":"青春","v":"/class/青春"},{"n":"战争","v":"/class/战争"},{"n":"萝莉","v":"/class/萝莉"},{"n":"魔幻","v":"/class/魔幻"},{"n":"战斗","v":"/class/战斗"},{"n":"日常","v":"/class/日常"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"/area/日本/"},{"n":"大陆","v":"/area/中国/"},{"n":"欧美","v":"/area/欧美/"},{"n":"韩国","v":"/area/韩国/"},{"n":"港台","v":"/area/港台/"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"},{"n":"2007","v":"/year/2007"},{"n":"2006","v":"/year/2006"},{"n":"2005","v":"/year/2005"},{"n":"2004","v":"/year/2004"},{"n":"2003","v":"/year/2003"},{"n":"2002","v":"/year/2002"},{"n":"2001","v":"/year/2001"},{"n":"2000","v":"/year/2000"}]},{"key":"letter","name":"字母","value":[{"n":"字母","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"guoman":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"n":"冒险","v":"/class/冒险"},{"n":"热血","v":"/class/热血"},{"n":"奇幻","v":"/class/奇幻"},{"n":"恋爱","v":"/class/恋爱"},{"n":"校园","v":"/class/校园"},{"n":"后宫","v":"/class/后宫"},{"n":"搞笑","v":"/class/搞笑"},{"n":"治愈","v":"/class/治愈"},{"n":"神魔","v":"/class/神魔"},{"n":"魔法","v":"/class/魔法"},{"n":"百合","v":"/class/百合"},{"n":"推理","v":"/class/推理"},{"n":"科幻","v":"/class/科幻"},{"n":"竞技","v":"/class/竞技"},{"n":"悬疑","v":"/class/悬疑"},{"n":"青春","v":"/class/青春"},{"n":"战争","v":"/class/战争"},{"n":"萝莉","v":"/class/萝莉"},{"n":"魔幻","v":"/class/魔幻"},{"n":"战斗","v":"/class/战斗"},{"n":"日常","v":"/class/日常"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"/area/日本/"},{"n":"大陆","v":"/area/中国/"},{"n":"欧美","v":"/area/欧美/"},{"n":"韩国","v":"/area/韩国/"},{"n":"港台","v":"/area/港台/"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"},{"n":"2007","v":"/year/2007"},{"n":"2006","v":"/year/2006"},{"n":"2005","v":"/year/2005"},{"n":"2004","v":"/year/2004"},{"n":"2003","v":"/year/2003"},{"n":"2002","v":"/year/2002"},{"n":"2001","v":"/year/2001"},{"n":"2000","v":"/year/2000"}]},{"key":"letter","name":"字母","value":[{"n":"字母","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"jcdm":[{"key":"class","name":"类型","value":[{"n":"全部","v":""},{"n":"冒险","v":"/class/冒险"},{"n":"热血","v":"/class/热血"},{"n":"奇幻","v":"/class/奇幻"},{"n":"恋爱","v":"/class/恋爱"},{"n":"校园","v":"/class/校园"},{"n":"后宫","v":"/class/后宫"},{"n":"搞笑","v":"/class/搞笑"},{"n":"治愈","v":"/class/治愈"},{"n":"神魔","v":"/class/神魔"},{"n":"魔法","v":"/class/魔法"},{"n":"百合","v":"/class/百合"},{"n":"推理","v":"/class/推理"},{"n":"科幻","v":"/class/科幻"},{"n":"竞技","v":"/class/竞技"},{"n":"悬疑","v":"/class/悬疑"},{"n":"青春","v":"/class/青春"},{"n":"战争","v":"/class/战争"},{"n":"萝莉","v":"/class/萝莉"},{"n":"魔幻","v":"/class/魔幻"},{"n":"战斗","v":"/class/战斗"},{"n":"日常","v":"/class/日常"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"/area/日本/"},{"n":"大陆","v":"/area/中国/"},{"n":"欧美","v":"/area/欧美/"},{"n":"韩国","v":"/area/韩国/"},{"n":"港台","v":"/area/港台/"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"},{"n":"2007","v":"/year/2007"},{"n":"2006","v":"/year/2006"},{"n":"2005","v":"/year/2005"},{"n":"2004","v":"/year/2004"},{"n":"2003","v":"/year/2003"},{"n":"2002","v":"/year/2002"},{"n":"2001","v":"/year/2001"},{"n":"2000","v":"/year/2000"}]},{"key":"letter","name":"字母","value":[{"n":"字母","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}]
},
searchable:2,//是否启用全局搜索,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent': 'PC_UA',
},
class_parse: '#nav li;a&&Text;a&&href;.*/(\\w+).html',
cate_exclude:'番组专题|最近更新',
play_parse: true,
lazy:'',
limit:6,
推荐:'*;*;*;.text&&Text;*',
一级:'.img-list li;a&&title;img&&src;i&&Text;a&&href',
二级:{
"title":"h1&&Text;dl.fn-left:eq(3)&&Text",
"img":".detail-pic&&img&&src",
"desc":"dl.fn-left:eq(2)&&Text;;;.nyzhuy--dt&&Text;.fn-right:eq(0)--dt&&Text",
"content":".tjuqing&&Text",
"tabs":".down-title h2",
"lists":".video_list:eq(#id) a"
},
searchUrl:'/index.php/ajax/suggest?mid=1&wd=**&limit=50',
detailUrl:'/detail/fyid.html', //非必填,二级详情拼接链接
搜索:'json:list;name;pic;;id',
}

View File

@ -0,0 +1,32 @@
var rule={
title:'妮可动漫',
host:'http://www.nicotv.vip',
url:'/video/fyclass/fyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.class}}-{{fl.area}}-{{fl.year}}----{{fl.by}}-fypage',
filter: {"type3":[{"key":"class","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":"萝莉"}]},{"key":"area","name":"地区","value":[{"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","v":"2014"},{"n":"2010-2000","v":"20002010"},{"n":"90年代","v":"19901999"},{"n":"更早","v":"18001989"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"addtime"},{"n":"热播","v":"hits"},{"n":"评分","v":"gold"}]}]},
filter_def:{
type3:{by:'addtime'}
},
searchUrl:'/vod-search-wd-**-p-fypage.html',
searchable:2,//是否启用全局搜索,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent': 'MOBILE_UA',
},
class_name:'全部',
class_url:'type3',
play_parse: true,
lazy:'js:let src=jsp.pd(request(input),"#cms_player&&script&&src");let cms_player=JSON.parse(request(src).match(/cms_player = (.*?);document/)[1]);/360lifan/.test(cms_player.name)?input={jx:0,url:cms_player.url+"&time="+cms_player.time+"&auth_key="+cms_player.auth_key,parse:1,header:JSON.stringify({"user-agent":"Mozilla/5.0"})}:/url=/.test(cms_player.url)?input=cms_player.url.split("url=")[1]:input={jx:0,url:cms_player.jiexi+cms_player.url+"&time="+cms_player.time+"&auth_key="+cms_player.auth_key,parse:1,header:JSON.stringify({"user-agent":"Mozilla/5.0"})}',
limit:6,
推荐:'*',
一级:'.list-unstyled li;h2&&Text;img&&data-original;.continu&&Text;a&&href',
二级:{
"title":".media-body a&&Text;.ff-text-right:eq(2)&&Text",
"img":".media-left&&img&&data-original",
"desc":".ff-score&&Text;.ff-text-right:eq(4)&&Text;.ff-text-right:eq(3)&&Text;.ff-text-right:eq(0)&&Text;.ff-text-right:eq(1)&&Text",
"content":".vod-content&&Text",
"tabs":".nav.nav-tabs li",
"lists":".tab-pane:eq(#id) li"
},
搜索:'*',
}

View File

@ -0,0 +1,46 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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"}]}]
}
}

View File

@ -0,0 +1,183 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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": "10天玩转世界top10博物馆"},
{"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":"top10名校","type_id": "10天游遍世界top10名校"},
{"type_name":"top10名画","type_id": "看懂世界top10名画"},
{"type_name":"地球","type_id": "【全8集】舌尖上的地球"},
//地理
{"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": "神奇的汉字故事 全20集"},
{"type_name":"唐诗大世界","type_id": "穿越唐诗大世界"},
{"type_name":"诗词大会","type_id": "【小灯塔】诗词大会"},
{"type_name":"三字经","type_id": "三字经幼儿启蒙(56集超清全)"},
{"type_name":"西游记","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"经典神话","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"成语故事","type_id": "【100集全】成语故事动画 小灯塔成语动画"},
{"type_name":"中华名人故事","type_id": "【小灯塔】中华名人故事"},
{"type_name":"山海经","type_id": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"type_name":"三国动画","type_id": "三国动画故事24节全"},
{"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":"STEM奇妙科学课","type_id": "小灯塔STEM奇妙科学课"},
{"type_name":"出发吧,月球!","type_id": "小灯塔出发吧,月球!"},
{"type_name":"十大世界未解之谜","type_id": "小灯塔探秘十大世界未解之谜"},
{"type_name":"神奇的气象魔法","type_id": "小灯塔神奇的气象魔法"},
{"type_name":"了不起的新科技","type_id": "小灯塔了不起的新科技"}
],
// 筛选条件字典
"filter":{
//百科
"10天玩转世界top10博物馆":[
{"key":"tid","name":"分类","value":[
{"n":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆","v":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆"},
{"n":"玩转世界博物馆第二季","v":"玩转世界博物馆第二季"},
{"n":"【合集】带孩子探秘恐龙世界 中文版","v":"【合集】带孩子探秘恐龙世界 中文版"},
{"n":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)","v":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)"},
{"n":"奇趣生物大百科","v":"奇趣生物大百科"},
{"n":"玩转奇妙的动物世界","v":"玩转奇妙的动物世界"},
{"n":"【小灯塔】给孩子的植物启蒙课","v":"【小灯塔】给孩子的植物启蒙课"},
{"n":"昆虫记","v":"昆虫记"},
{"n":"【小灯塔】昆虫记走进昆虫世界","v":"【小灯塔】昆虫记走进昆虫世界"},
{"n":"探秘故宫角落","v":"探秘故宫角落"},
{"n":"10天游遍世界top10名校","v":"10天游遍世界top10名校"},
{"n":"看懂世界top10名画","v":"看懂世界top10名画"},
{"n":"【全8集】舌尖上的地球","v":"【全8集】舌尖上的地球"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//国学
"神奇的汉字故事 全20集":[
{"key":"tid","name":"分类","value":[
{"n":"神奇的汉字故事 全20集","v":"神奇的汉字故事 全20集"},
{"n":"穿越唐诗大世界","v":"穿越唐诗大世界"},
{"n":"【小灯塔】诗词大会","v":"【小灯塔】诗词大会"},
{"n":"三字经幼儿启蒙(56集超清全)","v":"三字经幼儿启蒙(56集超清全)"},
{"n":"30集西游记精选故事 给孩子看的经典神话","v": "30集西游记精选故事 给孩子看的经典神话"},
{"n":"【100集全】成语故事动画 小灯塔成语动画","v": "【100集全】成语故事动画 小灯塔成语动画"},
{"n":"【小灯塔】中华名人故事","v": "【小灯塔】中华名人故事"},
{"n":"20集全【给孩子的山海经】小灯塔趣味动画","v": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"n":"三国动画故事24节全","v": "三国动画故事24节全"},
{"n":"【小灯塔】春节习俗追根溯源立春节","v": "【小灯塔】春节习俗追根溯源立春节"},
{"n":"【小灯塔】十二生肖","v": "【小灯塔】十二生肖"},
{"n":"【小灯塔】中华上下五千年","v": "【小灯塔】中华上下五千年"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//地理
"给孩子的第一堂海洋课【完结】":[
{"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": "小灯塔 非洲大冒险"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//科学
"小灯塔.剑桥数学启蒙课(全)":[
{"key":"tid","name":"分类","value":[
{"n":"小灯塔.剑桥数学启蒙课(全)","v": "小灯塔.剑桥数学启蒙课(全)"},
{"n":"奇趣科学实验室","v": "小灯塔奇趣科学实验室"},
{"n":"剑桥数学启蒙课","v": "小灯塔剑桥数学启蒙课"},
{"n":"宇宙探秘之旅","v": "小灯塔十大主题宇宙探秘之旅"},
{"n":"跟动物老师学发明","v": "小灯塔跟动物老师学发明"},
{"n":"天才发明家","v": "小灯塔天才发明家"},
{"n":"剑桥博士讲物理","v": "小灯塔剑桥博士讲物理"},
{"n":"STEM奇妙科学课","v": "小灯塔STEM奇妙科学课"},
{"n":"出发吧,月球!","v": "小灯塔出发吧,月球!"},
{"n":"十大世界未解之谜","v": "小灯塔探秘十大世界未解之谜"},
{"n":"神奇的气象魔法","v": "小灯塔神奇的气象魔法"},
{"n":"了不起的新科技","v": "小灯塔了不起的新科技"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//人文
"给孩子的第一堂性教育课":[
{"key":"tid","name":"分类","value":[
{"n":"给孩子的第一堂性教育课","v": "给孩子的第一堂性教育课"},
{"n":"小灯塔安全教育课","v": "小灯塔安全教育课"},
{"n":"影响十万少年的人际沟通课","v": "影响十万少年的人际沟通课"},
{"n":"跟着棋圣学围棋","v": "小灯塔跟着棋圣学围棋"},
{"n":"小灯塔财商启蒙课","v": "小灯塔财商启蒙课"},
{"n":"小灯塔人体奥秘","v": "小灯塔人体奥秘"},
{"n":"讲给孩子的人类简史","v": "小灯塔讲给孩子的人类简史"},
{"n":"讲给孩子的希腊神话故事","v": "小灯塔讲给孩子的希腊神话故事"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}]
}
}

View File

@ -0,0 +1,181 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes": [
//国学
{"type_name":"国学","type_id": "神奇的汉字故事 全20集"},
{"type_name":"唐诗大世界","type_id": "穿越唐诗大世界"},
{"type_name":"诗词大会","type_id": "【小灯塔】诗词大会"},
{"type_name":"三字经","type_id": "三字经幼儿启蒙(56集超清全)"},
{"type_name":"西游记","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"经典神话","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"成语故事","type_id": "【100集全】成语故事动画 小灯塔成语动画"},
{"type_name":"中华名人故事","type_id": "【小灯塔】中华名人故事"},
{"type_name":"山海经","type_id": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"type_name":"三国动画","type_id": "三国动画故事24节全"},
{"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":"STEM奇妙科学课","type_id": "小灯塔STEM奇妙科学课"},
{"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": "10天玩转世界top10博物馆"},
{"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":"top10名校","type_id": "10天游遍世界top10名校"},
{"type_name":"top10名画","type_id": "看懂世界top10名画"},
{"type_name":"地球","type_id": "【全8集】舌尖上的地球"},
//地理
{"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":{
//百科
"10天玩转世界top10博物馆":[
{"key":"tid","name":"分类","value":[
{"n":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆","v":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆"},
{"n":"玩转世界博物馆第二季","v":"玩转世界博物馆第二季"},
{"n":"【合集】带孩子探秘恐龙世界 中文版","v":"【合集】带孩子探秘恐龙世界 中文版"},
{"n":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)","v":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)"},
{"n":"奇趣生物大百科","v":"奇趣生物大百科"},
{"n":"玩转奇妙的动物世界","v":"玩转奇妙的动物世界"},
{"n":"【小灯塔】给孩子的植物启蒙课","v":"【小灯塔】给孩子的植物启蒙课"},
{"n":"昆虫记","v":"昆虫记"},
{"n":"【小灯塔】昆虫记走进昆虫世界","v":"【小灯塔】昆虫记走进昆虫世界"},
{"n":"探秘故宫角落","v":"探秘故宫角落"},
{"n":"10天游遍世界top10名校","v":"10天游遍世界top10名校"},
{"n":"看懂世界top10名画","v":"看懂世界top10名画"},
{"n":"【全8集】舌尖上的地球","v":"【全8集】舌尖上的地球"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//国学
"神奇的汉字故事 全20集":[
{"key":"tid","name":"分类","value":[
{"n":"神奇的汉字故事 全20集","v":"神奇的汉字故事 全20集"},
{"n":"穿越唐诗大世界","v":"穿越唐诗大世界"},
{"n":"【小灯塔】诗词大会","v":"【小灯塔】诗词大会"},
{"n":"三字经幼儿启蒙(56集超清全)","v":"三字经幼儿启蒙(56集超清全)"},
{"n":"30集西游记精选故事 给孩子看的经典神话","v": "30集西游记精选故事 给孩子看的经典神话"},
{"n":"【100集全】成语故事动画 小灯塔成语动画","v": "【100集全】成语故事动画 小灯塔成语动画"},
{"n":"【小灯塔】中华名人故事","v": "【小灯塔】中华名人故事"},
{"n":"20集全【给孩子的山海经】小灯塔趣味动画","v": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"n":"三国动画故事24节全","v": "三国动画故事24节全"},
{"n":"【小灯塔】春节习俗追根溯源立春节","v": "【小灯塔】春节习俗追根溯源立春节"},
{"n":"【小灯塔】十二生肖","v": "【小灯塔】十二生肖"},
{"n":"【小灯塔】中华上下五千年","v": "【小灯塔】中华上下五千年"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//地理
"给孩子的第一堂海洋课【完结】":[
{"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": "小灯塔 非洲大冒险"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//科学
"小灯塔.剑桥数学启蒙课(全)":[
{"key":"tid","name":"分类","value":[
{"n":"小灯塔.剑桥数学启蒙课(全)","v": "小灯塔.剑桥数学启蒙课(全)"},
{"n":"奇趣科学实验室","v": "小灯塔奇趣科学实验室"},
{"n":"剑桥数学启蒙课","v": "小灯塔剑桥数学启蒙课"},
{"n":"宇宙探秘之旅","v": "小灯塔十大主题宇宙探秘之旅"},
{"n":"跟动物老师学发明","v": "小灯塔跟动物老师学发明"},
{"n":"天才发明家","v": "小灯塔天才发明家"},
{"n":"剑桥博士讲物理","v": "小灯塔剑桥博士讲物理"},
{"n":"STEM奇妙科学课","v": "小灯塔STEM奇妙科学课"},
{"n":"出发吧,月球!","v": "小灯塔出发吧,月球!"},
{"n":"十大世界未解之谜","v": "小灯塔探秘十大世界未解之谜"},
{"n":"神奇的气象魔法","v": "小灯塔神奇的气象魔法"},
{"n":"了不起的新科技","v": "小灯塔了不起的新科技"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//人文
"给孩子的第一堂性教育课":[
{"key":"tid","name":"分类","value":[
{"n":"给孩子的第一堂性教育课","v": "给孩子的第一堂性教育课"},
{"n":"小灯塔安全教育课","v": "小灯塔安全教育课"},
{"n":"影响十万少年的人际沟通课","v": "影响十万少年的人际沟通课"},
{"n":"跟着棋圣学围棋","v": "小灯塔跟着棋圣学围棋"},
{"n":"小灯塔财商启蒙课","v": "小灯塔财商启蒙课"},
{"n":"小灯塔人体奥秘","v": "小灯塔人体奥秘"},
{"n":"讲给孩子的人类简史","v": "小灯塔讲给孩子的人类简史"},
{"n":"讲给孩子的希腊神话故事","v": "小灯塔讲给孩子的希腊神话故事"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}]
}
}

View File

@ -0,0 +1,180 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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": "神奇的汉字故事 全20集"},
{"type_name":"唐诗大世界","type_id": "穿越唐诗大世界"},
{"type_name":"诗词大会","type_id": "【小灯塔】诗词大会"},
{"type_name":"三字经","type_id": "三字经幼儿启蒙(56集超清全)"},
{"type_name":"西游记","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"经典神话","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"成语故事","type_id": "【100集全】成语故事动画 小灯塔成语动画"},
{"type_name":"中华名人故事","type_id": "【小灯塔】中华名人故事"},
{"type_name":"山海经","type_id": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"type_name":"三国动画","type_id": "三国动画故事24节全"},
{"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":"STEM奇妙科学课","type_id": "小灯塔STEM奇妙科学课"},
{"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": "10天玩转世界top10博物馆"},
{"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":"top10名校","type_id": "10天游遍世界top10名校"},
{"type_name":"top10名画","type_id": "看懂世界top10名画"},
{"type_name":"地球","type_id": "【全8集】舌尖上的地球"}
],
// 筛选条件字典
"filter":{
//百科
"10天玩转世界top10博物馆":[
{"key":"tid","name":"分类","value":[
{"n":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆","v":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆"},
{"n":"玩转世界博物馆第二季","v":"玩转世界博物馆第二季"},
{"n":"【合集】带孩子探秘恐龙世界 中文版","v":"【合集】带孩子探秘恐龙世界 中文版"},
{"n":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)","v":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)"},
{"n":"奇趣生物大百科","v":"奇趣生物大百科"},
{"n":"玩转奇妙的动物世界","v":"玩转奇妙的动物世界"},
{"n":"【小灯塔】给孩子的植物启蒙课","v":"【小灯塔】给孩子的植物启蒙课"},
{"n":"昆虫记","v":"昆虫记"},
{"n":"【小灯塔】昆虫记走进昆虫世界","v":"【小灯塔】昆虫记走进昆虫世界"},
{"n":"探秘故宫角落","v":"探秘故宫角落"},
{"n":"10天游遍世界top10名校","v":"10天游遍世界top10名校"},
{"n":"看懂世界top10名画","v":"看懂世界top10名画"},
{"n":"【全8集】舌尖上的地球","v":"【全8集】舌尖上的地球"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//国学
"神奇的汉字故事 全20集":[
{"key":"tid","name":"分类","value":[
{"n":"神奇的汉字故事 全20集","v":"神奇的汉字故事 全20集"},
{"n":"穿越唐诗大世界","v":"穿越唐诗大世界"},
{"n":"【小灯塔】诗词大会","v":"【小灯塔】诗词大会"},
{"n":"三字经幼儿启蒙(56集超清全)","v":"三字经幼儿启蒙(56集超清全)"},
{"n":"30集西游记精选故事 给孩子看的经典神话","v": "30集西游记精选故事 给孩子看的经典神话"},
{"n":"【100集全】成语故事动画 小灯塔成语动画","v": "【100集全】成语故事动画 小灯塔成语动画"},
{"n":"【小灯塔】中华名人故事","v": "【小灯塔】中华名人故事"},
{"n":"20集全【给孩子的山海经】小灯塔趣味动画","v": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"n":"三国动画故事24节全","v": "三国动画故事24节全"},
{"n":"【小灯塔】春节习俗追根溯源立春节","v": "【小灯塔】春节习俗追根溯源立春节"},
{"n":"【小灯塔】十二生肖","v": "【小灯塔】十二生肖"},
{"n":"【小灯塔】中华上下五千年","v": "【小灯塔】中华上下五千年"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//地理
"给孩子的第一堂海洋课【完结】":[
{"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": "小灯塔 非洲大冒险"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//科学
"小灯塔.剑桥数学启蒙课(全)":[
{"key":"tid","name":"分类","value":[
{"n":"小灯塔.剑桥数学启蒙课(全)","v": "小灯塔.剑桥数学启蒙课(全)"},
{"n":"奇趣科学实验室","v": "小灯塔奇趣科学实验室"},
{"n":"剑桥数学启蒙课","v": "小灯塔剑桥数学启蒙课"},
{"n":"宇宙探秘之旅","v": "小灯塔十大主题宇宙探秘之旅"},
{"n":"跟动物老师学发明","v": "小灯塔跟动物老师学发明"},
{"n":"天才发明家","v": "小灯塔天才发明家"},
{"n":"剑桥博士讲物理","v": "小灯塔剑桥博士讲物理"},
{"n":"STEM奇妙科学课","v": "小灯塔STEM奇妙科学课"},
{"n":"出发吧,月球!","v": "小灯塔出发吧,月球!"},
{"n":"十大世界未解之谜","v": "小灯塔探秘十大世界未解之谜"},
{"n":"神奇的气象魔法","v": "小灯塔神奇的气象魔法"},
{"n":"了不起的新科技","v": "小灯塔了不起的新科技"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//人文
"给孩子的第一堂性教育课":[
{"key":"tid","name":"分类","value":[
{"n":"给孩子的第一堂性教育课","v": "给孩子的第一堂性教育课"},
{"n":"小灯塔安全教育课","v": "小灯塔安全教育课"},
{"n":"影响十万少年的人际沟通课","v": "影响十万少年的人际沟通课"},
{"n":"跟着棋圣学围棋","v": "小灯塔跟着棋圣学围棋"},
{"n":"小灯塔财商启蒙课","v": "小灯塔财商启蒙课"},
{"n":"小灯塔人体奥秘","v": "小灯塔人体奥秘"},
{"n":"讲给孩子的人类简史","v": "小灯塔讲给孩子的人类简史"},
{"n":"讲给孩子的希腊神话故事","v": "小灯塔讲给孩子的希腊神话故事"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}]
}
}

View File

@ -0,0 +1,180 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.txt,
"classes": [
//百科
{"type_name":"百科","type_id": "10天玩转世界top10博物馆"},
{"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":"top10名校","type_id": "10天游遍世界top10名校"},
{"type_name":"top10名画","type_id": "看懂世界top10名画"},
{"type_name":"地球","type_id": "【全8集】舌尖上的地球"},
//地理
{"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": "神奇的汉字故事 全20集"},
{"type_name":"唐诗大世界","type_id": "穿越唐诗大世界"},
{"type_name":"诗词大会","type_id": "【小灯塔】诗词大会"},
{"type_name":"三字经","type_id": "三字经幼儿启蒙(56集超清全)"},
{"type_name":"西游记","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"经典神话","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"成语故事","type_id": "【100集全】成语故事动画 小灯塔成语动画"},
{"type_name":"中华名人故事","type_id": "【小灯塔】中华名人故事"},
{"type_name":"山海经","type_id": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"type_name":"三国动画","type_id": "三国动画故事24节全"},
{"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":"STEM奇妙科学课","type_id": "小灯塔STEM奇妙科学课"},
{"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":{
//百科
"10天玩转世界top10博物馆":[
{"key":"tid","name":"分类","value":[
{"n":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆","v":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆"},
{"n":"玩转世界博物馆第二季","v":"玩转世界博物馆第二季"},
{"n":"【合集】带孩子探秘恐龙世界 中文版","v":"【合集】带孩子探秘恐龙世界 中文版"},
{"n":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)","v":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)"},
{"n":"奇趣生物大百科","v":"奇趣生物大百科"},
{"n":"玩转奇妙的动物世界","v":"玩转奇妙的动物世界"},
{"n":"【小灯塔】给孩子的植物启蒙课","v":"【小灯塔】给孩子的植物启蒙课"},
{"n":"昆虫记","v":"昆虫记"},
{"n":"【小灯塔】昆虫记走进昆虫世界","v":"【小灯塔】昆虫记走进昆虫世界"},
{"n":"探秘故宫角落","v":"探秘故宫角落"},
{"n":"10天游遍世界top10名校","v":"10天游遍世界top10名校"},
{"n":"看懂世界top10名画","v":"看懂世界top10名画"},
{"n":"【全8集】舌尖上的地球","v":"【全8集】舌尖上的地球"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//国学
"神奇的汉字故事 全20集":[
{"key":"tid","name":"分类","value":[
{"n":"神奇的汉字故事 全20集","v":"神奇的汉字故事 全20集"},
{"n":"穿越唐诗大世界","v":"穿越唐诗大世界"},
{"n":"【小灯塔】诗词大会","v":"【小灯塔】诗词大会"},
{"n":"三字经幼儿启蒙(56集超清全)","v":"三字经幼儿启蒙(56集超清全)"},
{"n":"30集西游记精选故事 给孩子看的经典神话","v": "30集西游记精选故事 给孩子看的经典神话"},
{"n":"【100集全】成语故事动画 小灯塔成语动画","v": "【100集全】成语故事动画 小灯塔成语动画"},
{"n":"【小灯塔】中华名人故事","v": "【小灯塔】中华名人故事"},
{"n":"20集全【给孩子的山海经】小灯塔趣味动画","v": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"n":"三国动画故事24节全","v": "三国动画故事24节全"},
{"n":"【小灯塔】春节习俗追根溯源立春节","v": "【小灯塔】春节习俗追根溯源立春节"},
{"n":"【小灯塔】十二生肖","v": "【小灯塔】十二生肖"},
{"n":"【小灯塔】中华上下五千年","v": "【小灯塔】中华上下五千年"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//地理
"给孩子的第一堂海洋课【完结】":[
{"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": "小灯塔 非洲大冒险"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//科学
"小灯塔.剑桥数学启蒙课(全)":[
{"key":"tid","name":"分类","value":[
{"n":"小灯塔.剑桥数学启蒙课(全)","v": "小灯塔.剑桥数学启蒙课(全)"},
{"n":"奇趣科学实验室","v": "小灯塔奇趣科学实验室"},
{"n":"剑桥数学启蒙课","v": "小灯塔剑桥数学启蒙课"},
{"n":"宇宙探秘之旅","v": "小灯塔十大主题宇宙探秘之旅"},
{"n":"跟动物老师学发明","v": "小灯塔跟动物老师学发明"},
{"n":"天才发明家","v": "小灯塔天才发明家"},
{"n":"剑桥博士讲物理","v": "小灯塔剑桥博士讲物理"},
{"n":"STEM奇妙科学课","v": "小灯塔STEM奇妙科学课"},
{"n":"出发吧,月球!","v": "小灯塔出发吧,月球!"},
{"n":"十大世界未解之谜","v": "小灯塔探秘十大世界未解之谜"},
{"n":"神奇的气象魔法","v": "小灯塔神奇的气象魔法"},
{"n":"了不起的新科技","v": "小灯塔了不起的新科技"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//人文
"给孩子的第一堂性教育课":[
{"key":"tid","name":"分类","value":[
{"n":"给孩子的第一堂性教育课","v": "给孩子的第一堂性教育课"},
{"n":"小灯塔安全教育课","v": "小灯塔安全教育课"},
{"n":"影响十万少年的人际沟通课","v": "影响十万少年的人际沟通课"},
{"n":"跟着棋圣学围棋","v": "小灯塔跟着棋圣学围棋"},
{"n":"小灯塔财商启蒙课","v": "小灯塔财商启蒙课"},
{"n":"小灯塔人体奥秘","v": "小灯塔人体奥秘"},
{"n":"讲给孩子的人类简史","v": "小灯塔讲给孩子的人类简史"},
{"n":"讲给孩子的希腊神话故事","v": "小灯塔讲给孩子的希腊神话故事"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}]
}
}

View File

@ -0,0 +1,182 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"STEM奇妙科学课","type_id": "小灯塔STEM奇妙科学课"},
{"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": "10天玩转世界top10博物馆"},
{"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":"top10名校","type_id": "10天游遍世界top10名校"},
{"type_name":"top10名画","type_id": "看懂世界top10名画"},
{"type_name":"地球","type_id": "【全8集】舌尖上的地球"},
//地理
{"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": "神奇的汉字故事 全20集"},
{"type_name":"唐诗大世界","type_id": "穿越唐诗大世界"},
{"type_name":"诗词大会","type_id": "【小灯塔】诗词大会"},
{"type_name":"三字经","type_id": "三字经幼儿启蒙(56集超清全)"},
{"type_name":"西游记","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"经典神话","type_id": "30集西游记精选故事 给孩子看的经典神话"},
{"type_name":"成语故事","type_id": "【100集全】成语故事动画 小灯塔成语动画"},
{"type_name":"中华名人故事","type_id": "【小灯塔】中华名人故事"},
{"type_name":"山海经","type_id": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"type_name":"三国动画","type_id": "三国动画故事24节全"},
{"type_name":"春节习俗","type_id": "【小灯塔】春节习俗追根溯源立春节"},
{"type_name":"少儿版三国演义","type_id": "小灯塔少儿版三国演义"},
{"type_name":"十二生肖","type_id": "【小灯塔】十二生肖"},
{"type_name":"中华上下五千年","type_id": "【小灯塔】中华上下五千年"}
],
// 筛选条件字典
"filter":{
//百科
"10天玩转世界top10博物馆":[
{"key":"tid","name":"分类","value":[
{"n":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆","v":"【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆"},
{"n":"玩转世界博物馆第二季","v":"玩转世界博物馆第二季"},
{"n":"【合集】带孩子探秘恐龙世界 中文版","v":"【合集】带孩子探秘恐龙世界 中文版"},
{"n":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)","v":"【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)"},
{"n":"奇趣生物大百科","v":"奇趣生物大百科"},
{"n":"玩转奇妙的动物世界","v":"玩转奇妙的动物世界"},
{"n":"【小灯塔】给孩子的植物启蒙课","v":"【小灯塔】给孩子的植物启蒙课"},
{"n":"昆虫记","v":"昆虫记"},
{"n":"【小灯塔】昆虫记走进昆虫世界","v":"【小灯塔】昆虫记走进昆虫世界"},
{"n":"探秘故宫角落","v":"探秘故宫角落"},
{"n":"10天游遍世界top10名校","v":"10天游遍世界top10名校"},
{"n":"看懂世界top10名画","v":"看懂世界top10名画"},
{"n":"【全8集】舌尖上的地球","v":"【全8集】舌尖上的地球"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//国学
"神奇的汉字故事 全20集":[
{"key":"tid","name":"分类","value":[
{"n":"神奇的汉字故事 全20集","v":"神奇的汉字故事 全20集"},
{"n":"穿越唐诗大世界","v":"穿越唐诗大世界"},
{"n":"【小灯塔】诗词大会","v":"【小灯塔】诗词大会"},
{"n":"三字经幼儿启蒙(56集超清全)","v":"三字经幼儿启蒙(56集超清全)"},
{"n":"30集西游记精选故事 给孩子看的经典神话","v": "30集西游记精选故事 给孩子看的经典神话"},
{"n":"【100集全】成语故事动画 小灯塔成语动画","v": "【100集全】成语故事动画 小灯塔成语动画"},
{"n":"【小灯塔】中华名人故事","v": "【小灯塔】中华名人故事"},
{"n":"20集全【给孩子的山海经】小灯塔趣味动画","v": "20集全【给孩子的山海经】小灯塔趣味动画"},
{"n":"三国动画故事24节全","v": "三国动画故事24节全"},
{"n":"【小灯塔】春节习俗追根溯源立春节","v": "【小灯塔】春节习俗追根溯源立春节"},
{"n":"【小灯塔】十二生肖","v": "【小灯塔】十二生肖"},
{"n":"【小灯塔】中华上下五千年","v": "【小灯塔】中华上下五千年"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//地理
"给孩子的第一堂海洋课【完结】":[
{"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": "小灯塔 非洲大冒险"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//科学
"小灯塔.剑桥数学启蒙课(全)":[
{"key":"tid","name":"分类","value":[
{"n":"小灯塔.剑桥数学启蒙课(全)","v": "小灯塔.剑桥数学启蒙课(全)"},
{"n":"奇趣科学实验室","v": "小灯塔奇趣科学实验室"},
{"n":"剑桥数学启蒙课","v": "小灯塔剑桥数学启蒙课"},
{"n":"宇宙探秘之旅","v": "小灯塔十大主题宇宙探秘之旅"},
{"n":"跟动物老师学发明","v": "小灯塔跟动物老师学发明"},
{"n":"天才发明家","v": "小灯塔天才发明家"},
{"n":"剑桥博士讲物理","v": "小灯塔剑桥博士讲物理"},
{"n":"STEM奇妙科学课","v": "小灯塔STEM奇妙科学课"},
{"n":"出发吧,月球!","v": "小灯塔出发吧,月球!"},
{"n":"十大世界未解之谜","v": "小灯塔探秘十大世界未解之谜"},
{"n":"神奇的气象魔法","v": "小灯塔神奇的气象魔法"},
{"n":"了不起的新科技","v": "小灯塔了不起的新科技"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}],
//人文
"给孩子的第一堂性教育课":[
{"key":"tid","name":"分类","value":[
{"n":"给孩子的第一堂性教育课","v": "给孩子的第一堂性教育课"},
{"n":"小灯塔安全教育课","v": "小灯塔安全教育课"},
{"n":"影响十万少年的人际沟通课","v": "影响十万少年的人际沟通课"},
{"n":"跟着棋圣学围棋","v": "小灯塔跟着棋圣学围棋"},
{"n":"小灯塔财商启蒙课","v": "小灯塔财商启蒙课"},
{"n":"小灯塔人体奥秘","v": "小灯塔人体奥秘"},
{"n":"讲给孩子的人类简史","v": "小灯塔讲给孩子的人类简史"},
{"n":"讲给孩子的希腊神话故事","v": "小灯塔讲给孩子的希腊神话故事"}
]},
{"key": "duration","name": "时长","value": [
{"n": "100~200分钟","v": "0"},
{"n": "60~100分钟","v": "1"},
{"n": "40~60分钟","v": "2"},
{"n": "200分钟以上","v": "3"},
{"n": "40分钟以下","v": "4"}]}]
}
}

View File

@ -0,0 +1,38 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"学而思"}
],
"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":"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":"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":"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":"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":"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":"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"}]}]
}
}

View File

@ -0,0 +1,64 @@
var rule={
title:'异世界动漫',
host:'https://www.mikudm.com',
homeUrl:'/index.php/vod/show/id/22.html',
// url:'/index.php/vod/show/class/fyclass/id/20/page/fypage.html',
url:'/index.php/vod/show/fyclassfyfilter.html',
filterable:1,
filter_url:'{{fl.type}}/id/20/page/fypage{{fl.year}}',
filter: {
"area/日本":[{"key":"type","name":"类型","value":[{"n":"全部","v":""},{"n":"OVA","v":"/class/OVA"},{"n":"剧场版","v":"/class/剧场版"},{"n":"无修","v":"/class/BD无修"},{"n":"萝莉","v":"/class/萝莉"},{"n":"学園","v":"/class/学園"},{"n":"后宫","v":"/class/后宫"},{"n":"恋爱","v":"/class/恋爱"},{"n":"热血","v":"/class/热血"},{"n":"神魔","v":"/class/神魔"},{"n":"奇幻","v":"/class/奇幻"},{"n":"治愈","v":"/class/治愈"},{"n":"搞笑","v":"/class/搞笑"},{"n":"百合","v":"/class/百合"},{"n":"冒险","v":"/class/冒险"},{"n":"魔法","v":"/class/魔法"},{"n":"机战","v":"/class/机战"},{"n":"战争","v":"/class/战争"},{"n":"犯罪","v":"/class/犯罪"},{"n":"悬疑","v":"/class/悬疑"},{"n":"推理","v":"/class/推理"},{"n":"科幻","v":"/class/科幻"},{"n":"竞技","v":"/class/竞技"},{"n":"运动","v":"/class/运动"},{"n":"耽美","v":"/class/耽美"},{"n":"其他","v":"/class/其他"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]}],
"area/中國":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]}]
},
searchUrl:'/index.php/vod/search/page/fypage/wd/**.html',
searchable:2,
quickSearch:0,
headers:{
'User-Agent':'MOBILE_UA'
},
timeout:5000,//网站的全局请求超时,默认是3000毫秒
class_name:'日漫&国漫',
class_url:'area/日本&area/中國',
play_parse:true,
lazy:`js:
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
var url = html.url;
var from = html.from;
if (html.encrypt == '1') {
url = unescape(url)
} else if (html.encrypt == '2') {
url = unescape(base64Decode(url))
}
if (/m3u8|mp4/.test(url)) {
input = url
} else {
var MacPlayerConfig={};
eval(fetch(HOST + "/static/js/playerconfig.js").replace('var Mac','Mac'));
var jx = MacPlayerConfig.player_list[from].parse;
if (jx == '') {
jx = MacPlayerConfig.parse
};
if (jx.startsWith("/")) {
jx = "https:" + jx;
}
input={jx:0,url:jx+url,parse:1,
header: JSON.stringify({
'referer': 'https://ysjdm.net/'
})}
}
`,
limit:6,
图片来源:'@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',
推荐:'*',
一级:'.vodlist_wi&&li;.lazyload&&title;.lazyload&&data-original;.pic_text&&Text;a&&href',
二级:{
"title": "h2&&Text;li.data--span:eq(0)&&Text",
"img": ".lazyload&&data-original",
"desc": "li.data--span:eq(1)&&Text;;;li.data--span:eq(2)&&Text;li.data--span:eq(3)&&Text",
"content": ".full_text&&span&&Text",
"tabs": ".play_source_tab",
"tab_text": "a--i&&Text",
"lists": ".content_playlist:eq(#id)&&a"
},
搜索:'li.searchlist_item;*;*;*;*',
}

View File

@ -0,0 +1,69 @@
// 发布页 https://acgfans.org/pub.html
var rule={
title:'怡萱动漫',
// host:'https://www.yxdmlove.com',
host:'https://acgfans.org/pub.html',
hostJs:'print(HOST);let html=request(HOST,{headers:{"User-Agent":PC_UA}});let src = jsp.pdfh(html,"p:eq(0)&&a&&Text");print(src);HOST=src',//网页域名根动态抓取js代码。通过HOST=赋值
// url:'/category.html?channel=17&zhonglei=fyclass&orderby=pubdate&totalresult=2999&pageno=fypage',
url:'/category.html?channel=17&zhonglei=fyclassfyfilter&pageno=fypage',
filterable:1,//是否启用分类筛选,
filter_url:'&{{fl.by or "orderby=pubdate"}}&{{fl.year}}&{{fl.area}}&{{fl.sta}}&{{fl.class}}',
filter: {
"TV":[{"key":"sta","name":"进度","value":[{"n":"全部","v":""},{"n":"连载中","v":"status=连载中"},{"n":"已完结","v":"status=已完结"},{"n":"未播放","v":"status=未播放"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"area=日本"},{"n":"中国","v":"area=中国"},{"n":"欧美","v":"area=欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"year=2023"},{"n":"2022","v":"year=2022"},{"n":"2021","v":"year=2021"},{"n":"2020","v":"year=2020"},{"n":"2019","v":"year=2019"},{"n":"2018","v":"year=2018"},{"n":"2017","v":"year=2017"},{"n":"2016","v":"year=2016"},{"n":"2015","v":"year=2015"},{"n":"2014","v":"year=2014"},{"n":"2013","v":"year=2013"},{"n":"2012","v":"year=2012"},{"n":"2011","v":"year=2011"},{"n":"2010","v":"year=2010"},{"n":"更早","v":"year=2010前"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"jqlx=冒险"},{"n":"热血","v":"jqlx=热血"},{"n":"爱情","v":"jqlx=爱情"},{"n":"搞笑","v":"jqlx=搞笑"},{"n":"后宫","v":"jqlx=后宫"},{"n":"校园","v":"jqlx=校园"},{"n":"机战","v":"jqlx=机战"},{"n":"幻想","v":"jqlx=幻想"},{"n":"科幻","v":"jqlx=科幻"},{"n":"竞技","v":"jqlx=竞技"},{"n":"百合","v":"jqlx=百合"},{"n":"耽美","v":"jqlx=耽美"},{"n":"悬疑","v":"jqlx=悬疑"},{"n":"剧情","v":"jqlx=剧情"},{"n":"战争","v":"jqlx=战争"},{"n":"恐怖","v":"jqlx=恐怖"},{"n":"运动","v":"jqlx=运动"},{"n":"动作","v":"jqlx=动作"},{"n":"童话","v":"jqlx=童话"},{"n":"历史","v":"jqlx=历史"},{"n":"真人","v":"jqlx=真人"},{"n":"女性向","v":"jqlx=女性向"},{"n":"泡面番","v":"jqlx=泡面番"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"orderby=pubdate"},{"n":"热度","v":"orderby=click"}]}],
"剧场版":[{"key":"sta","name":"进度","value":[{"n":"全部","v":""},{"n":"连载中","v":"status=连载中"},{"n":"已完结","v":"status=已完结"},{"n":"未播放","v":"status=未播放"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"area=日本"},{"n":"中国","v":"area=中国"},{"n":"欧美","v":"area=欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"year=2023"},{"n":"2022","v":"year=2022"},{"n":"2021","v":"year=2021"},{"n":"2020","v":"year=2020"},{"n":"2019","v":"year=2019"},{"n":"2018","v":"year=2018"},{"n":"2017","v":"year=2017"},{"n":"2016","v":"year=2016"},{"n":"2015","v":"year=2015"},{"n":"2014","v":"year=2014"},{"n":"2013","v":"year=2013"},{"n":"2012","v":"year=2012"},{"n":"2011","v":"year=2011"},{"n":"2010","v":"year=2010"},{"n":"更早","v":"year=2010前"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"jqlx=冒险"},{"n":"热血","v":"jqlx=热血"},{"n":"爱情","v":"jqlx=爱情"},{"n":"搞笑","v":"jqlx=搞笑"},{"n":"后宫","v":"jqlx=后宫"},{"n":"校园","v":"jqlx=校园"},{"n":"机战","v":"jqlx=机战"},{"n":"幻想","v":"jqlx=幻想"},{"n":"科幻","v":"jqlx=科幻"},{"n":"竞技","v":"jqlx=竞技"},{"n":"百合","v":"jqlx=百合"},{"n":"耽美","v":"jqlx=耽美"},{"n":"悬疑","v":"jqlx=悬疑"},{"n":"剧情","v":"jqlx=剧情"},{"n":"战争","v":"jqlx=战争"},{"n":"恐怖","v":"jqlx=恐怖"},{"n":"运动","v":"jqlx=运动"},{"n":"动作","v":"jqlx=动作"},{"n":"童话","v":"jqlx=童话"},{"n":"历史","v":"jqlx=历史"},{"n":"真人","v":"jqlx=真人"},{"n":"女性向","v":"jqlx=女性向"},{"n":"泡面番","v":"jqlx=泡面番"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"orderby=pubdate"},{"n":"热度","v":"orderby=click"}]}],
"OVA":[{"key":"sta","name":"进度","value":[{"n":"全部","v":""},{"n":"连载中","v":"status=连载中"},{"n":"已完结","v":"status=已完结"},{"n":"未播放","v":"status=未播放"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"area=日本"},{"n":"中国","v":"area=中国"},{"n":"欧美","v":"area=欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"year=2023"},{"n":"2022","v":"year=2022"},{"n":"2021","v":"year=2021"},{"n":"2020","v":"year=2020"},{"n":"2019","v":"year=2019"},{"n":"2018","v":"year=2018"},{"n":"2017","v":"year=2017"},{"n":"2016","v":"year=2016"},{"n":"2015","v":"year=2015"},{"n":"2014","v":"year=2014"},{"n":"2013","v":"year=2013"},{"n":"2012","v":"year=2012"},{"n":"2011","v":"year=2011"},{"n":"2010","v":"year=2010"},{"n":"更早","v":"year=2010前"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"jqlx=冒险"},{"n":"热血","v":"jqlx=热血"},{"n":"爱情","v":"jqlx=爱情"},{"n":"搞笑","v":"jqlx=搞笑"},{"n":"后宫","v":"jqlx=后宫"},{"n":"校园","v":"jqlx=校园"},{"n":"机战","v":"jqlx=机战"},{"n":"幻想","v":"jqlx=幻想"},{"n":"科幻","v":"jqlx=科幻"},{"n":"竞技","v":"jqlx=竞技"},{"n":"百合","v":"jqlx=百合"},{"n":"耽美","v":"jqlx=耽美"},{"n":"悬疑","v":"jqlx=悬疑"},{"n":"剧情","v":"jqlx=剧情"},{"n":"战争","v":"jqlx=战争"},{"n":"恐怖","v":"jqlx=恐怖"},{"n":"运动","v":"jqlx=运动"},{"n":"动作","v":"jqlx=动作"},{"n":"童话","v":"jqlx=童话"},{"n":"历史","v":"jqlx=历史"},{"n":"真人","v":"jqlx=真人"},{"n":"女性向","v":"jqlx=女性向"},{"n":"泡面番","v":"jqlx=泡面番"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"orderby=pubdate"},{"n":"热度","v":"orderby=click"}]}],
"其他":[{"key":"sta","name":"进度","value":[{"n":"全部","v":""},{"n":"连载中","v":"status=连载中"},{"n":"已完结","v":"status=已完结"},{"n":"未播放","v":"status=未播放"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"area=日本"},{"n":"中国","v":"area=中国"},{"n":"欧美","v":"area=欧美"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"year=2023"},{"n":"2022","v":"year=2022"},{"n":"2021","v":"year=2021"},{"n":"2020","v":"year=2020"},{"n":"2019","v":"year=2019"},{"n":"2018","v":"year=2018"},{"n":"2017","v":"year=2017"},{"n":"2016","v":"year=2016"},{"n":"2015","v":"year=2015"},{"n":"2014","v":"year=2014"},{"n":"2013","v":"year=2013"},{"n":"2012","v":"year=2012"},{"n":"2011","v":"year=2011"},{"n":"2010","v":"year=2010"},{"n":"更早","v":"year=2010前"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"冒险","v":"jqlx=冒险"},{"n":"热血","v":"jqlx=热血"},{"n":"爱情","v":"jqlx=爱情"},{"n":"搞笑","v":"jqlx=搞笑"},{"n":"后宫","v":"jqlx=后宫"},{"n":"校园","v":"jqlx=校园"},{"n":"机战","v":"jqlx=机战"},{"n":"幻想","v":"jqlx=幻想"},{"n":"科幻","v":"jqlx=科幻"},{"n":"竞技","v":"jqlx=竞技"},{"n":"百合","v":"jqlx=百合"},{"n":"耽美","v":"jqlx=耽美"},{"n":"悬疑","v":"jqlx=悬疑"},{"n":"剧情","v":"jqlx=剧情"},{"n":"战争","v":"jqlx=战争"},{"n":"恐怖","v":"jqlx=恐怖"},{"n":"运动","v":"jqlx=运动"},{"n":"动作","v":"jqlx=动作"},{"n":"童话","v":"jqlx=童话"},{"n":"历史","v":"jqlx=历史"},{"n":"真人","v":"jqlx=真人"},{"n":"女性向","v":"jqlx=女性向"},{"n":"泡面番","v":"jqlx=泡面番"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"orderby=pubdate"},{"n":"热度","v":"orderby=click"}]}]
},
// filter_def:{
// TV:{by:'orderby=pubdate'},
// 剧场版:{by:'orderby=pubdate'},
// OVA:{by:'orderby=pubdate'},
// 其他:{by:'orderby=pubdate'}
// },
searchUrl:'/search.html?keyword=**&PageNo=fypage',
searchable:2,//是否启用全局搜索,
headers:{//网站的请求头,完整支持所有的,常带ua和cookies
'User-Agent': 'PC_UA',
},
class_name:'TV&剧场版&OVA&其他',
class_url:'TV&剧场版&OVA&其他',
play_parse: true,
lazy:'',
limit:6,
// 推荐:'.dhnew.adj li;*;*;*;*',
推荐:'.dhnew.adj li;a&&title;img&&src;p:eq(-1)&&Text;a&&href',
// 一级:'.dhnew li;a&&title;img&&src;p:eq(-1)&&Text;a&&href',
一级:`js:
let d = [];
pdfh = jsp.pdfh;pdfa = jsp.pdfa;pd = jsp.pd;
let html = '';
let totalresult = getItem("totalresult_" + MY_CATE, '')
if (totalresult == '') {
html = request(input);
totalresult = pdfh(html, ".pageinfo&&strong&&Text");
setItem("totalresult_" + MY_CATE, totalresult)
}
input += '&totalresult=' + getItem("totalresult_" + MY_CATE, '');
html = request(input);
let list = pdfa(html, ".dhnew&&li");
list.forEach(it => {
d.push({
title: pdfh(it, "a&&title"),
desc: pdfh(it, "p:eq(-1)&&Text"),
pic_url: pd(it, "img&&src"),
url: pd(it, "a&&href")
})
});
setResult(d)
`,
二级:{
"title":"h1&&Text;.dhxx p:eq(4)&&Text",
"img":".anime-img&&img&&src",
"desc":".info1-left li:eq(1)&&Text;.dhxx p:eq(3)&&Text;.dhxx p:eq(2)&&Text;.info1-left li:eq(0)&&Text;.info1-left li:eq(2)&&Text",
"content":".info2--strong&&Text",
"tabs":".ol-select li",
"lists":".ol-content:eq(#id) li"
},
// 搜索:'*;*;*;p:eq(3)&&Text;*',
搜索:'.dhnew li;a&&title;img&&src;p:eq(3)&&Text;a&&href',
}

View File

@ -0,0 +1,130 @@
var rule = {
title:'斗鱼直播',
host:'https://m.douyu.com',
homeUrl:'/api/home/mix',//网站的首页链接,用于分类获取和推荐获取
url:'/api/room/list?page=fypage&type=fyfilter',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.cateId}}',
filter:{
"yl":[{"key":"cateId","name":"分类","value":[{"n":"二次元","v":"ecy"},{"n":"一起看","v":"yqk"},{"n":"音乐","v":"music"},{"n":"户外","v":"HW"},{"n":"美食","v":"ms"},{"n":"原创IP","v":"ip"},{"n":"心动派对","v":"xdpd"},{"n":"音遇恋人","v":"yinyu"},{"n":"星秀","v":"xingxiu"},{"n":"心动FM","v":"dtxs"},{"n":"娱乐推荐","v":"yltj"},{"n":"中国地质大学(武汉)","v":"CUGWH"}]}],
"PCgame":[{"key":"cateId","name":"分类","value":[{"n":"英雄联盟","v":"LOL"},{"n":"热门游戏","v":"rmyx"},{"n":"穿越火线","v":"CF"},{"n":"重生边缘","v":"CSBYOL"},{"n":"无畏契约","v":"VALORANT"},{"n":"CFHD","v":"CFHD"},{"n":"命运方舟","v":"LostArk"},{"n":"DNF","v":"DNF"},{"n":"DOTA2","v":"DOTA2"},{"n":"使命召唤","v":"COD"},{"n":"炉石传说","v":"How"},{"n":"CS2","v":"CounterStrike"},{"n":"lol云顶之弈","v":"ydzhy"},{"n":"魔兽争霸","v":"mszb"},{"n":"魔兽怀旧服","v":"wowclassic"},{"n":"自走棋","v":"dota2rpg"},{"n":"传奇","v":"cq"},{"n":"跑跑卡丁车","v":"Popkart"},{"n":"网易游戏","v":"wyyx"},{"n":"星际争霸","v":"SC"},{"n":"守望先锋","v":"Overwatch"},{"n":"DOTA","v":"DOTA"},{"n":"魔兽世界","v":"WOW"},{"n":"剑网3","v":"JX3"},{"n":"我的世界","v":"MC"},{"n":"超激斗梦境","v":"cjdmj"},{"n":"冒险岛","v":"mxd"},{"n":"三国杀","v":"sanguosha"},{"n":"梦幻西游","v":"MHXYOL"},{"n":"天涯明月刀","v":"tianya"},{"n":"街头篮球","v":"jtlq"},{"n":"NBA2KOL2","v":"NBA2KOL2"},{"n":"QQ飞车端游","v":"qqfcdy"},{"n":"军事游戏","v":"jsyx"},{"n":"棋牌娱乐","v":"qipai"},{"n":"FC ONLINE","v":"FCOL"},{"n":"热门网游","v":"rmwy"},{"n":"卡拉彼丘","v":"klbq"},{"n":"诛仙世界","v":"zxsj"},{"n":"APEX","v":"APEX"},{"n":"流放之路POE","v":"PathofExile"},{"n":"剑网3缘起","v":"JW3YQ"},{"n":"逆水寒","v":"nsh"},{"n":"风暴英雄","v":"HOTS"},{"n":"逆战","v":"NZ"},{"n":"坦克世界","v":"TKSJ"},{"n":"战舰世界","v":"wfws"},{"n":"反恐精英Online","v":"CS"},{"n":"暗黑破坏神","v":"DIABLO"},{"n":"梦三国2","v":"msg2"},{"n":"传奇世界","v":"cqsj"},{"n":"方舟:生存进化","v":"fzscjh"},{"n":"神武4电脑版","v":"swdnb"},{"n":"群雄逐鹿","v":"qxzl"},{"n":"堡垒之夜","v":"blzy"},{"n":"无限法则","v":"roe"},{"n":"问道电脑版","v":"wddnb"},{"n":"西山居游戏","v":"Seasun"},{"n":"最终幻想14","v":"FF14"},{"n":"战意","v":"WYZY"},{"n":"剑灵","v":"BladeSoul"},{"n":"星际战甲","v":"Warframe"},{"n":"龙之谷","v":"DragonNest"},{"n":"铁甲雄兵","v":"tjxb"},{"n":"古剑奇谭网络版","v":"gjqtwlb"},{"n":"轩辕传奇","v":"XYCQ"},{"n":"神途","v":"shentu"},{"n":"激战2","v":"GuildWars2"},{"n":"高达文化区","v":"gdyxq"},{"n":"忍者村大战2","v":"rzcdz2"},{"n":"RPG网游专区","v":"rpgwyzq"},{"n":"诛仙3","v":"zhuxian3"},{"n":"笑傲江湖OL","v":"xajhol"},{"n":"冒险岛2","v":"MXD2"},{"n":"超击突破","v":"SuperPeople"},{"n":"无尽战区","v":"WJZQ"},{"n":"永恒之塔","v":"AION"},{"n":"竞速游戏","v":"jingsu"},{"n":"FPS综合网游","v":"FPSOL"},{"n":"劲舞团","v":"jwt"},{"n":"天下","v":"tianxai"},{"n":"火箭联盟","v":"hjlm"},{"n":"泡泡堂","v":"ppt"},{"n":"音乐游戏","v":"MG"},{"n":"新倩女幽魂","v":"ONLINE"},{"n":"天谕","v":"tianyu"},{"n":"QQ炫舞","v":"qqxw"},{"n":"大唐无双","v":"dtws"},{"n":"怪物猎人ol","v":"MHol"},{"n":"手工星球","v":"sgxq"},{"n":"热血传奇:本源","v":"rxcqhjsgb"},{"n":"彩虹岛","v":"CHD"},{"n":"御龙在天","v":"YLZT"},{"n":"自由篮球","v":"ZYLQ"},{"n":"洛奇英雄传","v":"LQYXZ"},{"n":"洛奇","v":"LQ"},{"n":"封印者","v":"FYZ"},{"n":"合金弹头","v":"HJDT"},{"n":"新英雄年代","v":"XYXSD"},{"n":"盛趣游戏","v":"SQYX"},{"n":"新热血英豪","v":"XRXYH"},{"n":"沙盒游戏","v":"SHYX"},{"n":"恐鬼症","v":"KGZ"},{"n":"领地人生","v":"LDRS"},{"n":"大话西游2","v":"dhxy2"},{"n":"猎人","v":"lr"},{"n":"热血江湖online","v":"rxjhol"},{"n":"千年3","v":"qn3"},{"n":"逍遥情缘","v":"xyqy"},{"n":"快乐西游","v":"klxy"},{"n":"诺亚传说","v":"nycs"},{"n":"鹿鼎记","v":"ldj"},{"n":"武魂2电脑版","v":"wh2pc"},{"n":"奇迹世界sun","v":"qjsjsun"},{"n":"剑侠世界2电脑版","v":"jxsj2pc"},{"n":"斩魂","v":"zhpc"},{"n":"大唐2","v":"dt2pc"},{"n":"幻想神域电脑版","v":"hxsypc"},{"n":"蜀山:初章","v":"ssczpc"},{"n":"狼人对决网游","v":"lrdjpc"},{"n":"武林群侠传","v":"wlqxzpc"},{"n":"飘流幻境","v":"plhjpc"},{"n":"破天一剑","v":"ptyj"},{"n":"四国军棋","v":"sgjq"},{"n":"新大话西游3","v":"xy3"},{"n":"装甲战争","v":"zjzz"},{"n":"暴雪游戏综合","v":"g_bliz"},{"n":"HypeSquad","v":"HypeSquad"},{"n":"长尾4部虚拟分区","v":"cw4bxnfq"},{"n":"燕云十六声","v":"WHEREWINDSMEET"},{"n":"THE FINALS","v":"THEFINALS"},{"n":"NBA2K Online","v":"NBA2KOL"},{"n":"跑跑卡丁车:漂移","v":"KartRiderDrift"},{"n":"传奇永恒","v":"EternalLegend"},{"n":"盛趣传奇","v":"sqcq"},{"n":"火爆热游","v":"hbry"}]}],
"djry":[{"key":"cateId","name":"分类","value":[{"n":"主机游戏","v":"TVgame"},{"n":"刺客信条:英灵殿","v":"AC"},{"n":"马里奥制造","v":"Mario"},{"n":"逃离塔科夫","v":"EFT"},{"n":"命运2","v":"MY2"},{"n":"恐怖游戏","v":"Horror"},{"n":"荒野大镖客","v":"hydbk"},{"n":"灵魂筹码","v":"lhcm"},{"n":"骑马与砍杀","v":"MountAndBlade"},{"n":"只狼","v":"ZL"},{"n":"格斗游戏","v":"FTG"},{"n":"饥荒","v":"DontStarve"},{"n":"全境封锁","v":"qjfs"},{"n":"怀旧游戏","v":"classic"},{"n":"NBA2K","v":"NBA2K"},{"n":"八方旅人","v":"OT"},{"n":"人类一败涂地","v":"Human"},{"n":"环世界","v":"RimWorld"},{"n":"古墓丽影","v":"gmly"},{"n":"鬼泣","v":"DMC"},{"n":"往日不再","v":"WRBZ"},{"n":"仙剑奇侠传","v":"PAL"},{"n":"神秘海域","v":"Uncharted"},{"n":"塞尔达系列","v":"TLoZ"},{"n":"僵尸世界大战","v":"WWZ"},{"n":"足球游戏","v":"zq"},{"n":"橙光","v":"cg"},{"n":"了不起的修仙模拟器","v":"ACS"},{"n":"超级马里奥","v":"SMO"},{"n":"三国志系列","v":"Sangokushi"},{"n":"星际公民","v":"StarCitizen"},{"n":"最终幻想","v":"FF"},{"n":"中土世界:战争之影","v":"MiddleEarth"},{"n":"流放者柯南","v":"Conan"},{"n":"三国群英传","v":"SANGO"},{"n":"无主之地","v":"Bor"},{"n":"辐射","v":"fs"},{"n":"太吾绘卷","v":"twhj"},{"n":"SCUM","v":"Scum"},{"n":"正当防卫","v":"zdfw"},{"n":"以撒的结合","v":"Isaac"},{"n":"文明","v":"CVI"},{"n":"仁王","v":"NIOH"},{"n":"缺氧","v":"ONI"},{"n":"皇牌空战","v":"hpkz"},{"n":"体育游戏","v":"tyyx"},{"n":"海岛大亨","v":"hddh"},{"n":"植物大战僵尸:花园战争系列","v":"PvsZ"},{"n":"蜘蛛侠","v":"Spide"},{"n":"勇者斗恶龙建造者2","v":"DQB2"},{"n":"遗迹:灰烬重生","v":"Rem"},{"n":"血源","v":"BB"},{"n":"旺达与巨像","v":"SotC"},{"n":"模拟人生","v":"Sims"},{"n":"空洞骑士","v":"HKS"},{"n":"极品飞车","v":"jpfc"},{"n":"胡闹厨房","v":"Overcooked"},{"n":"地铁:离去","v":"ME"},{"n":"生死狙击2","v":"ssjjtwo"},{"n":"三国战纪","v":"sgzj"},{"n":"怀旧FC","v":"edwcy"},{"n":"经典单机","v":"jddj"},{"n":"英雄无敌","v":"HoMM"},{"n":"街机游戏","v":"jjyx"},{"n":"合金装备","v":"MetalGear"},{"n":"红色警戒","v":"hsjj"},{"n":"镜之边缘","v":"MsE"},{"n":"火焰纹章系列","v":"FireEmblem"},{"n":"星露谷物语","v":"Stardew"},{"n":"赛博朋克2077","v":"Cyberpunk"},{"n":"中国式家长","v":"CP"},{"n":"尼尔:机械纪元","v":"NieR"},{"n":"无人深空","v":"NMS"},{"n":"EVOTINCTION","v":"EVOTINCTION"},{"n":"GT赛车7","v":"GT"},{"n":"超级机器人大战","v":"SRW"},{"n":"信长之野望","v":"KOEINOBU"},{"n":"这是我的战争","v":"TWoM"},{"n":"杀戮尖塔","v":"sljt"},{"n":"冰汽时代","v":"Frostpunk"},{"n":"帝国时代","v":"AoEIV"},{"n":"死亡空间","v":"swkj"},{"n":"凯瑟琳Full Body","v":"CFB"},{"n":"足球经理","v":"Football"},{"n":"雨中冒险","v":"RoR"},{"n":"亿万僵尸","v":"Billions"},{"n":"武装突袭","v":"ArmA"},{"n":"石油大亨","v":"Oil"},{"n":"荣耀战魂","v":"Honor"},{"n":"欧洲卡车模拟器","v":"Truck"},{"n":"美国逃亡者","v":"Fugitive"},{"n":"漫漫长夜","v":"mmcy"},{"n":"永恒轮回","v":"Survival"},{"n":"孤岛惊魂","v":"FarCry"},{"n":"都市:天际线","v":"Skylines"},{"n":"盗贼之海","v":"hdzh"},{"n":"Dayz","v":"DayZ"},{"n":"60秒","v":"60S"},{"n":"俄罗斯钓鱼","v":"RF"},{"n":"猎人:荒野的召唤","v":"theHunter"},{"n":"恐怖黎明","v":"GD"},{"n":"看门狗","v":"kmg"},{"n":"真三国无双","v":"DW"},{"n":"泰拉瑞亚","v":"Terraria"},{"n":"UFC","v":"UFC"},{"n":"底特律:变人","v":"Detroit"},{"n":"恶魔城","v":"Castlevania"},{"n":"毁灭战士","v":"Doom"},{"n":"火影忍者:究极忍者风暴","v":"Naruto"},{"n":"无尽地牢","v":"DOTE"},{"n":"坎巴拉太空计划","v":"Kerbal"},{"n":"龙珠:超宇宙","v":"DBX"},{"n":"马里奥赛车","v":"MarioKart"},{"n":"模拟山羊","v":"GoatSim"},{"n":"欧陆风云","v":"EU"},{"n":"乞丐模拟器","v":"HoboToughLife"},{"n":"小偷模拟器","v":"ThiefSimulator"},{"n":"逆转裁判","v":"AceA"},{"n":"超越光速","v":"FTL"},{"n":"植物大战僵尸","v":"PvZ"},{"n":"游戏开发者","v":"GGM"},{"n":"最后的绿洲","v":"LO"},{"n":"大富翁","v":"RichMan"},{"n":"英雄连","v":"yxl"},{"n":"永劫无间","v":"NB"},{"n":"部落与弯刀","v":"BLYWD"},{"n":"森林","v":"Forest"},{"n":"只只大冒险","v":"biped"},{"n":"一起开火车!","v":"Unrailed"},{"n":"主机其他游戏","v":"OG"},{"n":"北境之地","v":"BJZD"},{"n":"temtem","v":"temtem"},{"n":"弹丸论破","v":"dwlp"},{"n":"基佬大乱斗","v":"jldld"},{"n":"僵尸毁灭工程","v":"jshmgc"},{"n":"神力科莎","v":"SLKS"},{"n":"超级兔子人","v":"Bunny"},{"n":"岛屿生存者","v":"Sur"},{"n":"盟军敢死队","v":"COMM"},{"n":"冬日计划","v":"drjh"},{"n":"泰坦陨落","v":"Titanfall"},{"n":"四海兄弟","v":"shxd"},{"n":"创世理想乡","v":"Craftopia"},{"n":"柯娜:精神之桥","v":"Kena"},{"n":"幽灵线:东京","v":"GTO"},{"n":"Solar Ash","v":"Ash"},{"n":"BUGSNAX","v":"BUGSNAX"},{"n":"生化危机4重制版","v":"ResidentEvil"},{"n":"Grounded","v":"Grounded"},{"n":"Superliminal","v":"Superliminal"},{"n":"Omno","v":"Omno"},{"n":"Röki","v":"Roki"},{"n":"Undungeon","v":"Undungeon"},{"n":"糖豆人","v":"FallGuys"},{"n":"渡神纪","v":"Gods"},{"n":"Aeolis Tournament","v":"Aeolis"},{"n":"猛兽派对","v":"Animals"},{"n":"Olija","v":"Olija"},{"n":"Creaks","v":"Creaks"},{"n":"暗影火炬城","v":"FIST"},{"n":"阿尔比恩","v":"Albion"},{"n":"Uragun","v":"Uragun"},{"n":"鬼谷八荒","v":"GGBH"},{"n":"Muse Dash","v":"MuseDash"},{"n":"恐惧之间","v":"Fearsurrounds"},{"n":"孤岛惊魂6","v":"FarCry6"},{"n":"怪物猎人","v":"MonsterHunterRise"},{"n":"黑神话:悟空","v":"BlackMythWuKong"},{"n":"仁王2","v":"Nioh2"},{"n":"三国志14","v":"THREEKINGDOMSXIV"},{"n":"杀手3","v":"Hitman3"},{"n":"双人成行","v":"ittakestwo"},{"n":"Scrapnaut","v":"Scrapnaut"},{"n":"租房达人","v":"TheTenants"},{"n":"狙击手幽灵战士契约2","v":"SniperContracts2"},{"n":"全面战争","v":"TotalWarWARHAMMER"},{"n":"复体","v":"TheComplex"},{"n":"战争机器:战术小队","v":"GearsTactics"},{"n":"侠之道","v":"PathOfWuxia"},{"n":"海绵宝宝:比奇堡的冒险","v":"BattleforBikini"},{"n":"奇妙探险队2","v":"CuriousExpedition2"},{"n":"刺客信条:奥德赛","v":"Odyssey"},{"n":"星球大战:前线","v":"Battlefront"},{"n":"Moonray","v":"Moonray"},{"n":"灵魂旅人","v":"SpiritFarerlhlr"},{"n":"面容","v":"Visage"},{"n":"破门而入2北方特遣队","v":"DoorKickers2"},{"n":"俄罗斯方块效应:连接","v":"TetrisEffect"},{"n":"SD高达G世纪起源","v":"SDGundamG"},{"n":"东方计划:不可思议的幻想乡","v":"TouHou"},{"n":"Fate/EXTELLA","v":"FateEXTELLA"},{"n":"临终:重生试炼","v":"DYINGReborn"},{"n":"虚拟现实乐园","v":"VRWorlds"},{"n":"妖精剑士F","v":"FairyFencerF"},{"n":"苍翼默示录:神观之梦","v":"CentralFiction"},{"n":"晚班","v":"LateShift"},{"n":"子弹风暴","v":"Bulletstorm"},{"n":"巡警","v":"BeatCop"},{"n":"耻辱之日","v":"DayofInfamy"},{"n":"狙击精英4","v":"SniperElite4"},{"n":"三国志13威力加强版","v":"Sangokushi13"},{"n":"热血物语:地下世界","v":"RiverCityRansom"},{"n":"史诗战争模拟器","v":"BattleSimulator"},{"n":"银河护卫队","v":"Guardians"},{"n":"闪乱神乐:少女们的选择","v":"SenranKagura"},{"n":"幽灵行动:荒野","v":"GhostReconWildland"},{"n":"白色情人节","v":"WhiteDay"},{"n":"美国职业摔角联盟2K17","v":"WWE2K"},{"n":"誓死坚守","v":"UntilWeDie"},{"n":"喷射侠","v":"Splasher"},{"n":"双截龙4","v":"DoubleDragon4"},{"n":"地下蚁国","v":"Undergrowth"},{"n":"九张羊皮纸","v":"NineParchments"},{"n":"咒语力量3","v":"Spellforce3"},{"n":"小兵大战","v":"Warpips"},{"n":"维京人 人中之狼","v":"VikingsWofM"},{"n":"你好邻居","v":"Helloneighbor"},{"n":"寻找天堂","v":"findparadise"},{"n":"画中世界","v":"Gorogoa"},{"n":"桥梁工程师传送门","v":"bridgecons"},{"n":"现代战争","v":"ModernCombat"},{"n":"SCP秘密实验室","v":"scpsl"},{"n":"绯红结系","v":"SCARLETNEXUS"},{"n":"罪恶装备STRIVE","v":"GuiltyGear"},{"n":"骑士精神2","v":"Chivalry2"},{"n":"Rune Knights","v":"RuneKnights"},{"n":"最后的咒语","v":"TheLastSpell"},{"n":"红至日2幸存者","v":"TheRed2"},{"n":"真女神转生3","v":"ShinMegami3"},{"n":"速降王者","v":"Descenders"},{"n":"工业崛起","v":"RiseIndustry"},{"n":"征服的荣耀:围城","v":"SIEGE"},{"n":"前往中世纪","v":"GoMedieval"},{"n":"Arid","v":"Arid"},{"n":"伊始之地","v":"TerraNil"},{"n":"进击的巨人2","v":"AttackonTitan2"},{"n":"航海日记2","v":"hhrj2"},{"n":"隐龙传:影踪","v":"HiddenDragon"},{"n":"魔域之书","v":"Bookofdevil"},{"n":"诸神灰烬:救赎","v":"AshofGods"},{"n":"自由人:游击战争","v":"Freeman"},{"n":"战国无双5","v":"SWarriors5"},{"n":"死亡教堂","v":"DeathCathedral"},{"n":"灵魂能力6","v":"SoulCalibur6"},{"n":"不要喂食猴子","v":"NotFeedMonkeys"},{"n":"古剑奇谭3","v":"GuJianqitan3"},{"n":"迷城重生","v":"RebornCity"},{"n":"剑士","v":"KenshiJS"},{"n":"GRIS","v":"GRIS"},{"n":"古剑奇谭:永夜","v":"gujianyongye"},{"n":"核爆RPG","v":"ATOMRPG"},{"n":"Below","v":"Below"},{"n":"嗜血印","v":"BloodySpell"},{"n":"伊苏9","v":"Ys9"},{"n":"兽人必须死3","v":"OrcsDie3"},{"n":"狙击精英VR","v":"SniperEliteVR"},{"n":"遗忘之城","v":"ForgotCity"},{"n":"Last Stop","v":"LastStop"},{"n":"从军","v":"jointhearmy"},{"n":"石炉","v":"Stonehearth"},{"n":"狂热运输2","v":"TransportFever2"},{"n":"机甲战士5","v":"MechWarrior5"},{"n":"分手装修","v":"ToolUP"},{"n":"PICO PARK","v":"PICOPARK"},{"n":"光明记忆:无限","v":"Brightmemory"},{"n":"秘馆疑踪","v":"HeavenDust"},{"n":"英雄传说:创之轨迹","v":"HajimariNOKiseki"},{"n":"战地系列","v":"Battlefiel"},{"n":"塞尔达传说天空之剑HD","v":"SkywardSword"},{"n":"国王的恩赐2","v":"KingsBounty2"},{"n":"脑航员2","v":"Psychonauts2"},{"n":"九十六号公路","v":"Road96"},{"n":"FORECLOSED","v":"FORECLOSED"},{"n":"RiMS Racing","v":"RiMSRacing"},{"n":"漫威银河护卫队","v":"GuardiansGalaxy"},{"n":"剑侠图","v":"JianXiaTu"},{"n":"审判之逝","v":"Lostjudgment"},{"n":"艾尔登法环","v":"ELDENRING"},{"n":"互动派对","v":"INTERACTIVEPARTY"},{"n":"极限竞速地平线5","v":"ForzaHorizon5"},{"n":"使命召唤系列","v":"CALLOFDUTYCOD"},{"n":"网吧模拟器","v":"InternetCS"},{"n":"The Anacrusis","v":"TheAnacrusis"},{"n":"文字游戏","v":"WordGame"},{"n":"消逝的光芒2","v":"DyingLight2"},{"n":"战神:诸神黄昏","v":"GodofWarRagnarok"},{"n":"师父","v":"SIFU"},{"n":"海上狼人杀","v":"DreadHunger"},{"n":"最终幻想:起源","v":"STRANGEROFPARADISE"},{"n":"HordeCore","v":"HordeCore"},{"n":"Indies Lies","v":"IndiesLies"},{"n":"霍格沃茨之遗","v":"HogwartsLegacy"},{"n":"太荒初境","v":"TalesofWild"},{"n":"Deck of Ashes","v":"DeckofAshes"},{"n":"星空","v":"Starfield"},{"n":"隐秘的角落","v":"YinMiDeJiaoLuo"},{"n":"江湖客栈","v":"TheJianghu"},{"n":"Ilysia","v":"Ilysia"},{"n":"Project Q","v":"ProjectQ"},{"n":"Pummel Party","v":"PummelParty"},{"n":"Holomento","v":"Holomento"},{"n":"Overprime","v":"Overprime"},{"n":"森林之子","v":"SonsOfTheForest"},{"n":"弈仙牌","v":"yixianpai"},{"n":"夜族崛起","v":"VRising"},{"n":"漫威SNAP","v":"MarvelSnap"},{"n":"魔力宝贝","v":"CrossGate"},{"n":"木卫四协议","v":"CallistoProtocol"},{"n":"罗马复兴","v":"RomanRenaissance"},{"n":"风暴之门","v":"StormGate"},{"n":"暗邪西部","v":"EvilWest"},{"n":"堕落之主","v":"LordsofFallen"},{"n":"High on Life","v":"HighonLife"},{"n":"匹诺曹的谎言","v":"LiesofP"},{"n":"逃生:试炼","v":"TheOutlastTrials"},{"n":"战锤40K暗潮","v":"40KDarktide"},{"n":"Isonzo","v":"Isonzo"},{"n":"索尼克 未知边境","v":"SonicFrontiers"},{"n":"漂泊牧歌","v":"WanderingVillage"},{"n":"塞尔达传说:王国之泪","v":"TEARSKINGDOM"},{"n":"破碎线","v":"Shatterline"},{"n":"卧龙:苍天陨落","v":"Wolong"},{"n":"卡库远古封印","v":"KAKU"},{"n":"原子之心","v":"AtomicHeart"},{"n":"霓虹入侵者","v":"FromSpace"},{"n":"Warhaven","v":"Warhaven"},{"n":"宝可梦:朱/紫","v":"ScarletandViolet"},{"n":"第一后裔","v":"TheFirstDescendant"},{"n":"铳墓G.O.R.E.","v":"GUNGRAVEGORE"},{"n":"Kingshunt","v":"Kingshunt"},{"n":"漫威暗夜之子","v":"MarvelMidnightSuns"},{"n":"奇怪的RPG","v":"WeirdRPG"},{"n":"Evercore Heroes","v":"EvercoreHeroes"},{"n":"东方:平野孤鸿","v":"MomentinEast"},{"n":"神之天平","v":"ASTLIBRARevision"},{"n":"伊克西翁","v":"IXION"},{"n":"主机一起看","v":"zjyqk"},{"n":"社交互动游戏","v":"SJHDYX"},{"n":"Divine Knockout","v":"DivineKnockout"},{"n":"巫师系列","v":"TheWitcher"},{"n":"至暗时刻","v":"DarkandDarker"},{"n":"江湖十一","v":"Jianghu11"},{"n":"XDefiant","v":"XDefiant"},{"n":"刺客信条:幻景","v":"ACMirage"},{"n":"Warlander","v":"Warlander"},{"n":"狂野之心","v":"WildHearts"},{"n":"Scars Above","v":"ScarsAbove"},{"n":"Pacific Drive","v":"PacificDrive"},{"n":"收获日3","v":"PAYDAY"},{"n":"浮生箓2九九行歌","v":"FloatingLife"},{"n":"The Front","v":"TheFront"},{"n":"最终幻想16","v":"FinalFantasyXVI"},{"n":"街头霸王","v":"StreetFighter"},{"n":"Tchia","v":"Tchia"},{"n":"魔戒:咕噜","v":"Gollum"},{"n":"Prison Life 2","v":"PrisonLife"},{"n":"Innchanted","v":"Innchanted"},{"n":"Life by You","v":"LifebyYou"},{"n":"Eresys","v":"Eresys"},{"n":"Pax Dei","v":"PaxDei"},{"n":"Teravit","v":"Teravit"},{"n":"Caliber","v":"Caliber"},{"n":"沙盒与副本:英勇之地","v":"HerosLand"},{"n":"Coridden","v":"Coridden"},{"n":"Unrecord","v":"Unrecord"},{"n":"Deducto 2","v":"Deducto2"},{"n":"装甲核心6境界天火","v":"ArmoredCore"},{"n":"Wayfinder","v":"Wayfinder"},{"n":"迷瘴纪事","v":"MiasmaChronicles"},{"n":"Minigame Madness","v":"MinigameMadness"},{"n":"Only Up","v":"onlyup"},{"n":"天文世界","v":"AstroWorld"},{"n":"学园构想家","v":"SchoolHomeroom"},{"n":"Jusant","v":"JUSANT"},{"n":"潜水员戴夫","v":"DAVETHEDIVER"},{"n":"GYLT","v":"GYLT"},{"n":"遗迹2","v":"RemnantII"},{"n":"索利斯堡","v":"FortSolis"},{"n":"Towerborne","v":"Towerborne"},{"n":"33 Immortals","v":"33Immortals"},{"n":"Wildmender","v":"Wildmender"},{"n":"How 2 Escape","v":"How2Escape"},{"n":"漫威蜘蛛侠2","v":"MarvelSpiderman2"},{"n":"博德之门3","v":"BG3"},{"n":"Eternights","v":"Eternights"},{"n":"Project F","v":"ProjectF"},{"n":"BaldMan Climbs Up","v":"BaldManClimbsUp"},{"n":"FC24","v":"FC24"},{"n":"NBA 2K24","v":"NBA2K24"},{"n":"超级马里奥兄弟:惊奇","v":"MarioWonder"},{"n":"蛮荒志异","v":"Taleswild"}]}],
"syxx":[{"key":"cateId","name":"分类","value":[{"n":"王者荣耀","v":"wzry"},{"n":"LOL手游","v":"LOLM"},{"n":"崩坏:星穹铁道","v":"bhxqtd"},{"n":"逆水寒手游","v":"NSHM"},{"n":"和平精英","v":"hpjy"},{"n":"暗区突围","v":"aqtw"},{"n":"蛋仔派对","v":"dzpd"},{"n":"高能英雄","v":"gnyx"},{"n":"幻塔","v":"ht"},{"n":"火影忍者","v":"hyrz"},{"n":"COD手游","v":"smzhsy"},{"n":"lol电竞经理","v":"EGAME"},{"n":"DNF手游","v":"mdnf"},{"n":"金铲铲之战","v":"JGAME"},{"n":"天刀手游","v":"tdsy"},{"n":"原神","v":"yuanshen"},{"n":"航海王热血航线","v":"HHWRXHX"},{"n":"元梦之星","v":"YMZX"},{"n":"鸿图之下","v":"htzx"},{"n":"欢乐麻将","v":"HLMJ"},{"n":"王者模拟战","v":"wzrpg"},{"n":"中国象棋","v":"ZGXQ"},{"n":"天谕手游","v":"tysy"},{"n":"巅峰坦克","v":"DFTK"},{"n":"新游中心","v":"xyzx"},{"n":"热门手游","v":"phone"},{"n":"梦幻手游","v":"mhxy"},{"n":"QQ飞车","v":"qqfcsy"},{"n":"第五人格","v":"dwrg"},{"n":"欢乐斗地主","v":"hlddz"},{"n":"荒野乱斗","v":"hyld"},{"n":"阴阳师","v":"yys"},{"n":"狼人杀","v":"LRS"},{"n":"JJ斗地主","v":"jj"},{"n":"梦幻新诛仙","v":"mhxzx"},{"n":"多多自走棋","v":"zzq"},{"n":"崩坏3","v":"bhxl"},{"n":"风云岛行动","v":"fydxd"},{"n":"云游戏","v":"cloudgame"},{"n":"跑跑手游","v":"PPKDCSY"},{"n":"率土之滨","v":"stzb"},{"n":"灌篮高手","v":"glgs"},{"n":"皇室战争","v":"hszz"},{"n":"忍者必须死3","v":"rzbxs3"},{"n":"神武4手游","v":"sw3"},{"n":"梦幻模拟战","v":"mhmnz"},{"n":"实况足球","v":"skzq"},{"n":"航海王:燃烧意志","v":"hhwrsyz"},{"n":"球球大作战","v":"qqdzz"},{"n":"英雄杀","v":"yxs"},{"n":"魔域口袋版","v":"mykdb"},{"n":"口袋新旅程","v":"KDXLC"},{"n":"剑网3指尖江湖","v":"jw3zjjh"},{"n":"部落冲突","v":"blct"},{"n":"剑与家园","v":"jyjy"},{"n":"新笑傲江湖","v":"xxajh"},{"n":"猫和老鼠","v":"mhls"},{"n":"猎人手游","v":"lrlr"},{"n":"明日之后","v":"mrzh"},{"n":"影之诗","v":"yzs"},{"n":"决战平安京","v":"jzpaj"},{"n":"魂斗罗归来","v":"DLHGL"},{"n":"圣斗士星矢","v":"sdsxs"},{"n":"魔力宝贝手游","v":"mlbbsy"},{"n":"哈利波特:魔法觉醒","v":"HarryPotter"},{"n":"手游推广","v":"rmsy"},{"n":"魔灵召唤","v":"mlzh"},{"n":"香肠派对","v":"xcpd"},{"n":"迷你世界","v":"MNSJ"},{"n":"FC足球世界","v":"FCZQSJ"},{"n":"街篮","v":"jl"},{"n":"明日方舟","v":"mrfz"},{"n":"一梦江湖","v":"ymjh"},{"n":"完美世界手游","v":"wmsjsy"},{"n":"拳皇98OL","v":"kof98"},{"n":"赛尔号","v":"srh"},{"n":"仙境传说","v":"xjcs"},{"n":"流星群侠传","v":"liuxinghudiejian"},{"n":"逃跑吧少年","v":"tpbsn"},{"n":"石器时代","v":"sqsd"},{"n":"RPG手游","v":"rpgsy"},{"n":"英魂之刃口袋版","v":"yh"},{"n":"倩女幽魂手游","v":"qnyhsy"},{"n":"决斗之城2","v":"jdzc2"},{"n":"传奇手游","v":"cqsy"},{"n":"雀魂","v":"Majsoul"},{"n":"二次元手游","v":"ecysy"},{"n":"征途2手游","v":"zt2sy"},{"n":"万王之王3D","v":"wwzw3D"},{"n":"武林外传","v":"wlwz"},{"n":"潮人篮球","v":"crlq"},{"n":"元气骑士","v":"yuanqiqishi"},{"n":"红警OL手游","v":"hjolsy"},{"n":"植物大战僵尸手游","v":"ZWDZJS"},{"n":"创造与魔法","v":"ccymf"},{"n":"奇迹觉醒","v":"qjjx"},{"n":"光遇","v":"skygy"},{"n":"游戏王:决斗链接","v":"yxwjdlj"},{"n":"巅峰战舰","v":"dfzj"},{"n":"寻仙","v":"xunxian"},{"n":"天天象棋","v":"ttxq"},{"n":"王国纪元","v":"wgjy"},{"n":"龙族幻想","v":"lzhx"},{"n":"三国杀移动版","v":"SGSSY"},{"n":"罗布乐思","v":"Roblox"},{"n":"足球手游","v":"zqsy"},{"n":"月圆之夜","v":"yyzy"},{"n":"秦时明月世界","v":"qsmysj"},{"n":"麻将来了","v":"mjll"},{"n":"风之大陆","v":"fzdl"},{"n":"金属对决","v":"jsdj"},{"n":"轩辕剑龙舞云山","v":"xyjlwys"},{"n":"微乐棋牌","v":"WLQP"},{"n":"辐射避难所Online","v":"fsbnsonline"},{"n":"街篮2","v":"jl2"},{"n":"极光计划","v":"jgjh"},{"n":"不良人3","v":"blr3"},{"n":"镇魔曲手游","v":"zmq"},{"n":"乱世王者","v":"lswz"},{"n":"篮球手游","v":"lqsy"},{"n":"鬼泣-巅峰之战","v":"gqdfzz"},{"n":"射击类手游","v":"qtsy"},{"n":"命运歌姬","v":"mygj"},{"n":"暗黑不朽","v":"diabloimmortal"},{"n":"新神魔大陆","v":"xsmdl"},{"n":"三国志战略版","v":"sgzzlb"},{"n":"天地劫:幽城再临","v":"tdj"},{"n":"Disorder","v":"Disorder"},{"n":"云上城之歌","v":"ysczg"},{"n":"五子棋","v":"wzq"},{"n":"围棋","v":"wq"},{"n":"全球行动","v":"qqxd"},{"n":"诛仙手游","v":"zxsy"},{"n":"妄想山海","v":"wxsh"},{"n":"黎明觉醒:生机","v":"lmjx"},{"n":"庆余年","v":"QYN"},{"n":"我的侠客","v":"wdxk"},{"n":"曙光英雄","v":"sgyx"},{"n":"大话西游手游","v":"dhxysy"},{"n":"战争怒吼","v":"zznh"},{"n":"忘川风华录","v":"wcfhl"},{"n":"新剑侠情缘手游","v":"xjxqysy"},{"n":"重生细胞","v":"csxb"},{"n":"汉家江湖","v":"HJJH"},{"n":"海岛奇兵","v":"hdqb"},{"n":"钢铁力量2","v":"gtll2"},{"n":"仙剑奇侠传九野","v":"xjqxzjy"},{"n":"大唐无双手游","v":"dtwssy"},{"n":"地铁跑酷","v":"dtpk"},{"n":"战舰世界闪击战","v":"zjsjsjz"},{"n":"狂暴之翼","v":"kbzy"},{"n":"横扫千军","v":"hsqj"},{"n":"节奏大爆炸","v":"jzdbz"},{"n":"喵斯快跑","v":"mskp"},{"n":"双子","v":"sz"},{"n":"小美斗地主","v":"xmddz"},{"n":"精灵之境","v":"jlzj"},{"n":"斗罗大陆:武魂觉醒","v":"dldlwhjx"},{"n":"斗罗大陆2绝世唐门","v":"dldl2jstm"},{"n":"战神觉醒","v":"zsjx"},{"n":"九州仙剑传H5","v":"jzxjzh5"},{"n":"荣耀大天使","v":"rydts"},{"n":"蓝月传奇","v":"lycq"},{"n":"凡人修仙传挂机版H5","v":"frxxzgjbh5"},{"n":"攻城掠地","v":"gcld"},{"n":"盗墓笔记","v":"dmbj"},{"n":"拳魂觉醒","v":"qhjx"},{"n":"大天使之剑","v":"dtszj"},{"n":"绝世仙王","v":"jsxw"},{"n":"一刀传世","v":"ydcs"},{"n":"斗罗大陆","v":"dldl"},{"n":"破雪刃","v":"pxr"},{"n":"JJ象棋","v":"jjxq"},{"n":"天姬变","v":"tjb"},{"n":"剑玲珑","v":"jll"},{"n":"火线精英","v":"hxjy"},{"n":"造梦西游OL","v":"zmxyol"},{"n":"奥奇传说手游","v":"aqcssy"},{"n":"战斗吧龙魂","v":"zdblh"},{"n":"剑开仙门","v":"jkxm"},{"n":"狼人对决","v":"lrdj"},{"n":"最终幻想:勇气启示录 幻影战争","v":"hyzz"},{"n":"葫芦娃兄弟","v":"hlwxd"},{"n":"造梦西游4","v":"zmxy4"},{"n":"比特小队","v":"btxd"},{"n":"流言侦探","v":"lyzt"},{"n":"战舰联盟","v":"zjlm"},{"n":"另一个伊甸:超越时空的猫","v":"lygyd"},{"n":"少女前线","v":"snqx"},{"n":"遇见","v":"yj"},{"n":"霓虹深渊:无限","v":"nhsywx"},{"n":"胡莱三国3","v":"hlsg3"},{"n":"奥拉星","v":"alx"},{"n":"先游云游戏","v":"Gamer"},{"n":"万象物语手游","v":"wxwy1"},{"n":"绿茵信仰","v":"lyxy"},{"n":"烟雨江湖","v":"yyjhsy"},{"n":"球球联盟","v":"qqlm"},{"n":"文明与征服","v":"wmyzf"},{"n":"碧蓝航线手游","v":"blhxsy"},{"n":"300大作战","v":"300dzz"},{"n":"2047","v":"2047"},{"n":"第七史诗","v":"dqss"},{"n":"汉末霸业","v":"hmby"},{"n":"EVE星战前夜无烬星河","v":"evexzqywjxh"},{"n":"少女前线2追放","v":"sq2zf"},{"n":"弹力果冻","v":"tlgd"},{"n":"火力苏打T3","v":"T3"},{"n":"植物大战僵尸2","v":"zwdzjs2"},{"n":"球球英雄","v":"qqyx"},{"n":"悠长假期","v":"ycjq"},{"n":"无悔华夏","v":"whrhx"},{"n":"猫之城","v":"mzc"},{"n":"未定事件簿","v":"wdsjp"},{"n":"白夜极光","v":"byjg"},{"n":"ProjectGAIA","v":"projectgaia"},{"n":"斗罗大陆:魂师对决","v":"dldlhsdj"},{"n":"古墓丽影传说:迷踪","v":"gmlycsmz"},{"n":"漫威对决","v":"mwdj"},{"n":"放置与召唤","v":"fzyzh"},{"n":"我是航海家","v":"wshhj"},{"n":"军团战棋英雄时代","v":"jtzqyxsd"},{"n":"繁荣美食市场物语","v":"frmsscwy"},{"n":"老农种树","v":"lnzs"},{"n":"三国演义:吞噬无界","v":"sgyytswj"},{"n":"偶像梦幻祭2","v":"oxmhj2"},{"n":"卡卡保皇","v":"kkbh"},{"n":"灵猫传","v":"lmz"},{"n":"剑侠世界3","v":"jxsj3"},{"n":"召唤与合成2","v":"zhyhc2"},{"n":"像素时代","v":"xssd"},{"n":"仙侠第一放置","v":"xxdyfz"},{"n":"无尽的拉格朗日","v":"wjdlglr"},{"n":"弓箭手大作战","v":"gjsdzz"},{"n":"挨饿荒野","v":"aehy"},{"n":"诺亚之心","v":"nyzx"},{"n":"闪耀暖暖","v":"synn"},{"n":"物种起源","v":"wzqy"},{"n":"模拟城市:我是市长","v":"mncswssc"},{"n":"重返帝国","v":"cfdg"},{"n":"太古仙尊","v":"tgxz"},{"n":"长安幻想","v":"cahx"},{"n":"火炬之光:无限","v":"hjzgwx"},{"n":"富豪闯三国","v":"fhcsg"},{"n":"拂晓","v":"fx"},{"n":"古剑奇谭木语人","v":"gjqtmyr"},{"n":"火影忍者:忍者新世代","v":"hyrzrzxsd"},{"n":"末日远征","v":"mryz"},{"n":"滚动的天空","v":"gddtk"},{"n":"新斗罗大陆","v":"xdldl"},{"n":"登山赛车","v":"dssc"},{"n":"荒野乱斗(腾讯版)","v":"hyldtxb"},{"n":"小小勇者","v":"xxyz"},{"n":"小冰冰传奇","v":"xbbcq"},{"n":"三国战纪2手游","v":"sgzj2"},{"n":"幸存者危城","v":"xczwc"},{"n":"冒险公社手游","v":"mxgs"},{"n":"欧陆战争5帝国","v":"olzz5dg"},{"n":"纪念碑谷2","v":"jnbg2"},{"n":"大航海探险物语","v":"dhhtxwy"},{"n":"航海日记","v":"hhrj"},{"n":"一拳超人:最强之男","v":"yqcrzqzn"},{"n":"王国保卫战4","v":"wgbwz4"},{"n":"半世界之旅","v":"bsjzl"},{"n":"奥特曼宇宙英雄","v":"atmyzyx"},{"n":"新三国杀","v":"xsgs"},{"n":"奶块","v":"nk"},{"n":"策魂三国","v":"chsg"},{"n":"奥特曼系列OL","v":"atmxlol"},{"n":"欢喜斗地主","v":"HXDDZ"},{"n":"洪荒文明","v":"hhwm"},{"n":"街头足球","v":"jtzq"},{"n":"同人圣三国蜀汉传","v":"trssgshc"},{"n":"塔防之光","v":"tfzg"},{"n":"我做夫人那些年","v":"wzfrnxn"},{"n":"小小五千年","v":"xxwqn"},{"n":"乖离性百万亚瑟王:环","v":"glxbwyswh"},{"n":"时空猎人","v":"sklr"},{"n":"星际逆战","v":"xjnz"},{"n":"羽毛球高高手","v":"ymqggs"},{"n":"LoveLive! 学园偶像祭","v":"lovelivexyoxj"},{"n":"黑色沙漠手游","v":"hesmsy"},{"n":"魔力宝贝:旅人","v":"mlbblr"},{"n":"大家饿餐厅","v":"dject"},{"n":"魔力宝贝归来","v":"mlbbgl"},{"n":"巅峰极速","v":"dfjs"},{"n":"新盗墓笔记","v":"xdmbj"},{"n":"轩辕传奇手游","v":"XYCQSY"},{"n":"萤火突击国际服","v":"yhtj"},{"n":"武林闲侠","v":"wlxx"},{"n":"淘米游戏","v":"tmyx"},{"n":"无期迷途","v":"wqmt"},{"n":"逆光潜入","v":"ngqr"},{"n":"深空之眼","v":"skzy"},{"n":"CF手游","v":"CFSY"},{"n":"新天龙八部手游","v":"xtlbbsy"},{"n":"尘白禁区","v":"cbjq"},{"n":"原始征途","v":"yszt"},{"n":"全民大灌篮","v":"qmdgl"},{"n":"枪火重生手游","v":"GunfireReborn"},{"n":"火影三国志","v":"g_hysg"},{"n":"网易其它组","v":"g_wyqt"},{"n":"三国战纪手游","v":"sgzjsy"},{"n":"染·钟楼谜团","v":"BOTC"},{"n":"绝区零","v":"jql"},{"n":"重返CODM","v":"RECODM"},{"n":"综合手游","v":"zhsy"},{"n":"IP游戏","v":"ipyx"},{"n":"鸣潮","v":"cm"},{"n":"棋牌游戏","v":"QPYX"},{"n":"奥比岛:梦想国度","v":"abdmxgd"},{"n":"晶核","v":"jhcoa"},{"n":"星之破晓","v":"dhpx"},{"n":"赛尔计划","v":"srjh"},{"n":"SLG综合","v":"SLG"},{"n":"代号:伙伴","v":"DHGB"},{"n":"天使之战","v":"tszz"},{"n":"全明星街球派对","v":"hoopheroes"},{"n":"合金弹头:觉醒","v":"MetalSlug"},{"n":"劲乐幻想","v":"g_jyhx"},{"n":"白荆回廊","v":"BJHL"},{"n":"战地无疆","v":"zdwj"},{"n":"三国志战棋版","v":"g_sgzzqb"},{"n":"一拳超人:世界","v":"yqcrsj"},{"n":"鹅鸭杀手游","v":"GooseDuck"},{"n":"太空杀","v":"SuperSus"},{"n":"大话西游:归来","v":"dhxygl"},{"n":"战火勋章","v":"zhxz"},{"n":"西行纪 燃魂","v":"xxjrh"},{"n":"决胜巅峰","v":"jueshengdianfeng"},{"n":"冒险岛:枫之传说","v":"MapleStory"},{"n":"七人传奇:光与暗之交战","v":"qirenchuanqi"},{"n":"综合桌游","v":"ZHZY"},{"n":"闪耀!优俊少女","v":"PrettyDerby"},{"n":"三角洲行动","v":"DF"},{"n":"二次元游戏","v":"ECYYX"}]}],
// "yz":[{"key":"cateId","name":"分类","value":[{"n":"颜值","v":"yz"}]}],
"kjwh":[{"key":"cateId","name":"分类","value":[{"n":"企鹅直播","v":"qezb"},{"n":"数码科技","v":"smkj"},{"n":"纪录片","v":"jlp"},{"n":"成年教育","v":"jiaoyu"},{"n":"人文社科","v":"Humanities"}]}],
"yp":[{"key":"cateId","name":"分类","value":[{"n":"派对","v":"paidui"},{"n":"心动FM.","v":"DIANT"},{"n":"一起玩","v":"yiqiwan"}]}],
"voice":[{"key":"cateId","name":"分类","value":[{"n":"语音交友","v":"yyjy"},{"n":"音乐之声","v":"yyzs"},{"n":"连麦互动","v":"lianmaihudong"},{"n":"娱乐开黑","v":"ylkh"}]}]
// "znl":[{"key":"cateId","name":"分类","value":[{"n":"正能量","v":"znl"}]}]
},
filter_def:{
yl:{cateId:'yqk'},
PCgame:{cateId:'LOL'},
djry:{cateId:'AC'},
syxx:{cateId:'wzry'},
yz:{cateId:'yz'},
kjwh:{cateId:'smkj'},
yp:{cateId:'yiqiwan'},
voice:{cateId:'yyzs'},
znl:{cateId:'znl'}
},
class_name:'娱乐天地&网游竞技&单机热游&手游休闲&颜值&科技文化&语音互动&语音直播&正能量',// /api/cate/list
class_url:'yl&PCgame&djry&syxx&yz&kjwh&yp&voice&znl',
detailUrl: 'http://live.yj1211.work/api/live/getRoomInfo?uid=&platform=douyu&roomId=fyid',// JustLive
searchUrl:'/api/search/liveRoom?#did=10000000000000000000000000001501&limit=20&offset=0&sk=**;post',
searchable:2,
quickSearch:0,
headers:{
'User-Agent':'MOBILE_UA'
},
timeout:5000,
limit:8,
play_parse:true,
lazy:'',
推荐:`js:
let d = [];
let jo = JSON.parse(request(input)).data;
jo.forEach((it,idex) => {
let slist = jo[idex].list ;
slist.forEach(it => {
d.push({
url: it.rid,
title: it.roomName,
img: it.roomSrc,
desc: '👁' + it.hn + ' ' + '🆙' + it.nickname,
})
});
});
setResult(d);
`,
一级:`js:
let d = [];
let jo = JSON.parse(request(input)).data.list;
jo.forEach(it => {
d.push({
url: it.rid,
title: it.roomName,
img: it.roomSrc,
desc: '👁' + it.hn + ' ' + '🆙' + it.nickname,
})
});
setResult(d);
`,
二级:`js:
var d = [];
var jo = JSON.parse(request(input)).data;
VOD = {
vod_id: jo.roomId,
vod_name: jo.roomName,
vod_pic: jo.roomPic,
type_name: jo.platForm.replace("douyu", "斗鱼") + "." + jo.categoryName,
vod_remarks: '🏷roomId ' + jo.roomId,
vod_director: '👥在线人数 ' + jo.online,
vod_actor: '🆙 ' + jo.ownerName,
vod_content: '🏷roomId' + jo.roomId + "" + ' 🏷状态:' + (jo.isLive == 1 ? '正在直播' : '未开播'),
// vod_content: "🏷分区:" + jo.platForm.replace("douyu", "斗鱼") + "·" + jo.categoryName + " 🏷UP主" + jo.ownerName + " 🏷人气:" + jo.online + (jo.isLive === 1 ? " 🏷状态:正在直播" : "状态:未开播"),
};
var playurl = JSON.parse(request("http://live.yj1211.work/api/live/getRealUrl?platform=" + jo.platForm + "&roomId=" + jo.roomId)).data;
// var name = {
// OD: "JustLive",
// FD: "流畅",
// LD: "标清",
// SD: "高清",
// HD: "JustLive(预览)",
// "2K": "2K",
// "4K": "4K",
// FHD: "全高清",
// XLD: "极速",
// SQ: "普通音质",
// HQ: "高音质",
// };
Object.keys(playurl).forEach(function(key) {
// if (!/ayyuid|to/.test(key)) {
if (/OD/.test(key)) {
d.push({
// title: name[key],
title: 'JustLive',
url: playurl[key]
})
}
});
d.push({
title: "斗鱼解析1",
url: "http://epg.112114.xyz/douyu/" + jo.roomId
}, {
title: "斗鱼解析2",
url: "https://www.aois.eu.org/live/douyu/" + jo.roomId
}, {
title: "斗鱼解析3",
url: "https://www.goodiptv.club/douyu/" + jo.roomId
}, {
title: "斗鱼解析4",
url: "http://maomao.kandiantv.cn/douyu1.php?id=" + jo.roomId
});
VOD.vod_play_from = "播放源";
VOD.vod_play_url = d.map(function(it) {
return it.title + "$" + it.url
}).join("#");
setResult(d);
`,
搜索:'json:data.list;roomName;roomSrc;nickname;roomId',
}

View File

@ -0,0 +1,38 @@
var rule={
title:'曲奇动漫',
// host:'https://www.quqidm.net',
host:'https://www.quqim.net',
// url:'/list/?genre=fyclass&pagesize=24&pageindex=fypage',
url:'/list/?genre=fyclassfyfilter',
filterable:1,//是否启用分类筛选,
filter_url:'&pagesize=24&pageindex=(fypage-1)&region={{fl.area}}&order={{fl.by}}&label={{fl.class}}&letter={{fl.letter}}&year={{fl.year}}',
filter:{
"TV":[{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"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":"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"}]},{"key":"class","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":"欢乐向"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":""},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}],
"剧场版":[{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"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":"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"}]},{"key":"class","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":"欢乐向"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":""},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}],
"OVA":[{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"日本","v":"日本"},{"n":"中国","v":"中国"},{"n":"欧美","v":"欧美"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"A"},{"n":"B","v":"B"},{"n":"C","v":"C"},{"n":"D","v":"D"},{"n":"E","v":"E"},{"n":"F","v":"F"},{"n":"G","v":"G"},{"n":"H","v":"H"},{"n":"I","v":"I"},{"n":"J","v":"J"},{"n":"K","v":"K"},{"n":"L","v":"L"},{"n":"M","v":"M"},{"n":"N","v":"N"},{"n":"O","v":"O"},{"n":"P","v":"P"},{"n":"Q","v":"Q"},{"n":"R","v":"R"},{"n":"S","v":"S"},{"n":"T","v":"T"},{"n":"U","v":"U"},{"n":"V","v":"V"},{"n":"W","v":"W"},{"n":"X","v":"X"},{"n":"Y","v":"Y"},{"n":"Z","v":"Z"}]},{"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":"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"}]},{"key":"class","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":"欢乐向"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":""},{"n":"名称","v":"名称"},{"n":"点击量","v":"点击量"}]}]
},
searchUrl:'/s_all?ex=fypage&kw=**',
searchable:2,//是否启用全局搜索,
quickSearch:0,//是否启用快速搜索,
headers:{
'User-Agent':'MOBILE_UA',
},
class_name:'TV&剧场版&OVA',
class_url:'TV&剧场版&OVA',
play_parse:true,
detailUrl:'',
lazy:"",
limit:6,
推荐:'.img&&ul;li;*;*;p:eq(1)&&Text;*',
double:true, // 推荐内容是否双层定位
一级:'.lpic&&li;img&&alt;img&&src;.red&&Text;a&&href',
二级:{
"title":"h1&&Text;.sinfo&&span--label:eq(2)&&Text",
"img":".thumb&&img&&src",
"desc":".score&&Text;.sinfo&&span--label:eq(0)&&Text;.sinfo&&span--label:eq(1)&&Text;.sinfo&&p:eq(0)&&Text;.sinfo&&p:eq(1)&&Text",
"content":".info&&Text",
"tabs":"#menu0&&li",
"lists":".movurl:eq(#id)&&li"
},
搜索:'*',
}

View File

@ -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};

View File

@ -0,0 +1,59 @@
muban.短视2.二级.img = '.detail-pic&&img&&data-src';
var rule = {
title: '爱弹幕',
模板:'短视2',
host: 'https://anime.girigirilove.com',
homeUrl:'/map/',
// url:'/show/fyclass--------fypage---/'
url: '/show/fyclassfyfilter/',
filterable:1,//是否启用分类筛选,
filter_url:'-{{fl.area}}-{{fl.by}}-{{fl.class}}-{{fl.lang}}-{{fl.letter}}---fypage---{{fl.year}}',
filter: {
"2":[{"key":"class","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":"area","name":"地区","value":[{"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","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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"日语","v":"日语"},{"n":"国语","v":"国语"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}],
"3":[{"key":"class","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":"运动"}]},{"key":"area","name":"地区","value":[{"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","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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"国语"},{"n":"英语","v":"英语"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}],
"21":[{"key":"class","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":"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":"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"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"日语","v":"日语"},{"n":"中文","v":"中文"},{"n":"英语","v":"英语"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}],
"20":[{"key":"class","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":"area","name":"地区","value":[{"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","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.2003","v":"2004.2003"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"日语","v":"日语"},{"n":"英语","v":"英语"},{"n":"泰语","v":"泰语"}]},{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}],
"24":[{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}],
"26":[{"key":"by","name":"排序","value":[{"n":"最新","v":"time"},{"n":"最热","v":"hits"},{"n":"评分","v":"score"}]}]
},
searchUrl: '/search/**----------fypage---/',
class_name:'日番&美番&劇場版&真人番劇&BD副音軌&其他',
class_url:'2&3&21&20&24&26',
play_parse:true,
lazy:`js:
var html = JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);
var url = html.url;
var from = html.from;
var next = html.link_next;
if (html.encrypt == '1') {
url = unescape(url)
} else if (html.encrypt == '2') {
url = unescape(base64Decode(url))
} else if (html.encrypt == '3') {
url = url.substring(8, url.length);
url = base64Decode(url);
url = url.substring(8, (url.length) - 8)
}
if (/\\.m3u8|\\.mp4/.test(url)) {
input = {
jx: 0,
url: url,
parse: 0
}
} else {
var paurl = request(HOST + '/static/player/' + from + '.js').match(/ src="(.*?)'/)[1];
if (/https/.test(paurl)) {
var purl = paurl + url + '&next=' + next + '&title=';
input = {
jx: 0,
url: purl,
parse: 1
}
}
}
`,
推荐:'.border-box&&.public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
double: false, // 推荐内容是否双层定位
一级:'.border-box .public-list-box;a&&title;.lazy&&data-src;.public-list-prb&&Text;a&&href',
搜索:'.row-right&&.search-box;.thumb-txt&&Text;.lazy&&data-src;.public-list-prb&&Text;a&&href',
}

View File

@ -0,0 +1,296 @@
{
"作者":"",
"站名":"爱看影院",
"主页url":"https://www.3wyy.com/",
"简介":"【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+module-info-introduction\">&&</p>",
"导演":"导演:&&</div>",
"主演":"主演:&&</div>",
"影片类型":"module-info-tag\">&&立即播放",
"影片状态":"集数:&&</div>",
"数组":"<a&&module-poster-item-info\"",
"标题":"title=\"&&\"",
"副标题":"note\">&&</div>",
"图片":"data-original=\"&&\"",
"链接":"href=\"&&\"",
"线路数组":"data-dropdown-value=&&</div>[不包含:夸克]",
"线路标题":"<span>&&</small>[替换:</span><small>>>共]+集",
"播放数组":"module-play-list\">&&</div>",
"播放标题":"神仙影视+<span>&&</span>",
"播放列表":"<a&&</a>",
"分类url":"https://www.3wyy.com/vodshow/{cateId}-{area}-{by}-{class}-{lang}----{catePg}---{year}.html;;ak",
"分类":"电影$1#电视剧$2#综艺$3#动漫$4",
"筛选":{
"1":[
{"key":"cateId","name":"类型","value":[
{"n":"全部类型","v":""},
{"n":"动作片","v":"25"},
{"n":"喜剧片","v":"26"},
{"n":"爱情片","v":"27"},
{"n":"科幻片","v":"28"},
{"n":"恐怖片","v":"30"},
{"n":"剧情片","v":"31"},
{"n":"战争片","v":"33"},
{"n":"纪录片","v":"35"},
{"n":"悬疑片","v":"36"},
{"n":"犯罪片","v":"38"},
{"n":"冒险片","v":"40"},
{"n":"动画片","v":"41"},
{"n":"惊悚片","v":"43"},
{"n":"奇幻片","v":"44"},
{"n":"理论片","v":"46"}
]
},
{"key":"class","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":"网络电影"}
]
},
{"key":"area","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":"其他"}
]
},
{"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":"2010","v":"2010"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
],
"2":[
{"key":"cateId","name":"类型","value":[
{"n":"全部类型","v":""},
{"n":"国产剧","v":"42"},
{"n":"欧美剧","v":"45"},
{"n":"日韩剧","v":"47"},
{"n":"港台剧","v":"49"},
{"n":"泰剧","v":"51"},
{"n":"海外剧","v":"52"}
]
},
{"key":"class","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":"area","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":"lang","name":"语言","value":[
{"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","v":"2014"},
{"n":"2013","v":"2013"},
{"n":"2012","v":"2012"},
{"n":"2011","v":"2011"},
{"n":"2010","v":"2010"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
],
"3":[
{"key":"cateId","name":"类型","value":[
{"n":"全部类型","v":""},
{"n":"大陆综艺","v":"20"},
{"n":"日韩综艺","v":"21"},
{"n":"港台综艺","v":"22"},
{"n":"欧美综艺","v":"23"}
]
},
{"key":"class","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":"area","name":"地区","value":[
{"n":"全部地区","v":""},
{"n":"内地","v":"内地"},
{"n":"港台","v":"港台"},
{"n":"日韩","v":"日韩"},
{"n":"欧美","v":"欧美"}
]
},
{"key":"lang","name":"语言","value":[
{"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","v":"2014"},
{"n":"2013","v":"2013"},
{"n":"2012","v":"2012"},
{"n":"2011","v":"2011"},
{"n":"2010","v":"2010"}
]
},
{"key":"by","name":"排序","value":[
{"n":"全部排序","v":""},
{"n":"时间排序","v":"time"},
{"n":"人气排序","v":"hits"},
{"n":"评分排序","v":"score"}
]
}
]
}
}

View File

@ -0,0 +1,274 @@
{
"作者":"",
"站名":"维奇动漫",
"数组":"<li class=\"col-xs-3\">&&</span>",
"图片":"data-echo=\"&&\"",
"分类url":"https://www.uiviki.com/anime-select-{cateId}-{area}--{class}-{lang}----{catePg}---{year}.html",
"分类":"连载动漫$lianzai#日本动漫$riman#国产动漫$guoman",
"筛选":{
"lianzai":[
{"key":"class","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":"冒险"}
]
},
{"key":"area","name":"地区","value":[
{"n":"日本","v":"日本"},
{"n":"韩国","v":"韩国"},
{"n":"大陆","v":"大陆"},
{"n":"台湾","v":"台湾"},
{"n":"香港","v":"香港"},
{"n":"美国","v":"美国"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"日语","v":"日语"},
{"n":"英语","v":"英语"},
{"n":"国语","v":"国语"},
{"n":"台语","v":"台语"},
{"n":"粤语","v":"粤语"},
{"n":"韩语","v":"韩语"}
]
},
{"key":"yera","name":"时间","value":[
{"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"}
]
}
],
"riman":[
{"key":"class","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":"冒险"}
]
},
{"key":"area","name":"地区","value":[
{"n":"日本","v":"日本"},
{"n":"韩国","v":"韩国"},
{"n":"大陆","v":"大陆"},
{"n":"台湾","v":"台湾"},
{"n":"香港","v":"香港"},
{"n":"美国","v":"美国"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"日语","v":"日语"},
{"n":"英语","v":"英语"},
{"n":"国语","v":"国语"},
{"n":"台语","v":"台语"},
{"n":"粤语","v":"粤语"},
{"n":"韩语","v":"韩语"}
]
},
{"key":"yera","name":"时间","value":[
{"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"}
]
}
],
"guoman":[
{"key":"class","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":"冒险"}
]
},
{"key":"area","name":"地区","value":[
{"n":"日本","v":"日本"},
{"n":"韩国","v":"韩国"},
{"n":"大陆","v":"大陆"},
{"n":"台湾","v":"台湾"},
{"n":"香港","v":"香港"},
{"n":"美国","v":"美国"}
]
},
{"key":"lang","name":"语言","value":[
{"n":"日语","v":"日语"},
{"n":"英语","v":"英语"},
{"n":"国语","v":"国语"},
{"n":"台语","v":"台语"},
{"n":"粤语","v":"粤语"},
{"n":"韩语","v":"韩语"}
]
},
{"key":"yera","name":"时间","value":[
{"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"}
]
}
]
}
}

View File

@ -0,0 +1,127 @@
//写法思路来自biubiu影院海阔视界xpath筛选。
//项目魔改至github开源仓库https://github.com/Tangsan99999/TvJar中的XBiubiu.java文件
//本文档为完整模板,实际情况可按规则写法删去不需要的。
{
//规则名
"title": "网易CC直播",
//作者
"author": "聆听优美旋律",
//请求头UA,不填则默认okhttp/3.12.11可填MOBILE_UA或PC_UA使用内置的手机版或电脑版UA
//习惯查看手机源码写建议用手机版UA习惯查看PC版源码写建议用电脑版UA
"UserAgent":"",
//请求头Referer参数如果只是播放页需要填WebView即可引用播放页的链接作嗅探Referer参数。
//一般很少用,留空或删除
"Referer":"",
//图片是否需要走代理一般是图片无Referer参数不显示那种需要全局设置0否1是。
"PicNeedProxy":"0",
//是否开启获取首页数据0关闭1开启
"homeContent":"1",
//分类链接起始页码,禁止负数和含小数点。
"firstpage": "1",
//分类链接,{cateId}是分类,{catePg}是页码,第一页没有页码的可以这样写 第二页链接[firstPage=第一页的链接]
"class_url": "http://api.cc.163.com/v1/wapcc/liveinfo?gametype={cateId}&page={catePg}",
//分类名分类1&分类2&分类3
"class_name": "网游&手游&竞技&综艺",
//分类名替换词替换词1&替换词2&替换词3替换词包含英文&的用两个中文代替示例id=0&id=1
"class_value": "3&25&9006&65005",
//筛选数据支持直写clan://本地路径(可能有bug)http云端链接标准json格式参考xpath的筛选写法
//填ext可以使用下面手动填写的筛选数据。
"filterdata":"ext",
//!!!要使用下面的筛选数据筛选数据那一定要填ext"filterdata":"ext"
//子分类名称{cateId}第一子分类1&第一子分类2||第二子分类1&第二子分类2
"fclass_name": "梦幻西游电脑版&永劫无间&大话西游2经典版&新倩女幽魂&大话西游2免费版&逆水寒&其他游戏&天下3&荒野行动PC模拟器&一梦江湖&大唐无双零&武魂2&天谕&镇魔曲&无尽战区&命运2&魔兽世界&暗黑破坏神&泰亚史诗&战意&易次元&魔兽世界怀旧服&无主之地3&超激斗梦境&EVE Online&全面战争:竞技场&暴雪游戏&FPS综合游戏&魔兽争霸&绿茵信仰&大话女儿国&燕云十六声&射雕||梦幻西游手游&第五人格&明日之后&倩女幽魂手游&阴阳师&蛋仔派对&荒野行动&大话西游手游&率土之滨&光·遇&综合手游&天谕手游&梦幻西游三维版&决战!平安京&神都夜行录&大唐无双手游&哈利波特:魔法觉醒&王牌竞速&超凡先锋&狼人杀&暗黑破坏神:不朽&逆水寒手游&梦幻西游网页版&乱斗西游2&《天下》手游&劲舞团&光明大陆&镇魔曲手游&三少爷的剑&迷雾世界&终结战场&永远的7日之都&魂之轨迹&三国如龙传&量子特攻&非人学园&堡垒前线:破坏与创造&战争怒吼&猎魂觉醒&终结战场PC版&轩辕剑龙舞云山&实况:王者集结&机动都市阿尔法&权力与纷争&花与剑&流星群侠传&猫和老鼠&游戏王:决斗链接&漫威超级战争&遇见逆水寒&阴阳师:百闻牌&青璃&阴阳师:妖怪屋&宝可梦大探险&重装上阵&猎手之王&第九所&风云岛行动&一起优诺&隐世录&洪荒文明&忘川风华录&密特拉之星&阴阳师: 妖怪小班&无尽的拉格朗日&星战前夜:无烬星河&漫威对决&月神的迷宫&有杀气童话2&零号任务&绝对演绎&大话西游:归来&巅峰极速&大航海之路&大富翁9&永恒文明&新游中心&我的世界中国版||我的世界&实况足球&炉石传说&风暴英雄&守望先锋&暴雪经典&主机单机&影之诗||星秀&正能量&风华正茂&古风国色&巨好看&二次元&语音",
//分类名替换词替换词1&替换词2&替换词3替换词包含英文&的用两个中文代替示例id=0&id=1
"fclass_value": "3&9133&6&4&20&9051&0&2&9041&9049&8&14&21&23&29&31&1001&1004&9027&9030&9078&9099&9102&9105&9115&9119&9122&9124&9127&9143&9146&9149&9150||25&9045&9050&30&9010&9141&9035&28&90013&9063&9118&9085&9075&9031&9053&90018&9109&9123&9107&9034&9144&9148&9&24&9009&9012&9019&9020&9024&9025&9028&9032&9038&9039&9042&9043&9046&9047&9052&9054&9056&9060&9061&9065&9069&9072&9077&9084&9089&9091&9092&9093&9096&9097&9098&9100&9104&9108&9112&9113&9128&9129&9131&9132&9134&9136&9137&9138&9139&9140&9142&9151&9153&90014&90015&90017&99999&65006||9006&9055&1005&1006&1007&9021&9022&9036||65005&9120&9079&65003&65004&65008&95599",
//分类页面截取数据模式0为json1为普通网页。
"cat_mode": "0",
//分类json列表数组定位最多支持3层能力有限不是所有页面都能支持
"catjsonlist": "data.live_list",
//分类json片单图片
"catjsonpic": "cover",
//分类json片单标题
"catjsonname": "title",
//分类json片单链接
"catjsonid": "channelid",
//分类json片单副标题
"catjsonstitle":"nickname",
//分类片单链接补前缀
"cat_prefix": "https://cc.163.com/live/channel/?channelids=",
//分类片单链接补后缀
"cat_suffix": "",
//片单链接是否直接播放0否1分类片单链接直接播放2详情选集链接直接播放。
//设置成直接播放后后面3个参数请注意该留空的请务必留空。
"force_play": "0",
//直接播放链接补前缀
"play_prefix": "",
//直接播放链接补后缀,设置为#isVideo=true#可强制识别为视频链接
"play_suffix": "#isVideo=true#",
//直接播放链接设置请求头,只对直链视频有效,每一组用#分开
"play_header": "",
//演员数据,截取前缀&&截取后缀
"proj_actor": "",
//简介内容,截取前缀&&截取后缀
"proj_plot": "",
//线路截取区域如果不需要请把tab_title或tab_arr_pre置空或者全部不要填。
//线路是否二次截取
"tab_YN_twice": "0",
//线路二次截取前
"tab_twice_pre": "",
//线路二次截取后
"tab_twice_suf": "",
//线路截取数组前
"tab_arr_pre": "空",
//线路截取数组后
"tab_arr_suf": "空",
//线路标题,截取前缀&&截取后缀
"tab_title": "空",
//列表是否二次截取
"list_YN_twice": "0",
//列表二次截取前
"list_twice_pre": "空",
//列表二次截取后
"list_twice_suf": "空",
//列表数组截取前,必须
"list_arr_pre": "data\": [",
//列表数组截取后,必须
"list_arr_suf": "follower_num",
//集数是否二次截取
"epi_YN_twice": "0",
//集数二次截取前
"epi_twice_pre": "空",
//集数二次截取后
"epi_twice_suf": "空",
//集数数组截取前,必须
"epi_arr_pre": "quickplay",
//集数数组截取后,必须
"epi_arr_suf": "gamename",
//集数标题,截取前缀&&截取后缀
"epi_title": "nickname\": \"&&\"",
//集数链接,截取前缀&&截取后缀
"epi_url": "sharefile\": \"&&\"",
//集数链接补前缀
"epiurl_prefix": "",
//集数链接补后缀
"epiurl_suffix": "",
//下面几个参数请勿乱用。否则可能会有副作用。
//分析网页源码中有<script type="text/javascript">var player_aaaa={"flag":"play","encrypt这种源码的链接解析
//如果网页源码里没有这种请设置为0
"Anal_MacPlayer":"0",
//是否开启手动嗅探只对网页嗅探有效0否1是
"ManualSniffer":"0",
//手动嗅探视频链接关键字,每个用#隔开
"VideoFormat":".mp4#.m3u8#.flv",
//手动嗅探视频链接过滤关键词,每个用#隔开
"VideoFilter":".html#=http"
}

View File

@ -0,0 +1,30 @@
muban.mxpro.二级.desc = '.module-info-item:eq(-1)&&Text;;;.module-info-item-content:eq(2)&&Text;.module-info-item-content:eq(1)&&Text'
muban.mxpro.二级.tabs = '#y-playList&&.tab-item'
var rule={
title:'网飞.TV',
模板:'mxpro',
host:'https://www.wangfei.tv',
// url:'/vodshow/id/fyclass/page/fypage.html',
url:'/vodshow/id/fyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.cateId}}{{fl.area}}{{fl.by}}{{fl.class}}{{fl.lang}}{{fl.letter}}/page/fypage{{fl.year}}',
filter: {
"dy":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"dy"},{"n":"动作片","v":"dongzuopian"},{"n":"喜剧片","v":"xijupian"},{"n":"爱情片","v":"aiqingpian"},{"n":"犯罪片","v":"fanzuipian"},{"n":"恐怖片","v":"kongbupian"},{"n":"科幻片","v":"kehuanpian"},{"n":"悬疑片","v":"xuanyipian"},{"n":"剧情片","v":"juqingpian"},{"n":"动画片","v":"donghuapian"},{"n":"战争片","v":"zhanzhengpian"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"喜剧","v":"/class/喜剧"},{"n":"爱情","v":"/class/爱情"},{"n":"恐怖","v":"/class/恐怖"},{"n":"动作","v":"/class/动作"},{"n":"科幻","v":"/class/科幻"},{"n":"剧情","v":"/class/剧情"},{"n":"战争","v":"/class/战争"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动画","v":"/class/动画"},{"n":"奇幻","v":"/class/奇幻"},{"n":"武侠","v":"/class/武侠"},{"n":"冒险","v":"/class/冒险"},{"n":"枪战","v":"/class/枪战"},{"n":"恐怖","v":"/class/恐怖"},{"n":"悬疑","v":"/class/悬疑"},{"n":"惊悚","v":"/class/惊悚"},{"n":"经典","v":"/class/经典"},{"n":"青春","v":"/class/青春"},{"n":"文艺","v":"/class/文艺"},{"n":"古装","v":"/class/古装"},{"n":"历史","v":"/class/历史"},{"n":"运动","v":"/class/运动"},{"n":"农村","v":"/class/农村"},{"n":"儿童","v":"/class/儿童"},{"n":"微电影","v":"/class/微电影"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"/area/内地"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"法国","v":"/area/法国"},{"n":"英国","v":"/area/英国"},{"n":"日本","v":"/area/日本"},{"n":"德国","v":"/area/德国"},{"n":"泰国","v":"/area/泰国"},{"n":"印度","v":"/area/印度"},{"n":"意大利","v":"/area/意大利"},{"n":"西班牙","v":"/area/西班牙"},{"n":"加拿大","v":"/area/加拿大"},{"n":"其他","v":"/area/其他"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"普通话","v":"/lang/普通话"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"法语","v":"/lang/法语"},{"n":"德语","v":"/lang/德语"},{"n":"其它","v":"/lang/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"juji":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"juji"},{"n":"国产剧","v":"guochanju"},{"n":"香港剧","v":"xianggangju"},{"n":"台湾剧","v":"taiwanju"},{"n":"欧美剧","v":"oumeiju"},{"n":"日本剧","v":"ribenju"},{"n":"韩国剧","v":"hanguoju"},{"n":"东南亚","v":"dongnanya"},{"n":"其他剧","v":"qitaju"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"爱情","v":"/class/爱情"},{"n":"古装","v":"/class/古装"},{"n":"战争","v":"/class/战争"},{"n":"青春","v":"/class/青春"},{"n":"偶像","v":"/class/偶像"},{"n":"喜剧","v":"/class/喜剧"},{"n":"家庭","v":"/class/家庭"},{"n":"犯罪","v":"/class/犯罪"},{"n":"动作","v":"/class/动作"},{"n":"奇幻","v":"/class/奇幻"},{"n":"剧情","v":"/class/剧情"},{"n":"历史","v":"/class/历史"},{"n":"经典","v":"/class/经典"},{"n":"乡村","v":"/class/乡村"},{"n":"情景","v":"/class/情景"},{"n":"商战","v":"/class/商战"},{"n":"犯罪","v":"/class/犯罪"},{"n":"网剧","v":"/class/网剧"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"/area/内地"},{"n":"韩国","v":"/area/韩国"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"日本","v":"/area/日本"},{"n":"美国","v":"/area/美国"},{"n":"泰国","v":"/area/泰国"},{"n":"英国","v":"/area/英国"},{"n":"新加坡","v":"/area/新加坡"},{"n":"其他","v":"/area/其他"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"普通话","v":"/lang/普通话"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"其它","v":"/lang/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"zongyi":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"zongyi"},{"n":"大陆综艺","v":"daluzongyi"},{"n":"港台综艺","v":"gangtaizongyi"},{"n":"日韩综艺","v":"rihanzongyi"},{"n":"欧美综艺","v":"oumeizongyi"},{"n":"其他综艺","v":"qitazongyi"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"选秀","v":"/class/选秀"},{"n":"情感","v":"/class/情感"},{"n":"访谈","v":"/class/访谈"},{"n":"播报","v":"/class/播报"},{"n":"旅游","v":"/class/旅游"},{"n":"音乐","v":"/class/音乐"},{"n":"美食","v":"/class/美食"},{"n":"纪实","v":"/class/纪实"},{"n":"曲艺","v":"/class/曲艺"},{"n":"生活","v":"/class/生活"},{"n":"游戏互动","v":"/class/游戏互动"},{"n":"财经","v":"/class/财经"},{"n":"求职","v":"/class/求职"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"/area/内地"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"日本","v":"/area/日本"},{"n":"韩国","v":"/area/韩国"},{"n":"欧美","v":"/area/欧美"},{"n":"其他","v":"/area/其他"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"普通话","v":"/lang/普通话"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"其它","v":"/lang/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"dongman":[{"key":"cateId","name":"类型","value":[{"n":"全部","v":"dongman"},{"n":"国产动漫","v":"guochandongman"},{"n":"日韩动漫","v":"rihandongman"},{"n":"欧美动漫","v":"oumeidongman"},{"n":"其他动漫","v":"qitadongman"}]},{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"情感","v":"/class/情感"},{"n":"科幻","v":"/class/科幻"},{"n":"热血","v":"/class/热血"},{"n":"推理","v":"/class/推理"},{"n":"搞笑","v":"/class/搞笑"},{"n":"冒险","v":"/class/冒险"},{"n":"萝莉","v":"/class/萝莉"},{"n":"校园","v":"/class/校园"},{"n":"动作","v":"/class/动作"},{"n":"机战","v":"/class/机战"},{"n":"运动","v":"/class/运动"},{"n":"战争","v":"/class/战争"},{"n":"少年","v":"/class/少年"},{"n":"少女","v":"/class/少女"},{"n":"社会","v":"/class/社会"},{"n":"原创","v":"/class/原创"},{"n":"亲子","v":"/class/亲子"},{"n":"益智","v":"/class/益智"},{"n":"励志","v":"/class/励志"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"/area/内地"},{"n":"日本","v":"/area/日本"},{"n":"欧美","v":"/area/欧美"},{"n":"其他","v":"/area/其他"}]},{"key":"lang","name":"语言","value":[{"n":"全部","v":""},{"n":"国语","v":"/lang/国语"},{"n":"英语","v":"/lang/英语"},{"n":"粤语","v":"/lang/粤语"},{"n":"闽南语","v":"/lang/闽南语"},{"n":"韩语","v":"/lang/韩语"},{"n":"日语","v":"/lang/日语"},{"n":"其它","v":"/lang/其它"}]},{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"2013","v":"/year/2013"},{"n":"2012","v":"/year/2012"},{"n":"2011","v":"/year/2011"},{"n":"2010","v":"/year/2010"},{"n":"2009","v":"/year/2009"},{"n":"2008","v":"/year/2008"}]},{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}],
"jilupian":[{"key":"class","name":"剧情","value":[{"n":"全部","v":""},{"n":"人物","v":"/class/人物"},{"n":"军事","v":"/class/军事"},{"n":"历史","v":"/class/历史"},{"n":"文化","v":"/class/文化"},{"n":"探索","v":"/class/探索"},{"n":"科技","v":"/class/科技"},{"n":"自然","v":"/class/自然"},{"n":"解密","v":"/class/解密"},{"n":"其他","v":"/class/其他"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":""},{"n":"内地","v":"/area/内地"},{"n":"香港","v":"/area/香港"},{"n":"台湾","v":"/area/台湾"},{"n":"美国","v":"/area/美国"},{"n":"韩国","v":"/area/韩国"},{"n":"法国","v":"/area/法国"},{"n":"英国","v":"/area/英国"},{"n":"日本","v":"/area/日本"},{"n":"德国","v":"/area/德国"},{"n":"泰国","v":"/area/泰国"},{"n":"印度","v":"/area/印度"},{"n":"意大利","v":"/area/意大利"},{"n":"西班牙","v":"/area/西班牙"},{"n":"加拿大","v":"/area/加拿大"},{"n":"其他","v":"/area/其他"}]}],
"dyjs":[{"key":"letter","name":"字母","value":[{"n":"全部","v":""},{"n":"A","v":"/letter/A"},{"n":"B","v":"/letter/B"},{"n":"C","v":"/letter/C"},{"n":"D","v":"/letter/D"},{"n":"E","v":"/letter/E"},{"n":"F","v":"/letter/F"},{"n":"G","v":"/letter/G"},{"n":"H","v":"/letter/H"},{"n":"I","v":"/letter/I"},{"n":"J","v":"/letter/J"},{"n":"K","v":"/letter/K"},{"n":"L","v":"/letter/L"},{"n":"M","v":"/letter/M"},{"n":"N","v":"/letter/N"},{"n":"O","v":"/letter/O"},{"n":"P","v":"/letter/P"},{"n":"Q","v":"/letter/Q"},{"n":"R","v":"/letter/R"},{"n":"S","v":"/letter/S"},{"n":"T","v":"/letter/T"},{"n":"U","v":"/letter/U"},{"n":"V","v":"/letter/V"},{"n":"W","v":"/letter/W"},{"n":"X","v":"/letter/X"},{"n":"Y","v":"/letter/Y"},{"n":"Z","v":"/letter/Z"},{"n":"0-9","v":"/letter/0-9"}]},{"key":"by","name":"排序","value":[{"n":"时间","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"}]}]
},
filter_def:{
dy:{cateId:'dy',by:'/by/time'},
juji:{cateId:'juji',by:'/by/time'},
zongyi:{cateId:'zongyi',by:'/by/time'},
dongman:{cateId:'dongman',by:'/by/time'},
jilupian:{cateId:'jilupian',by:'/by/time'},
dyjs:{cateId:'dyjs',by:'/by/time'}
},
searchUrl: '/vodsearch/page/fypage/wd/**.html',
class_parse: '.navbar-items li:gt(1):lt(8);a&&title;a&&href;.*/(.*?).html',
lazy:"js:var html=JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);var url=html.url;if(html.encrypt=='1'){url=unescape(url)}else if(html.encrypt=='2'){url=unescape(base64Decode(url))}if(/m3u8|mp4/.test(url)){input=url}else{input}",
}

View File

@ -0,0 +1,26 @@
{
"站名": "萌猫影视",
"主页url": "https://www.mervod.com",
"副标题": "class=\"module-item-text\">&&</div",
"导演": "导演:&&</div",
"主演": "主演:&&</div",
"简介": "【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+<p>&&</p>",
"嗅探词": ".mp4?#&dis_t#vkey=#.m3u8",
"过滤词": "data.m3u8.in",
"线路数组": "data-toggle=\"tab&&</li>",
"线路标题": "神仙影视+>&&</a>",
"播放数组": "stui-content__playlist clearfix column8&&/ul>",
"播放列表": "<a&&</li>",
"播放标题": "title=\"&&\"",
"搜索url": "/rss.xml?wd={wd}",
"搜索模式": "1",
"搜索数组": "<item>&&</item>",
"搜索链接": "<link>&&</link>",
"搜索标题": "<title>&&</title>",
"搜索副标题": "<author>&&</author>",
"搜索图片": "http://m.ykimg.com/051000006495694A2B9D56092C0327B7",
"请求头": "User-Agent$Mozilla/5.0 (iPhone; CPU iPhone OS 15_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1",
"搜索链接前缀": "https://www.mervod.com",
"分类": "电影$1#电视剧$2#动漫$3#综艺$4",
"分类url": "https://www.mervod.com/vodtype/{cateId}-{catePg}.html;;m"
}

View File

@ -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',
}

View File

@ -0,0 +1,41 @@
{
"作者":"",
"站名":"蛋蛋影视",
"主页url":"https://www.dandanju.cc/",
"简介":"【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+<p class=\"col-pd\">&&",
"导演":"导演:&&</p>",
"主演":"主演:&&</p>",
"影片状态":"更新:&&</p>",
"影片类型":"类型:&&<span class=\"split-line\">",
"影片地区":"地区:&&<span class=\"split-line\">",
"影片年代":"年份:&&</p>",
"数组":"ewave-vodlist__thumb lazyload\"&&</a>",
"标题":"title=\"&&\"",
"图片":"data-original=\"&&\"",
"链接":"href=\"&&\"",
"搜索模式":"1",
"搜索url": "https://www.dandanju.cc/search/{wd}-------------.html",
"线路数组":"#playlist&&</li>",
"线路标题":"神仙影视+>&&</a>[替换:>>共#>>集]",
"分类url":"https://www.dandanju.cc/show/{cateId}-{area}--{class}-----{catePg}---{year}.html;;ak",
"分类":"电影$1#电视剧$2#综艺$3#动漫$4"}

View File

@ -0,0 +1,38 @@
var rule = {
title:'路漫漫',
// host:'https://www.96ba.com',
host:'https://www.lmm88.com',
// url:'/vod/show/id/fyclass/page/fypage.html',
url:'/vod/show/id/fyclassfyfilter.html',
filterable:1,//是否启用分类筛选,
filter_url:'{{fl.by}}/page/fypage{{fl.year}}',
filter:{
"ribendongman":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}],
"guochandongman":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}],
"oumeidongman":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}],
"ribendonghuadianying":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}],
"guochandonghuadianying":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}],
"oumeidonghuadianying":[{"key":"year","name":"年份","value":[{"n":"全部","v":""},{"n":"2023","v":"/year/2023"},{"n":"2022","v":"/year/2022"},{"n":"2021","v":"/year/2021"},{"n":"2020","v":"/year/2020"},{"n":"2019","v":"/year/2019"},{"n":"2018","v":"/year/2018"},{"n":"2017","v":"/year/2017"},{"n":"2016","v":"/year/2016"},{"n":"2015","v":"/year/2015"},{"n":"2014","v":"/year/2014"},{"n":"更早","v":"/year/2013-1980"}]},{"key":"by","name":"排序","value":[{"n":"更新","v":"/by/time"},{"n":"人气","v":"/by/hits"},{"n":"评分","v":"/by/score"},{"n":"点赞","v":"/by/up"}]}]
},
searchUrl:'/vod/search/page/fypage/wd/**.html',
searchable: 2,//是否启用全局搜索,
quickSearch: 0,//是否启用快速搜索,
headers: {
'User-Agent': 'MOBILE_UA',
},
class_parse:'.container&&.tag.text-light;a&&Text;a&&href;.*/(.*?).html',
play_parse: true,
lazy:'js:var html=JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);var url=html.url;var from=html.from;if(/m3u8/.test(url)){input=url.split("&")[0]}else{input}',
limit: 6,
推荐:'.owl-theme-jable .item;*;*;*;*',
一级:'#mdym .col-6;h6&&Text;.lazyload&&data-src;.label&&Text;a&&href',
二级:{
"title":"h1&&Text;.video-info-aux&&Text",
"img":".url_img&&src",
"desc":".video-info-items--span:eq(3)&&Text;;;.video-info-actor:eq(1)&&Text;.video-info-actor:eq(0)&&Text",
"content":".content-text&&Text",
"tabs":".module-tab-content .tab-item",
"lists":".scroll-content:eq(#id) a"
},
搜索:'*',
}

View File

@ -0,0 +1,20 @@
var rule = {
title:'追剧迷',
模板:'vfed',
host:'https://www.zhuijumi.cc',
// url:'/videotype/fyclass-fypage.html',
url:'/mp4type/fyclass-fypage.html',
searchUrl:'/vodsearch/**-fypage.html',
class_parse: '.fed-part-tips li;a&&Text;a&&href;.*/(.*?).html',
cate_exclude:'更多|申请',
lazy:"js:var html=JSON.parse(request(input).match(/r player_.*?=(.*?)</)[1]);var url=html.url;if(html.encrypt=='1'){url=unescape(url)}else if(html.encrypt=='2'){url=unescape(base64Decode(url))}if(/m3u8|mp4/.test(url)){input=url}else{input}",
二级: {
"title": "h1&&Text;.fed-col-xs6--span:eq(0)&&Text",
"img": ".fed-list-info&&a&&data-original",
"desc": ".fed-col-xs12.fed-part-eone:eq(3)&&Text;;;.fed-col-xs12.fed-part-eone--span:eq(0)&&Text;.fed-col-xs12.fed-part-eone--span:eq(1)&&Text",
"content": ".fed-conv-text:eq(0)&&Text",
"tabs": "ul.fed-padding&&li",
"lists": ".fed-tabs-btm:eq(#id) li"
},
搜索: '.fed-list-deta;h1&&Text;.fed-lazy&&data-original;.fed-list-remarks&&Text;a&&href;.fed-col-xs12.fed-part-eone:eq(2)&&Text',
}

View File

@ -0,0 +1,65 @@
{
"cookie":"DedeUserID=690781341;DedeUserID__ckMd5=cabc96906269c5b6;SESSDATA=2245ba24%2C1684212125%2C466fd%2Ab2;bili_jct=de6fdb60c10f8a83910aa55d79407b4e;",
//https://ghproxy.net/https://raw.githubusercontent.com/FongMi/CatVodSpider/main/txt/cookie.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":"高中信息技术"}
],
"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"}]}]
}
}

View File

@ -0,0 +1,26 @@
{
"主页url": "http://www.tvyb03.com/",
"请求头": "手机",
"简介": "【神仙影视】提醒您请勿相信影片中的广告,以免上当受骗。+class=\"sketch content\">&&</span>",
"数组": "myui-vodlist__thumb&&</a>",
"标题": "title=\"&&\"",
"副标题": "pic-tag pic-tag-top\">&&</span>",
"图片": "data-original=\"&&\"",
"链接": "href=\"&&\"",
"搜索url": "/vod/search.html?wd={wd}&submit=",
"搜索数组": "myui-vodlist__thumb&&</a>",
"搜索标题": "title=\"&&\"",
"搜索副标题": "pic-tag pic-tag-top\">&&</span>",
"搜索图片": "http://w.g9.pub:66/f/Y1ksA/sorry.ico",
"搜索链接": "href=\"&&\"",
"搜索模式": "1",
"嗅探词": ".m3u8#.mp4#video_mp4#feiyunNB.mp4#.mp4#cdn.123pan.cn#huoshanvod.com#v.123pan.cn#auth_key#app-ali-cdn.fqfilm.com",
"搜索后缀": "/vod/detail/id/",
"线路数组": "</a><h3&&/h3>",
"线路标题": "title\">&&<",
"播放数组": "<ul class=\"myui-content__list scrollbar&&</ul>",
"播放标题": ">&&<",
"播放列表": "<a&&/a>",
"分类url": "http://www.tvyb03.com/vod/show/area/{area}/by/{by}/class/{class}/id/{cateId}/lang/{lang}/page/{catePg}/year/{year}.html;;m",
"分类": "电影$1#电视剧$2#综艺$3#动漫$4"
}