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.
Juying/SrcJyAliPublic.js

169 lines
29 KiB

//本代码仅用于个人学习,请勿用于其他作用,下载后请24小时内删除,代码虽然是公开学习的,但请尊重作者,应留下说明
//Ali公用文件
let alistfile = "hiker://files/rules/Src/Juying/Alist.json";
let alicfgfile = "hiker://files/rules/Src/Juying/aliconfig.json";
let aliconfig = {};
if (fetch(alicfgfile)) {
try {
eval("aliconfig = " + fetch(alicfgfile));
} catch (e) {
log("aliconfig文件加载失败");
}
} else if (fetch(alistfile)) {
try {
eval("let alistdata = " + fetch(alistfile));
let alistconfig = alistdata.config || {};
if (alistconfig.alitoken) {
let account = Object.assign({},alistconfig);
account.refresh_token = alistconfig.alitoken;
delete account.alitoken;
aliconfig.account = account;
writeFile(alicfgfile, JSON.stringify(aliconfig));
//delete alistdata.config;
//writeFile(alistfile, JSON.stringify(alistdata));
}
} catch (e) {
log("从alist拆分aliconfig文件失败");
}
}
let alistconfig = aliconfig;
let fileFilter = aliconfig['fileFilter'] == 0 ? 0 : 1;
let audiovisual = aliconfig.contain ? aliconfig.contain.replace(/\./g, "") : '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 aliaccount = aliconfig.account || {};
let alitoken = aliaccount.refresh_token || "";
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) {
aliaccount.refresh_token = alitoken;
aliconfig.account = aliaccount;
writeFile(alicfgfile, JSON.stringify(aliconfig));
}
} 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 = getUserInfo(alitoken);
}
}
function getUserInfo(alitoken) {
let account = JSON.parse(request('https://auth.aliyundrive.com/v2/account/token', { headers: headers, body: { "refresh_token": alitoken, "grant_type": "refresh_token" }, method: 'POST', timeout: 3000 }));
if(account.refresh_token){
headers['authorization'] = 'Bearer ' + account.access_token;
let user = JSON.parse(request('https://user.aliyundrive.com/v2/user/get', { headers: headers, body: {}, method: 'POST', timeout: 3000 }));
delete headers['authorization'];
account.resource_drive_id = user.resource_drive_id;
storage0.putMyVar('aliuserinfo', account);
putMyVar('userinfoChecktime', nowtime + 'time');
aliaccount.refresh_token = account.refresh_token;
aliconfig.account = aliaccount;
writeFile(alicfgfile, JSON.stringify(aliconfig));
}else{
toast("登陆失败>" + account.message);
}
return account;
}
function getShareToken(share_id, share_pwd) {
return 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 })) || {};
}
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;
}
}
}
}
eval(fetch('http://124.221.241.174:13000/src48597962/hkbak/raw/branch/main/SrcJyAliPublic.js'));
/*
evalPrivateJS('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')
evalPrivateJS('LMUBjarZ5eOGA/z1aks6fNNBHPn4N+xNr5JpUh71s2M01FXLVXJX8XfnhmRTjv1iGNrOtFi40SJmHCYWMNFcNh/Um27dLpXbh4VHElJM2V9Gmyzuy0ji97pK6C/XCSvy75GnqWDKAy/xDgQTNmYqVTO+evsNQxiolsyv17k49VCUupwM/uCRyYLBTHpuYLQEhGoYmv15vahLcM7WYmRHp6O6kvLU65xWJYAc1bs8aYgBiLipaJXA7qAb3Fk03C3TX+mx7ZhQNGo/iFYI5vis680oc6uTppAGJMXdrdo0lrWtg5Oo7++xJfXfJtq5rgDjHkVTBmeuSVzbXb4/2HuPYP4EmgdoJD6geKShnVfiwaXUoDeWbLiwAoxAqP7rFIqF6VQGyz02jk5bo4XMf/Ao2Jviy8S4FolFZBJ9rNA/Nf8r7/BxY7FwX1RjITP6C/pc6XwANSlZyhMfscOqw5PMUftq1p+ATOZo8sC7ZSdl8nF0b9jgq9T8GGDSEo5oSCzYyWjvHHzWgUZWsUQvuFxy2Yr2sGoH0v9X4QvBod3LMc+PZe4F45CyeRBA18CizlwRlNfzHahN17LyMlXoRqhm4vLrNiC9QAs0eWmiObWUbtFhJmWCwrA6JMs3ZWhigfaK0khhG1/KkvukAaNbo2qpnCPhr0WdlLV9w3rK4tSkyT+P2N9xYzu07TmngC3uYCORnhJWBAQuM/w85YLJh2h44V0zHdgd8oLVowYP6hWGsaR+HwOqriAccTs8a6qx8fEH/z4aS7x3+Dwx9+qpO4OJgGTm2doCEBfrrLaXTY0osAwp4CNQRz9zgnYpaiCmKZSURV+UjlcuFrMzPbHmC3BWByqq6SQA++iRtofwCDb7e/QN1PO50HhReHu6qN/40n8RrE04gACuo9w5Su8kj9HNnpRXv86iRVtBoSyCcxc68TuAKDJA1eq+PyjpvES/3oYlw1LaQ8lAY/mpg/pE3956m6ol2MGu2g3Ezd2/qBncQlCpOxny9sStyB4ysd8nVJer43N5yyk5IW1wPNPjXkT4KSl3xqp1D/mLYd8C2Zyp32zF7rfXhBdn1wLiWoombqNNKpqZp0z9l6TT6ZUqBsr9lbTj1JYAEkhLnm3HHPX9F+HHyHZjAHY9K4yZ/3MuldNDv0vrslbuwF8h9s4GirtidHylLlc7HB4GGP8UtNbiRzJTPQbmQ9mGb/KnVm5rIbxrn63gPrIJZ3udFLGEAiGMA4z2v9c1fhIjcwI4MZAsBY/m9t74/8rBpcGwGrDxgc7kFYJCQ4PQcLr+34tjE3qnmGvC4ly8nx0r7xJVpKjMfAT80XpJAguQX6t5u0EJAbAKMdpjeNsdwAtZSEP4kejrQfGc4TiyezUOexy7awqQBMC86AX2GyV5H+q6Rc76n+NlAalHLx514FWYXR+7zEJagq/TKTobf5Fn5KO8b2XO0nk/KPcV+8bsZQ+KsZhccxcByYtkGfP69N7zGyhXiFP0mTfCoSu09U1N4X7QsJGV/Iu2bgf8Z1avEihrMChOdufyGtdy71PxTuWpChq2HF6Un9vg8YtnpjML5nt9mhVzvWU9OAD5CCHPh5LUf1HEYnmKdAeG2OQ6WL61w6dGWMBrfahoy3jX8p3gsu6PGleBzVy8a+m0ihmsWe2cWYyp0ZB1XJ6Ky33FGy3jkoVOQTriS+rLhOkiyus90HPPiJyIY6R9KF4t2pjUTdzeZKE718dYjX0xRQFYdCjwY8nYRyTMGt3SA1R0zsqIyYy0PlKF1SP698japnMh6PcgY+C7aNisGALDTV01ltWerP+/4iXX2prWCSbZEd4XFHOMz8/7QCheW8d16c94OIck1k64vmRb')
evalPrivateJS('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
evalPrivateJS('rhiz2Ll8wYnkCoIzJ/nTsBQmf6cJgyCFJESv/idq/xLkHeD8UlkLYAgLRahbeTHUGNrOtFi40SJmHCYWMNFcNh/Um27dLpXbh4VHElJM2V9Gmyzuy0ji97pK6C/XCSvy75GnqWDKAy/xDgQTNmYqVTO+evsNQxiolsyv17k49VCUupwM/uCRyYLBTHpuYLQEhGoYmv15vahLcM7WYmRHp6O6kvLU65xWJYAc1bs8aYgBiLipaJXA7qAb3Fk03C3TX+mx7ZhQNGo/iFYI5vis6/sIrE4/x6iUL1AixYz1vn3/e1A1SCqmHrpPQd8RiqB+n2YkYm4WF8eBOS8f3eC0dv4P0cLgigTSTyPcWD6doNHF0WUq8MbaS6ZPLh3toH7WtKNM84aB+Z8HiQe4q3dGnxdxz6Hf6l4SjuTyH6M1NsFTh56ITFLFo07uGC3Q+XKlV5XeoXzg+ZExyT5TlYUh27bfdA+KLkgJrU/7spshWpb/tmHYuMDlKY5Erqfq2eXRJy3HWoQVkQvDhyp+yNUz1i8QShixl6BLOV/y3uKWfC5vDt454QqhJR27tTWSrJ3rIxDW7b6vGanPloebH4SPVn9jNO5ZfE1vrNaptv2PuL3Uja5C7fJScbfNZugImm0DNMLySzZ2acrEC9GJTQC8T3YV0nJF4gENYFH6X8e420/pOsYiHvqV2gKTB2djNxjCqNvzbV6a+5F5BxMHmqEvg2T/JS79sU3eTScdH9XyOlVrqT3OFrjGrHRy+hPGL1kKeXnXbD1ALekgzYG81t7uxKl/a/RKtuf/AOU6HL6W3IbQzSS0AObYlQSxJGC+gTkntKhQrb+6piPEOJ5ngiaBeOzZENUpLZrbyNvA4uSScEedBbuI5JQ3Is2efctSoV12s2XMgixRtwDAnHYUGoqHTbrzu3qFKOH0nVMKyTOVgQ1oPCc9j0FqTcnQ7gcNUR3FcoUfDWXvqASDGJ74Ax0EG0xHOQG65popNZGb6utxYfXmuAALicF1CMZPHPVfrgyG6xz4B0P6/+5WYc9vZY0ce8ZM4iFBCGqGRn+BRkH+VISTsHTJVwOU9A9YlWK4KqWqqbxS8mcqHDWo20nzYB30CO7wQhgL0aDwWGFhHgzNPp9juVcwwn+mWFjZmXnp+YR85p9tMFcPkRW72bLxMRJFXgMTwY3g51XN5/ja3NNoH2Hi0uBW7Z/shuFGRPSTHC62GALDTV01ltWerP+/4iXX2pgp3MCVdOYzJwQH4vd9+MFZo8dh0Se2P9iY8dbBE/96')
evalPrivateJS('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')
evalPrivateJS('TqLO8XCLIXh8eI+yo4At565iuRYn9gPVdfBlHButuvUPV1WDWKO/HVCR60iVxFKB1p1AKRwbWcMMTLDuZlCwpPe0D4GPgo1L0oQb2mpF0jSevaEyFXZVcZnf01x13cjHobOsWNNfjfpWCo7FR0gMAmrvDhG7Tq881aN31gVaUcSI5XM3QxHU0VOkZ002Bt8u4fKYpsT/U64YaVYkAb9f2YxaHIL0eFTF2NEpOklnl8EEdJA1jkca4mXTDnqKaySHWJXKunEUTvFwYhO3em2XUtu1Yol6xmWe8Nt1bF9DLC616JiWNMTm/QFL6lh6nGIkx3Zve6uN7XdUSOL3qI8oYyC8uEeo2BrRLyIelgexbF4YuAWfRnWmYJKLgPXAkLbVILJROf4nSiLwjY4/nzuPrbfvbHbxF5tepQWttmRrliNtp1Zxw0iU2nGc7f0L2j7tVV7wl5PeyqAVyr3vkrSoAZeuUx83ce1uzNd/3jkjTeilyOBhZwfCsdlxuOZ+FcSzCha0aXjvextDC2lcJOLUKl6dtZdbokzLIRdAsVkaUqoyVhdsMy9L844NbkfbbYYCUoiZyg+v6JVPL6UpecvYhh6j67fv2JGlwZJDj9y7of85tVJuNdAnIlyUlD9ZWPl7yFGnCyowpKiQdQM0WcOuydbiXAttBS/OQOQI5lKGX71ClqRfZ6uVRBBjspvV2ivOAXeezIXJ7TA5GPUJlZjJxr7f0g9Iv6URaBPEgaNd+bxLlL9XZwegTPza+5WmFX6kx5VbibsWZeW+Ewsha/Tob2/iVyK3yMOINVD+8v9rtp62QnqX4+4vncbUOxx2o5AtZMwRs9Q3JhAySzHcfB8kU8RcMotCudQGW2GkA/tN7TZ1P1g4pBqugcLHkqHraO/WuLyj3y2GE69ULQCaj7DzFCK8c/Rw9qXHM63gxCP1n3vNu4S2k9kGDDQkIf/GEtgQf74mujsGVx4UpbZsE0Xx0TUOFJTu41zKbk7lD+ZlUqoFRYzuPSvRf77lwjcf0WWHygio8hUeJeF7zI8eYL8rZIQFUX9roF6zIJNCY1vRO9jKovpypastVYprdkT8v1DTpl8oggH40p73zkePMnSkk0pxLBxa8nA11vA204SPpPACq3q6ivFKu2yVP9SzF85lfgY5Go/mlwtS0Xe9ASzqyv5eh7ssv7ZloOjj/LKeRVFzNykaxhvqRcXK1Pu453MmtIOeoAyRk7gVHJYrDV9oQFX4v2egzYuCb8EbY65xvpZUlXId6Bt9GJg37A/uBzlkmSyko7ciZSIRv32ZZei8SsRcMotCudQGW2GkA/tN7TbvbvvNQFb//msHq99a4MF6wSFbkmWK4JT3Pu8iu/E30s6UMvsO/POw5Ccr79sJzidrDmfkXRD2C/Jk3a9HavFJoziRIxhXY2F7lU5pElIGycQf7MlluW2wlgMDgkDovcabggyHhw8LJj2Y1kXIytvHGeN8pLNLo6ult3Ro2zymnjO2XM5ev+IREglNtHhj4vK0OFrjUNL8+HrtrgqjDNoOvJldef8VRVPDk2gMHdgx8sQ92GTLUyifNEYp1uMMgmYqzVkXD/VS903fB2lDun0pXjwb8soiZq8QhwQmbdko0GTk3riWi2uOWQWYPpV5vmGrDZdOGedAaUYgL6PL4YA2Dxuifz0wFEQBPhpa7OG0sbnBmbSA5Dav47+nl7lNFY2ZLKSjtyJlIhG/fZll6LxKxFwyi0K51AZbYaQD+03tNnU/WDikGq6BwseSoeto79bAd6UPWWgR6wLIPnTUftFjURDtoddd0XXd7mZ/j6cGIgwJj4Iyay/4FbFUPHR+TgMJeUQEWh22+VHLgv+x6/REIufi9ttPLfAUVWBPNUyPI5pbSfbxj4Iqm+Z2ZfSru3dlGg7S5kI60QFvwCXzDlbZy6hTDrKeJYKeCNGbtOLIGAl9MEBKff6q4J8fFBAu5tPVIP9XGZnrHIDvi/PCJkfr24CIKNiblpaP9fUDYJ6bz5KCrZ74HXLgPkjOmY08NHWFg7IEajOnMPg/ZASITgc4dhwgK9wNtLw77c41vlaYVVeyvhwb8kijt9szE17VxY2JVKfZfo4r3RF8SqOQL+shR5kw6VileHvNeLH0eQ1K6gs8LOu00pCfFB8sBpLUkySUuNuAd6ZLAWFKhIVNCaSD2cw3a6i++Irc+Vxug7gGuBX3mg0OiMrRylhKkR2bTjwe24PkJhoRtHIrZ/O58DQGJz0BWtuhGKkBorPGhKlAVpdCUSXqyFZAz6ODbaR8WbwLPCzrtNKQnxQfLAaS1JMkG69k5izJb9txBI7M+Vm5x+OLhW4MSAScb8jFhsrS80KcjV9xcqRZKo4sLKuwuU+11crglEXGSZryqODjq/ARy3JK3MplcjcFIdZvIJtdeS7YWc2J9OP9axAghs/fAUW3EZSgFAmkxXlqEbz4HBiYvssry0jWVnP7CJ/71kgB1PZfjXR2SuXNQY6jd7TBm+cjDb76y02c+m4KdZVjxUTFh4UcJdf++6HFb3fH/lIucMF51zyvld+OaopzbjuSedZxyyvLSNZWc/sIn/vWSAHU9u25CKyRot93KIz2UXiZ+IvLK8tI1lZz+wif+9ZIAdT2nBdKou6u8LC9BL3RtwiSycsry0jWVnP7CJ/71kgB1PYMk8uv6ouuXjyQtxG/mLvlVFBQwpfIHUQOnZnXD2HAlcsry0jWVnP7CJ/71kgB1PbMwd3WSsKjEIl/LLynQHArTdz3LGAeMzOR5K7B5gxz+csry0jWVnP7CJ/71kgB1PbrfNVkDtMCqdCrxoQx4O4+TgM1iFndzrqc5UtADjo9BkDUFud5qalq9LKBwd7u7HrLK8tI1lZz+wif+9ZIAdT2XjoqlQVXeniAsgoKHQ/3eCSQY9qKUNgxX2ORmzbLhYTLK8tI1lZz+wif+9ZIAdT2s8IrRW+4X+SxAx2Y/h6667r2HznAecgz6reAWT7+dussZnMUqQPdEYlEOejOYQSSyyvLSNZWc/sIn/vWSAHU9nqgz+v32dXE2IoEIPgBV0MF1qCvyyML2C/IRSoRtDKh9/RVZ9TgRG4kug99P5hxY8sry0jWVnP7CJ/71kgB1PajVeBuhCS6SeqyoPh5Rm0TyyvLSNZWc/sIn/vWSAHU9iZlb0O2oCw3woRGjRcgvUvtk333eXY+vAHi+O19zOodprU4xsb9q0MkGHl9NEZqcfNhgIoOZ5r6zjXEkhXSvGeRkGpT0fcqa3FtmHe+/yuJ7BqcNqN/X8q/UPyVikeDFTJ4n4lYZH5FbbJWFfNIE2Yl+OuC3oSc+Ndn+cIkw+9YzpQy+w7887DkJyvv2wnOJ5dd3gDJB+PP6gyX6fuXzFeH5PVWMKxZaFXvU+S3ko0dyyvLSNZWc/sIn/vWSAHU9jXQLco6ca5oR6Q8JgZUfGT2x4f9tNZoSgEx6zKP/H+H7I2yzWNnVNNsqCclfaWvSJsGlizC0T3E1PuAz1K5Kkp0ZVYdNVJMQuwaRFab4dZYoVQgB6U0ADi6rvLBggC4cnmiKLGJLn8xci4dPzZesnsiwI6WK/xxhyJ7Qtw3Qx2EyyvLSNZWc/sIn/vWSAHU9lwaRTzBGEfhKAKjoLs8xT1l7YxJ3rPIVwXtdeSQsAyoXq376Y6k28n3qXXw6iUIqHbxoSqyyI8mtdcgadizLcybB497jUdMjoyEmUBV34XV91oHoCh9aHQQ2hSIuBaTWTStPKnJzBYSpLEwLzJ8zQLiyPfWKwQQdaaKFA8G7mkMW1V26oilFYyXFZ+v7EHE8MHm3sa4k24Wm35tH5mMAgvAd6UPWWgR6wLIPnTUftFj7w4cXwL2kjPxArD+F4zI+6l1BDzk/IXrnLBEnfr8q+8qzVkXD/VS903fB2lDun0p7oqAmVPMsOMCdrJ5DuFStSlLE1KP59go+k2ZbUyD7hd7/xhivlYQGko2eouZXbxrxvhZMZjt0dk6be7Cjm1npVsVVgOKaW4I7QAkaSOtdVM873LlyBK4K9Q/z7oBZoTlMXHUkjnwDdgPAOKSy8FXNGE7n3rr/sepP+UOeFPIB1ALPCzr
*/