You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
349 lines
29 KiB
349 lines
29 KiB
let alistfile = "hiker://files/rules/Src/Juying/Alist.json";
|
|
try {
|
|
if(fetch(alistfile)){
|
|
eval("var alistData = " + fetch(alistfile));
|
|
}else{
|
|
var alistData = {};
|
|
}
|
|
} catch (e) {
|
|
var alistData = {};
|
|
}
|
|
let alistconfig = alistData.config || {};
|
|
let fileFilter = alistconfig['fileFilter'] == 0 ? 0 : 1;
|
|
let audiovisual = alistconfig.contain ? alistconfig.contain.replace(/\./, "") : 'mp4|avi|mkv|rmvb|flv|mov|ts|mp3|m4a|wma|flac';//影音文件
|
|
let contain = new RegExp(audiovisual, "i");//设置可显示的影音文件后缀
|
|
let music = new RegExp("mp3|m4a|wma|flac", "i");//进入音乐播放器
|
|
let image = new RegExp("jpg|png|gif|bmp|ico|svg", "i");//进入图片查看
|
|
let transcoding = { UHD: "4K 超清", QHD: "2K 超清", FHD: "1080 全高清", HD: "720 高清", SD: "540 标清", LD: "360 流畅" };
|
|
let alitoken = alistconfig.alitoken;
|
|
if (!alitoken && getMyVar('getalitoken') != "1") {
|
|
putMyVar('getalitoken', '1');
|
|
try {
|
|
//节约资源,如果有获取过用户信息,就重复利用一下
|
|
let icyfilepath = "hiker://files/rules/icy/icy-ali-token.json";
|
|
let joefilepath = "hiker://files/rules/joe/ali.json";
|
|
let alifile = fetch(icyfilepath);
|
|
if (alifile) {
|
|
let tokenlist = eval(alifile);
|
|
if (tokenlist.length > 0) {
|
|
alitoken = tokenlist[0].refresh_token;
|
|
}
|
|
}
|
|
if (!alitoken) {
|
|
alifile = fetch(joefilepath);
|
|
if (alifile) {
|
|
let token = eval(alifile);
|
|
alitoken = token.refresh_token;
|
|
}
|
|
}
|
|
if (alitoken) {
|
|
alistconfig.alitoken = alitoken;
|
|
alistData.config = alistconfig;
|
|
writeFile(alistfile, JSON.stringify(alistData));
|
|
}
|
|
} catch (e) {
|
|
log('自动取ali-token失败' + e.message)
|
|
}
|
|
}
|
|
let headers = {
|
|
'content-type': 'application/json;charset=UTF-8',
|
|
"origin": "https://www.aliyundrive.com",
|
|
"referer": "https://www.aliyundrive.com/",
|
|
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.41"
|
|
};
|
|
let userinfo = {};
|
|
if (alitoken) {
|
|
let nowtime = Date.now();
|
|
let oldtime = parseInt(getMyVar('userinfoChecktime', '0').replace('time', ''));
|
|
let aliuserinfo = storage0.getMyVar('aliuserinfo');
|
|
if (aliuserinfo && aliuserinfo.user_id && nowtime < (oldtime + 2 * 60 * 60 * 1000)) {
|
|
userinfo = aliuserinfo;
|
|
} else {
|
|
userinfo = JSON.parse(request('https://auth.aliyundrive.com/v2/account/token', { headers: headers, body: { "refresh_token": alitoken, "grant_type": "refresh_token" }, method: 'POST', timeout: 3000 }));
|
|
storage0.putMyVar('aliuserinfo', userinfo);
|
|
putMyVar('userinfoChecktime', nowtime + 'time');
|
|
}
|
|
}
|
|
|
|
function SortList(v1, v2) {
|
|
var a = v1.name;
|
|
var b = v2.name;
|
|
var reg = /[0-9]+/g;
|
|
var lista = a.match(reg);
|
|
var listb = b.match(reg);
|
|
if (!lista || !listb) {
|
|
return a.localeCompare(b);
|
|
}
|
|
for (var i = 0, minLen = Math.min(lista.length, listb.length); i < minLen; i++) {
|
|
//数字所在位置序号
|
|
var indexa = a.indexOf(lista[i]);
|
|
var indexb = b.indexOf(listb[i]);
|
|
//数字前面的前缀
|
|
var prefixa = a.substring(0, indexa);
|
|
var prefixb = a.substring(0, indexb);
|
|
//数字的string
|
|
var stra = lista[i];
|
|
var strb = listb[i];
|
|
//数字的值
|
|
var numa = parseInt(stra);
|
|
var numb = parseInt(strb);
|
|
//如果数字的序号不等或前缀不等,属于前缀不同的情况,直接比较
|
|
if (indexa != indexb || prefixa != prefixb) {
|
|
return a.localeCompare(b);
|
|
}
|
|
else {
|
|
//数字的string全等
|
|
if (stra === strb) {
|
|
//如果是最后一个数字,比较数字的后缀
|
|
if (i == minLen - 1) {
|
|
return a.substring(indexa).localeCompare(b.substring(indexb));
|
|
}
|
|
//如果不是最后一个数字,则循环跳转到下一个数字,并去掉前面相同的部分
|
|
else {
|
|
a = a.substring(indexa + stra.length);
|
|
b = b.substring(indexa + stra.length);
|
|
}
|
|
}
|
|
//如果数字的string不全等,但值相等
|
|
else if (numa == numb) {
|
|
//直接比较数字前缀0的个数,多的更小
|
|
return strb.lastIndexOf(numb + '') - stra.lastIndexOf(numa + '');
|
|
}
|
|
else {
|
|
//如果数字不等,直接比较数字大小
|
|
return numa - numb;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
function createsession(headers,deviceId,userId){
|
|
function getNowTime() {
|
|
const yy = new Date().getFullYear()
|
|
const MM = (new Date().getMonth() + 1) < 10 ? '0' + (new Date().getMonth() + 1) : (new Date().getMonth() + 1)
|
|
const dd = new Date().getDate() < 10 ? '0' + new Date().getDate() : new Date().getDate()
|
|
const HH = new Date().getHours() < 10 ? '0' + new Date().getHours() : new Date().getHours()
|
|
const mm = new Date().getMinutes() < 10 ? '0' + new Date().getMinutes() : new Date().getMinutes()
|
|
return yy + '' + dd + '' + HH + '' + MM + '' + mm
|
|
}
|
|
|
|
for(let i=0; i<3; i++){
|
|
let signature;
|
|
let public_key;
|
|
if(getItem('aliecctype')=="1"){
|
|
let getaliecc = JSON.parse(request('http://124.221.241.174:87/api', { body: 'did=' + deviceId + '&uid=' + userId + '&token=' + md5(getNowTime()), method: 'POST', timeout: 3000 }));
|
|
if (getaliecc.code == 200) {
|
|
signature = getaliecc.sign;
|
|
public_key = getaliecc.key;
|
|
}
|
|
}else{
|
|
let a = justTestSign('5dde4e1bdf9e4966b387ba58f4b3fdc3',deviceId,userId);
|
|
signature = a.split('##')[0];
|
|
public_key = a.split('##')[1];
|
|
}
|
|
headers['x-signature'] = signature;
|
|
let data = {
|
|
"deviceName": "Edge浏览器",
|
|
"modelName": "Windows网页版",
|
|
"pubKey": public_key,
|
|
}
|
|
if (signature && public_key) {
|
|
let req = JSON.parse(request("https://api.aliyundrive.com/users/v1/users/device/create_session", { headers: headers, body: data, timeout: 3000 }));
|
|
if (req.success) {
|
|
return {"signature":signature, "success":1}
|
|
}
|
|
}
|
|
}
|
|
return {"success":0}
|
|
}
|
|
|
|
function aliSharePlayUrl(share_id,file_id,share_pwd){
|
|
try{
|
|
share_pwd = share_pwd&&share_pwd.length==4?share_pwd:"";
|
|
let sharetoken = JSON.parse(request('https://api.aliyundrive.com/v2/share_link/get_share_token', { body: { "share_pwd": share_pwd, "share_id": share_id }, method: 'POST', timeout: 3000 })).share_token;
|
|
|
|
let authorization = 'Bearer ' + userinfo.access_token;
|
|
let deviceId = userinfo.device_id;
|
|
let userId = userinfo.user_id;
|
|
headers['authorization'] = authorization;
|
|
headers['x-device-id'] = deviceId;
|
|
let aliecc = createsession(headers,deviceId,userId);
|
|
let aliyunUrl = [];
|
|
if(aliecc.success){
|
|
headers['x-signature'] = aliecc.signature;
|
|
headers['x-share-token'] = sharetoken;
|
|
headers['fileid'] = userId;
|
|
let data = data = {"category": "live_transcoding", "file_id": file_id, "get_preview_url": true, "share_id": share_id, "template_id": "", "get_subtitle_info": true}
|
|
let json = JSON.parse(request('https://api.aliyundrive.com/v2/file/get_share_link_video_preview_play_info', { headers: headers, body: data, method: 'POST', timeout: 3000 }));
|
|
aliyunUrl = json.video_preview_play_info.live_transcoding_task_list;
|
|
aliyunUrl.reverse();
|
|
}
|
|
return aliyunUrl;
|
|
}catch(e){
|
|
log('根据共享链接获取播放地址失败,挂载的阿里分享应有密码>'+e.message);
|
|
return "";
|
|
}
|
|
}
|
|
|
|
function getAliUrl(share_id, file_id, share_pwd) {
|
|
try {
|
|
let urls = [];
|
|
let names = [];
|
|
let heads = [];
|
|
let u = startProxyServer($.toString((share_id,file_id,share_pwd,config) => {
|
|
function geturl(fileid,line){
|
|
require(config.依赖.match(/http(s)?:\/\/.*\//)[0] + 'SrcJyAliPublic.js');
|
|
let playUrlList = aliSharePlayUrl(share_id,fileid,share_pwd) || [];
|
|
let aliurl;
|
|
playUrlList.forEach((item) => {
|
|
if(item.template_id == line){
|
|
aliurl = JSON.parse(request(item.url, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, onlyHeaders: true, redirect: false, timeout: 3000 })).headers.location[0];
|
|
}
|
|
})
|
|
//上面是获取阿里的播放地址
|
|
//log("我在代理" + aliurl);
|
|
let home = aliurl.split('media.m3u8')[0];
|
|
let f = fetch(aliurl, { headers: { 'Referer': 'https://www.aliyundrive.com/' }, timeout: 3000}).split("\n");
|
|
let ff = f.map(it => {
|
|
if (it.startsWith("media-")) {
|
|
return "/proxy?url=" + base64Encode(home+it);
|
|
}
|
|
return it;
|
|
}).join("\n");
|
|
//log('ufid-'+fileid);
|
|
writeFile('hiker://files/cache/_fileSelect_'+fileid+'.m3u8',ff);
|
|
return ff;
|
|
}
|
|
let url = base64Decode(MY_PARAMS.url);
|
|
if(url.includes(".ts")){
|
|
let fid = url.split('&f=')[1].split('&')[0];
|
|
//log('sfid-'+fid);
|
|
let f = fetch('hiker://files/cache/_fileSelect_'+fid+'.m3u8').split("\n");
|
|
f.forEach(it => {
|
|
if(it&&it.startsWith('/proxy?url=')){
|
|
let furl = base64Decode(it.replace('/proxy?url=',''));
|
|
if(url.substr(url.indexOf('/media-'),url.indexOf('.ts')) == furl.substr(furl.indexOf('/media-'),furl.indexOf('.ts'))){
|
|
url = furl;
|
|
}
|
|
}
|
|
})
|
|
let expires = url.split('x-oss-expires=')[1].split('&')[0];
|
|
const lasttime = parseInt(expires) - Date.now() / 1000;
|
|
if(lasttime < 40){
|
|
//log('过期更新')
|
|
let line = url.split('/media')[0];//取之前播放的ts段线路
|
|
line = line.substring(line.lastIndexOf('/')+1);
|
|
let f = geturl(fid,line).split("\n");
|
|
f.forEach(it => {
|
|
if(it&&it.startsWith('/proxy?url=')){
|
|
let furl = base64Decode(it.replace('/proxy?url=',''));
|
|
if(url.substr(url.indexOf('/media-'),url.indexOf('.ts')) == furl.substr(furl.indexOf('/media-'),furl.indexOf('.ts'))){
|
|
url = furl;
|
|
}
|
|
}
|
|
})
|
|
|
|
}else{
|
|
//log('未过期')
|
|
//log("代理ts:" + url);
|
|
}
|
|
return JSON.stringify({
|
|
statusCode: 302,
|
|
headers: {
|
|
"Location": url,
|
|
'Referer': 'https://www.aliyundrive.com/'
|
|
}
|
|
});
|
|
}else{
|
|
//log('首次更新')
|
|
let line = url.split('|')[1];
|
|
let ff = geturl(file_id,line);
|
|
return ff;
|
|
}
|
|
},share_id,file_id,share_pwd,config));
|
|
|
|
let playUrlList = aliSharePlayUrl(share_id,file_id,share_pwd) || [];
|
|
if(playUrlList.length>0){
|
|
playUrlList.forEach((item) => {
|
|
urls.push(u + "?url=" + base64Encode(item.url+"|"+item.template_id) + "#.m3u8#pre#");
|
|
names.push(transcoding[item.template_id] ? transcoding[item.template_id] : item.template_height);
|
|
heads.push({ 'Referer': 'https://www.aliyundrive.com/' });
|
|
})
|
|
return {
|
|
urls: urls,
|
|
names: names,
|
|
headers: heads
|
|
};
|
|
}else{
|
|
log('未获取阿里播放地址,建议重进软件再试一次')
|
|
return {};
|
|
}
|
|
} catch (e) {
|
|
log('获取共享链接播放地址失败>' + e.message);
|
|
return {};
|
|
}
|
|
}
|
|
|
|
function getSubtitle(share_id,sub_file_id,share_pwd){
|
|
try{
|
|
share_pwd = share_pwd&&share_pwd.length==4?share_pwd:"";
|
|
let sharetoken = JSON.parse(request('https://api.aliyundrive.com/v2/share_link/get_share_token', { body: { "share_pwd": share_pwd, "share_id": share_id }, method: 'POST', timeout: 3000 })).share_token;
|
|
headers["authorization"] = userinfo.access_token;
|
|
headers["x-share-token"] = sharetoken;
|
|
let data = {"expire_sec":600,"file_id":sub_file_id,"share_id":share_id};
|
|
let downurl = JSON.parse(request("https://api.aliyundrive.com/v2/file/get_share_link_download_url", { headers: headers, body: data, timeout: 3000 })).download_url;
|
|
let substr = fetch(downurl, {headers:{"referer": "https://www.aliyundrive.com/"},timeout:3000});
|
|
if(substr){
|
|
writeFile("hiker://files/cache/src/subtitles.srt",substr);
|
|
return getPath("hiker://files/cache/src/subtitles.srt");
|
|
}
|
|
}catch(e){
|
|
log('获取字幕失败>'+e.message);
|
|
}
|
|
return "";
|
|
}
|
|
|
|
function aliMyPlayUrl(file_id) {
|
|
try {
|
|
let authorization = 'Bearer ' + userinfo.access_token;
|
|
let deviceId = userinfo.device_id;
|
|
let userId = userinfo.user_id;
|
|
let drive_id = userinfo.default_drive_id;
|
|
headers['authorization'] = authorization;
|
|
headers['x-device-id'] = deviceId;
|
|
let aliecc = createsession(headers,deviceId,userId);
|
|
let aliyunUrl = [];
|
|
if(aliecc.success){
|
|
headers['x-signature'] = aliecc.signature;
|
|
let data = { "drive_id": drive_id, "file_id": file_id, "category": "live_transcoding", "template_id": "", "get_subtitle_info": true }
|
|
let json = JSON.parse(request('https://api.aliyundrive.com/v2/file/get_video_preview_play_info', { headers: headers, body: data, method: 'POST', timeout: 3000 }));
|
|
aliyunUrl = json.video_preview_play_info.live_transcoding_task_list;
|
|
aliyunUrl.reverse();
|
|
}
|
|
let urls = [];
|
|
let names = [];
|
|
let heads = [];
|
|
if (aliyunUrl.length > 0) {
|
|
aliyunUrl.forEach((item) => {
|
|
urls.push(item.url + "#pre#");
|
|
names.push(transcoding[item.template_id] ? transcoding[item.template_id] : item.template_height);
|
|
heads.push({ 'Referer': 'https://www.aliyundrive.com/' });
|
|
})
|
|
} else {
|
|
log('未获取阿里转码播放地址,建议重进软件再试一次')
|
|
}
|
|
return {
|
|
urls: urls,
|
|
names: names,
|
|
headers: heads
|
|
};
|
|
} catch (e) {
|
|
log('获取我的云盘播放地址失败>' + e.message);
|
|
return { message: '获取我的云盘播放地址失败>' + e.message };
|
|
}
|
|
}
|
|
//evalPrivateJS('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')
|
|
//evalPrivateJS('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')
|
|
//evalPrivateJS('rhiz2Ll8wYnkCoIzJ/nTsBjQ/xZMODzvvtPniw+kAOLskUtISUP3bxLpce3nKwueKIRVgYJSl08ETl80Jugl4F61PEurKDXlGxDMMHTL7RX8xTEGMNCtr0CEz49SZNWjtFkzEGIq6pS3iLCILVd6h1sXtv/FScNv6NQQYlEIjW7WckFOqjGXn5HhlATkGQmmbAMBJ0g/ouwqhIYNv1nH7aM4kSMYV2Nhe5VOaRJSBslqZw1YGcjXBGsYZxkC5TAkNDhSCR42A5to1wbVLxZKSf3fgoHgw+KOnjR8TJQCUbpri8ThGahcNNwT6KOSNgCmj51XEqoS0TCPxASkthcPtwtXvqepUwN0J4Yw+u9NTlvflx/heN21C99lmN6yaas6yJsPThBcAo3jemTHDB7XMnQ+kKPA/ewnSU7+1H4yZwcBUB10+Nc8wgA9X4E0J+ewhsMeSt+G0DEwiOpXGEBtIRKy/iVnqtMQRHPnsgOHcrcDt4Gsvz6HPt96e5z8iZf2Fc0QL3h6ttzoWhQe+QQBCBFWQZjj+wKwO2CrO+QquMGCMhBruPZ5ABGNRpVUhwpnmR18bApwPylzNvJ914epBb/09vaSV+tfD47g2MlmcF+TBjKMDhcSh/12ulK4mptYKEIgtITWO2Mn93gIo6W3SkSKPMO1aVMeCV9p192nn4hGHJQ6cgvJLxuzG//iZFEHJRUx6gpdXp9veuxHmi+lIC+TP/eMEIDVk3lRdLXnGrnq7urLKf6lq6QNwOklKE19gD21NChrlzhsUyUvCeSgiCcmHkeKYnBhGEmFlIGVlF4cppbtPp2BI9D1kolcTb6Is5hJwU0CkNeJK8EOorKLBPGc4TiyezUOexy7awqQBMCsDufyvWgQcfbloZLTORi+eH0xEUpkbnodXZDU3iyB5J/yFAm5Jb3i5Ww7pn3Zf6b1rFmo8ktnBuQIHoRLmUwIlt971xsP0wHpb4NvbBjihk6Az5Ej93a6vmvwQFZZm0sssD2u51v6KP3S7NTgUpbtQVgkTdu5kbng1qnSwRzuzX3hFGcY52jflMGUK79bivtwRvjXwkijdQO5RW0JE2ghqS29uV05QpOZbG8VyeKt4dTkat1xBMxQgj4FXRJNAPMqWgFjdXFXhXA6hYnCNaPrp4cZlxCzHTj22y4879HSfcvTzoox+ETl5BuacQZrpzDuGbVbv46iBW6URJDpXAkpUngQv06JpoE8q2wEWdmn5ok8NGVg/CMYZm5+lGwVjo3oFvGylB61l5njRqwmF6wsBqKfHP866FgaDf2lSpp/LO0rf99mTGs7UjJ0OEUdJ+vy94l6Z3qXV11xVOFq1GfhZgU4yQ/FGMo6XQ9gyGka7w2xS/i59MwZpYYggKySgemY+wBpM7HPa9GBx8Sr19rH')
|
|
//evalPrivateJS('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')
|