From b86a2d1c578e0be27381d1123e69c5be9b2f6e0f Mon Sep 17 00:00:00 2001 From: hjdhnx Date: Tue, 13 Sep 2022 18:01:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=8F=9C=E7=8B=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/version.txt | 2 +- "js/\350\217\234\347\213\227.js" | 2 +- libs/pre.js | 11 +++++++++++ ...20\234\347\213\227\344\272\214\347\272\247.js" | 15 +++++++++++---- readme.md | 1 + 5 files changed, 25 insertions(+), 6 deletions(-) diff --git a/js/version.txt b/js/version.txt index 084e244..d1428a7 100644 --- a/js/version.txt +++ b/js/version.txt @@ -1 +1 @@ -3.6.0 \ No newline at end of file +3.6.1 \ No newline at end of file diff --git "a/js/\350\217\234\347\213\227.js" "b/js/\350\217\234\347\213\227.js" index 924e431..5e099b9 100644 --- "a/js/\350\217\234\347\213\227.js" +++ "b/js/\350\217\234\347\213\227.js" @@ -23,7 +23,7 @@ var rule = { // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', 一级:'js:let d=[];let html=request(input);html=JSON.parse(html);let list=html.listData.results;list.forEach(function(it){let desc1=it.ipad_play_for_list.finish_episode?it.ipad_play_for_list.episode===it.ipad_play_for_list.finish_episode?"全集"+it.ipad_play_for_list.finish_episode:"连载"+it.ipad_play_for_list.episode+"/"+it.ipad_play_for_list.finish_episode:"";let desc2=it.score?"评分:"+it.score:"";let desc3=it.date?"更至:"+it.date:"";d.push({title:it.name,img:it.v_picurl,url:"https://v.sogou.com"+it.url.replace("teleplay","series").replace("cartoon","series"),desc:desc1||desc2||desc3})});setResult(d);', 二级:'', - 二级:'js:var vod={vod_id:input};let html=request(input);try{let json=JSON.parse(html.match(/INITIAL_STATE.*?({.*});/)[1]).detail.itemData;let key=json.dockey;let name=json.name;let zone=json.zone;let score=json.score?json.score:"暂无";let style=json.style;let emcee=json.emcee?"主持:"+json.emcee:json.name;let director=json.director?"导演:"+json.director:name;director=director.replace(/;/g,"\\t");let starring=json.starring?"演员:"+json.starring:"声优:"+json.shengyou;starring=starring.replace(/.*undefined/,"").replace(/;/g,"\\t");let update=json.update_wordstr?json.update_wordstr:"";let tv_station=json.tv_station?json.tv_station:zone;let introduction=json.introduction;let shengyou=json.shengyou;let shows=json.play_from_open_index;let plays=json.play.item_list;if(shows){vod.vod_name=name;vod.vod_area=emcee+","+tv_station;vod.vod_director=director;vod.vod_actor=starring;vod.vod_pic=jsp.pd(html,"#thumb_img&&img&&src");vod.vod_remarks=style+" 评分:"+score+","+update;vod.vod_content=introduction}else{vod.vod_name=name;vod.vod_director=director;vod.vod_actor=starring;vod.vod_pic=jsp.pd(html,"#thumb_img&&img&&src");vod.vod_content=introduction}let tp="&type=json";try{let tabs=[];let lists=[];plays.forEach(function(it){lists.push(it.info);let tbn=it.sitename[0]||it.site.replace(".com","");tbn=tbn.split("").join(" ");tabs.push(tbn)});vod.vod_play_from=tabs.join("$$$");vod_lists=[];play_url=play_url.replace("&play_url=","&type=json&play_url=");lists.forEach(function(item,idex){if(item||shows){if(item&&Array.isArray(item)&&item.length>1){let tmp=item.slice(1).map(function(its){return its.index+"$"+play_url+base64Encode("https://v.sogou.com"+its.url)});vod_lists.push(tmp.join("#"))}if(shows){let arr=[];let tmp=[];let zy=shows.item_list[idex];zy.date.forEach(function(date){let day=date.day;for(let j=0;j=10?day[j][0]:"0"+day[j][0];let Tdate=date.year+date.month+dayy;arr.push(Tdate)}});for(let k=0;k0?img[0]:""}}catch(e){}', + 二级:'js:var vod={vod_id:input};let html=request(input);function adhead(url){let hd="https://v.sogou.com";if(!url.startsWith(hd)){url=hd+url}return url}try{let json=JSON.parse(html.match(/INITIAL_STATE.*?({.*});/)[1]).detail.itemData;let key=json.dockey;let name=json.name;let zone=json.zone;let score=json.score?json.score:"暂无";let style=json.style;let emcee=json.emcee?"主持:"+json.emcee:json.name;let director=json.director?"导演:"+json.director:name;director=director.replace(/;/g,"\\t");let starring=json.starring?"演员:"+json.starring:"声优:"+json.shengyou;starring=starring.replace(/.*undefined/,"").replace(/;/g,"\\t");let update=json.update_wordstr?json.update_wordstr:"";let tv_station=json.tv_station?json.tv_station:zone;let introduction=json.introduction;let shengyou=json.shengyou;let shows=json.play_from_open_index;let plays=json.play.item_list;if(shows){vod.vod_name=name;vod.vod_area=emcee+","+tv_station;vod.vod_director=director;vod.vod_actor=starring;vod.vod_pic=jsp.pd(html,"#thumb_img&&img&&src");vod.vod_remarks=style+" 评分:"+score+","+update;vod.vod_content=introduction}else{vod.vod_name=name;vod.vod_director=director;vod.vod_actor=starring;vod.vod_pic=jsp.pd(html,"#thumb_img&&img&&src");vod.vod_content=introduction}let tp="&type=json";try{let tabs=[];let lists=[];plays.forEach(function(it){lists.push(it.info);let tbn=it.sitename[0]||it.site.replace(".com","");tbn=tbn.split("").join(" ");tabs.push(tbn)});vod.vod_play_from=tabs.join("$$$");vod_lists=[];play_url=play_url.replace("&play_url=","&type=json&play_url=");lists.forEach(function(item,idex){if(item||shows){if(item&&Array.isArray(item)&&item.length>1){let tmp=item.slice(1).map(function(its){return its.index+"$"+play_url+base64Encode(adhead(its.url))});vod_lists.push(tmp.join("#"))}if(shows){let arr=[];let tmp=[];let zy=shows.item_list[idex];zy.date.forEach(function(date){let day=date.day;for(let j=0;j=10?day[j][0]:"0"+day[j][0];let Tdate=date.year+date.month+dayy;arr.push(Tdate)}});for(let k=0;k0?img[0]:""}}catch(e){}', 搜索:'', 搜索:'js:let d=[];let html=request(input);let jsonA=JSON.parse(html.match(/INITIAL_STATE.*?({.*});/)[1]).result.longVideo.results;jsonA.forEach(function(it){let name=it.name;let introduction=it.introduction;let pic=it.v_picurl;let url=it.tiny_url;let zone=it.zone;let score=it.score||"暂无";let style=it.style;if(it.play.item_list){let r={};r.title=name.replace(//,"").replace(//,"");r.url="https://v.sogou.com"+url;r.desc=it.list_category.join(",");r.content=introduction;r.pic_url=pic;d.push(r)}});setResult(d);', } \ No newline at end of file diff --git a/libs/pre.js b/libs/pre.js index 199ca76..8f3e018 100644 --- a/libs/pre.js +++ b/libs/pre.js @@ -42,6 +42,17 @@ var VODS = []; } }); } +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.assign = function () { var target = arguments[0]; for (var i = 1; i < arguments.length; i++) { diff --git "a/py/\346\220\234\347\213\227\344\272\214\347\272\247.js" "b/py/\346\220\234\347\213\227\344\272\214\347\272\247.js" index ec254ac..c4ca2fa 100644 --- "a/py/\346\220\234\347\213\227\344\272\214\347\272\247.js" +++ "b/py/\346\220\234\347\213\227\344\272\214\347\272\247.js" @@ -3,6 +3,13 @@ js: var vod = {vod_id:input}; let html = request(input); +function adhead(url){ + let hd = 'https://v.sogou.com'; + if(!url.startsWith(hd)){ + url = hd+url + } + return url +} try { let json = JSON.parse(html.match(/INITIAL_STATE.*?({.*});/)[1]).detail.itemData; let key = json.dockey; @@ -58,7 +65,7 @@ try { if (item || shows) { // 动漫,电视剧 if(item && Array.isArray(item)&&item.length>1){ // let tmp = item.slice(1).map(function (its){return its.index+'$'+play_url+'https://v.sogou.com'+its.url}); - let tmp = item.slice(1).map(function (its){return its.index+'$'+play_url+base64Encode('https://v.sogou.com'+its.url)}); + let tmp = item.slice(1).map(function (its){return its.index+'$'+play_url+base64Encode(adhead(its.url))}); vod_lists.push(tmp.join('#')); } if (shows) { //综艺,纪录片 @@ -76,7 +83,7 @@ try { for (let k = 0; k < arr.length; k++) { let url = "https://v.sogou.com/vc/eplay?query=" + arr[k] + "&date=" + arr[k] + "&key=" + key + "&st=5&tvsite=" + plays[idex].site; - tmp.push("第" + arr[k] + "期"+'$'+play_url+base64Encode('https://v.sogou.com'+url)); + tmp.push("第" + arr[k] + "期"+'$'+play_url+base64Encode(adhead(url))); } vod_lists.push(tmp.join('#')); } @@ -84,9 +91,9 @@ try { // print(plays[idex].site); let tmp = []; if (!plays[idex].flag_list.includes('trailer')) { - tmp.push(plays[idex].sitename[0]+'$'+play_url+base64Encode('https://v.sogou.com' + plays[idex].url)); + tmp.push(plays[idex].sitename[0]+'$'+play_url+base64Encode(adhead(plays[idex].url))); } else { - tmp.push(plays[idex].sitename[0] + '—预告'+'$'+play_url+base64Encode("https://v.sogou.com" + plays[idex].url)); + tmp.push(plays[idex].sitename[0] + '—预告'+'$'+play_url+base64Encode(adhead(plays[idex].url))); } vod_lists.push(tmp.join('#')); } diff --git a/readme.md b/readme.md index dc867b4..5395c9e 100644 --- a/readme.md +++ b/readme.md @@ -51,6 +51,7 @@ - [X] 2.迁移alist.conf文件,修改默认模板,增加模板url参数支持fyfilter变量从此支持更多筛选场景 - [X] 3.升级至3.5.9,修复重大bug:模板继承导致的自动生成配置的搜索开关异常问题 - [X] 4.增加菜狗热搜 +- [X] 5.修复菜狗源纪录片和综艺 ###### 2022/09/12 ###### 特别说明:仅pluto 1.4.2以上版本支持此项目的筛选及自定义播放免嗅 - [X] 1.升级至3.5.7 -- GitLab