let 取随机列表 = function (arr, num) { let sData = arr.slice(0), i = arr.length, min = i - num, item, index; while (i-- > min) { index = Math.floor((i + 1) * Math.random()); item = sData[index]; sData[index] = sData[i]; sData[i] = item; } return sData.slice(min); }; function 取随机用户名(num) { num = num || 6; let arr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""); return 取随机列表(arr, num).join(""); } function 取随机QQ号(num) { num = num || 6; let arr = "0123456789".split(""); return 取随机列表(arr, num).join(""); } let 注册账号 = { A: function(regurl,regdata,jsonurl){ try{ let reg = request(regurl, {headers: {'Referer': regurl }, body: regdata, method: 'POST', redirect:false, withHeaders:true, timeout: 3000 }); let regjg = JSON.parse(reg).headers.location || ""; if(/success/.test(regjg)){ let www = regurl.split('/'); let home = www[0]+'//'+www[2]; let loginurl = home+"/user/login"; let login = request(home+'/user/login/checkUser', {headers: {'Referer': loginurl, 'Cookie': getCookie(loginurl)}, body: "username="+username+"&password="+username, method: 'POST', timeout: 3000 }); if(JSON.parse(login).status == 200){ let html = request(home+"/user/information", {headers: {'Referer': loginurl, 'Cookie': getCookie(loginurl)}}); let uid = html.split('注册失败>'+e.message); } return ""; }, B: function(regurl,regdata,jsonurl){ try{ let reg = request(regurl, {headers: {'Referer': regurl }, body: regdata, method: 'POST', timeout: 3000 }); let regjg = JSON.parse(reg).status; if(regjg==202){ let login = request(regurl, {headers: {'Cookie': getCookie(regurl)}, body: regdata, method: 'POST', timeout: 3000 }); let www = regurl.split('/'); let home = www[0]+'//'+www[2]; if(JSON.parse(login).status == 200){ let html = request(home+"/user/information", {headers: {'Referer': regurl, 'Cookie': getCookie(regurl)}}); let uid = html.split('注册失败>'+e.message); } return ""; }, C: function(regurl,regdata,refurl){ try{ fetch(refurl); let headers = { 'Cookie': getCookie(refurl), 'Referer': regurl } let reg = request(regurl, {headers: headers, body: regdata, method: 'POST', timeout: 3000 }); log(reg); let regjg = JSON.parse(reg); if(regjg.code==1){ let www = regurl.split('/'); let home = www[0]+'//'+www[2]; let login = request(home+"/adminapi/login/account",{ headers: headers, body: {"account":regdata.account,"password":regdata.password,"terminal":1}, method: 'POST', timeout: 3000 }); log(login); headers.token = JSON.parse(login).data.token; headers.Referer = home+"/console/apinfo"; log(headers); let html = request(home+"/adminapi/user/getkey", {headers: headers}); log(html); let key = JSON.parse(html); log(key); if(key.key){ return key.data.json; } } }catch(e){ log(regurl+'>注册失败>'+e.message); } return ""; } } let username = 取随机用户名(10); let qq = 取随机QQ号(10); let 获取解析 = { nx: function() {//诺讯 let regurl = "https://vip.nxflv.com/user/login/reg"; let regdata = "username="+username+"&qq="+qq+"&password="+username; let jsonurl = "https://json.nxflv.com/?uid=@uid&key=@key&url="; let result = 注册账号.A(regurl,regdata,jsonurl); return result; }, ak: function() {//爱酷 let regurl = "https://api.json.icu/adminapi/login/register"; let regdata = {"account":username,"password":username,"arrge":true,"code":"","mail":username+"@163.com","txcode":"","disable":false,"bname":"获取验证码","ca":"/adminapi/login/captcha?id=","loading":false,"passwords":username,"terminal":1}; let refurl = "https://api.json.icu/console/register"; log(username); let result = 注册账号.C(regurl,regdata,refurl); return result; }, m8: function() {//M3U8 let regurl = "https://api.m3u8.tv:5678/user/login/reg"; let regdata = "username="+username+"&qq="+qq+"&password="+username; let jsonurl = "https://api.m3u8.tv:5678/home/api?type=ys&uid=@uid&key=@key&url="; let result = 注册账号.A(regurl,regdata,jsonurl); return result; }, xz: function() {//鑫总 let regurl = "https://jiexi.hnslg.com.cn/user/login/checkUser"; let regdata = "username="+username+"%40163.com&password="+username; let jsonurl = "https://jiexi.hnslg.com.cn/home/api?type=ys&uid=@uid&key=@key&url="; let result = 注册账号.B(regurl,regdata,jsonurl); return result; } } function bpParse(vipUrl,parsename) { try{ if(!/聚影|帅助手/.test(MY_RULE.title)&&config.parse!="聚影"){ log('非法白嫖'); return ""; } let parsefile = readFile('hiker://files/rules/Src/bpParse.json'); if(parsefile){ var parsejson = JSON.parse(aesDecode('Juying', parsefile)); }else{ var parsejson = {}; } function getparse(parse){ parse = 获取解析[parsename](); if(parse){ log('获得到新的白嫖解析!'); parsejson[parsename] = parse; saveFile('hiker://files/rules/Src/bpParse.json', aesEncode('Juying', JSON.stringify(parsejson))); } return parse; } let parse = parsejson[parsename]?parsejson[parsename]:""; parse = parse?parse:getparse(parse); if(parse){ let json = JSON.parse(request(parse + vipUrl, {timeout: 10000 })); if(json.code==300){ parse = getparse(parse); json = JSON.parse(request(parse + vipUrl, {timeout: 10000 })); } return json.url || ""; }else{ return ""; } }catch(e){ log(e.message); return ""; } }