// ==UserScript== // @name 轻之国度百度盘无提取码跳转 // @namespace http://tampermonkey.net/ // @version 1.0.5 // @update 2021.02.21 // @description 在发布的百度网盘链接后添加一个无提取码跳转的链接,需要安装“百度盘分享提取码自动跳转”脚本,否则无法自动输入提取码。由于轻之国度发布者分享链接无固定格式,故可能无法识别到。如果无法识别,请将链接反馈给我,我将尽量适配。 // @author charghet // @grant none // @run-at document-start // @license GPL // @include https://www.lightnovel.us/detail/* // @downloadURL none // ==/UserScript== (function() { var end = false; document.onreadystatechange = function(){ if(document.readyState = 'interactive' && !end){ var f = function(){ var article = document.getElementById('article-main-contents'); var nodes = article.childNodes; for(var i = 0;i < nodes.length;i++){ if(nodes[i].nodeName == 'A'){ var href = nodes[i].href; }else if(nodes[i].nodeName == '#text'){ href = nodes[i].data; }else{ continue; } var index = -1; if((index = href.indexOf("pan.baidu.com/s/")) != -1){ var id = href.substring(index+17,index+39); var pwd = ''; var a = document.createElement('a'); a.target = "_blank"; a.innerText = '无提取码跳转'; a.href = "https://pan.baidu.com/share/init?surl="+id+"&pwd="; var n = -1; //提取码跟在链接后 try{ var pwdIndex = i + 1; if(nodes[pwdIndex].tagName == 'BR'){ pwdIndex += 1; } var s = nodes[pwdIndex].data; if((n = s.search(/[A-z0-9]{4}/)) != -1 && s.replace(/[A-z0-9]{4}/,'').search(/[A-z0-9]/) == -1){ pwd = s.substring(n,n+4); a.href += pwd; article.insertBefore(a,nodes[pwdIndex+1]); continue; } }catch(e){}; //提取码为链接名 if(pwd == ''){ if((n = href.search(/[A-z0-9]{4}/)) != -1 && href.replace(/[A-z0-9]{4}/,'').search(/[A-z0-9]/) == -1){ pwd = href.substring(n,n+4); a.href += pwd; article.insertBefore(a,nodes[i+1]); } } //提取码在链接中 if(pwd == ''){ href = href.substring(47); if((n = href.search(/[A-z0-9]{4}/)) != -1 && href.replace(/[A-z0-9]{4}/,'').search(/[A-z0-9]/) == -1){ pwd = href.substring(n,n+4); a.href += pwd; article.insertBefore(a,nodes[i+1]); } } } } end = true; } window.setTimeout(f, 0); } } })();