From a42489f53b9d72d7fcb733ce574eb97e0df557ff Mon Sep 17 00:00:00 2001 From: src48597962 <48597962@qq.com> Date: Sun, 12 Mar 2023 11:33:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20'SrcJyAlist.js'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SrcJyAlist.js | 82 ++++++++++++++++++++++++++------------------------- 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/SrcJyAlist.js b/SrcJyAlist.js index 1aa2af6a..cee2f23b 100644 --- a/SrcJyAlist.js +++ b/SrcJyAlist.js @@ -374,48 +374,50 @@ function alistUrl(alistapi,path,sign,subtitle) { } }catch(e){} try{ - if(provider=="AliyundriveOpen"){ - try{ - let json = JSON.parse(gethtml(alistapi,"/api/fs/other",path)); - if(json.code==200){ - let playurl = json.data.video_preview_play_info.live_transcoding_task_list; - playurl.reverse(); - let urls = []; - let names = []; - let heads = []; - playurl.forEach((item,i) => { - let url = cacheM3u8(item.url,{headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000},'video'+i+'.m3u8'); - urls.push(url+"#isVideo=true##pre#"); - names.push(transcoding[item.template_id]?transcoding[item.template_id]:item.template_height); - heads.push({'Referer':'https://www.aliyundrive.com/'}); - }) - return JSON.stringify({ - urls: urls, - names: names, - headers: heads, - subtitle: subtitle - }); - } - }catch(e){ - log('阿里开放获取多线程失败>'+e.message); - } - }else if(provider=="AliyundriveShare"){ - try{ - let redirect = JSON.parse(request(url,{onlyHeaders:true,redirect:false,timeout:3000})); - let rurl = redirect.headers.location[0]; - let share_id = rurl.split('&sl=')[1].split('&')[0]; - let file_id = rurl.split('&f=')[1].split('&')[0]; - let alitoken = alistconfig.alitoken; - let play = getAliUrl(share_id,file_id,alitoken); - if(play.urls){ - if(subtitle){ - play['subtitle'] = subtitle; + if(!music.test(suffix)){ + if(provider=="AliyundriveOpen"){ + try{ + let json = JSON.parse(gethtml(alistapi,"/api/fs/other",path)); + if(json.code==200){ + let playurl = json.data.video_preview_play_info.live_transcoding_task_list; + playurl.reverse(); + let urls = []; + let names = []; + let heads = []; + playurl.forEach((item,i) => { + let url = cacheM3u8(item.url,{headers:{'Referer':'https://www.aliyundrive.com/'}, timeout: 2000},'video'+i+'.m3u8'); + urls.push(url+"#isVideo=true##pre#"); + names.push(transcoding[item.template_id]?transcoding[item.template_id]:item.template_height); + heads.push({'Referer':'https://www.aliyundrive.com/'}); + }) + return JSON.stringify({ + urls: urls, + names: names, + headers: heads, + subtitle: subtitle + }); } - return JSON.stringify(play); + }catch(e){ + log('阿里开放获取多线程失败>'+e.message); } - }catch(e){} - } - url = url + (music.test(suffix)?"#isMusic=true#":"#isVideo=true#") + (url.indexOf('baidu.com')>-1?';{User-Agent@Lavf/57.83.100}':''); + }else if(provider=="AliyundriveShare"){ + try{ + let redirect = JSON.parse(request(url,{onlyHeaders:true,redirect:false,timeout:3000})); + let rurl = redirect.headers.location[0]; + let share_id = rurl.split('&sl=')[1].split('&')[0]; + let file_id = rurl.split('&f=')[1].split('&')[0]; + let alitoken = alistconfig.alitoken; + let play = getAliUrl(share_id,file_id,alitoken); + if(play.urls){ + if(subtitle){ + play['subtitle'] = subtitle; + } + return JSON.stringify(play); + } + }catch(e){} + } + } + url = url + (music.test(suffix)?"#isMusic=true#":"#isVideo=true#") + (url.indexOf('baidu.com')>-1?';{User-Agent@Lavf/57.83.100}':url.indexOf('aliyundrive.com')>-1?';{Referer@https://www.aliyundrive.com/}':''); if(!subtitle){ return url; }else{