Greasy Fork is available in English.
免掉百度网盘写密码的麻烦,包括解析短网址和跳转链接,多链接支持
当前为
// ==UserScript==
// @name Free Yun Keys
// @name:zh 免密百度网盘
// @namespace http://zszen.github.io/
// @version 3.2
// @description 免掉百度网盘写密码的麻烦,包括解析短网址和跳转链接,多链接支持
// @author Zszen John
// @include *
// @grant none
// ==/UserScript==
(function() {
'use strict';
var label = 'Zszen '
var regexp_codeback = /#([a-zA-Z0-9]{4})/
var regexp_code = /(码|问)[\s|:|:]*([a-zA-Z0-9]{4})/
var regexp_url = /(https:\/\/pan.baidu.com\/.*?\/(\d|\w|-)+)/
var url = window.location.href;
var res = /\/\/(.+?\..*?)(\/|\?)/.exec(url);
var site = res[1];
if(site=="pan.baidu.com"){//parse
console.log(label,'pan get');
var pss = regexp_codeback.exec(url);
var inputs = ELs('input');
var as = ELs('a', el=>el.textContent.indexOf('提取文件')>=0);
if(pss!=null && pss.length>1 && inputs.length>0 && as.length>0){
inputs[0].value = pss[1];
as[0].click()
}
}else{//deal
console.log(label,'pan find');
ELs('a',
(el)=>regexp_code.test(el.parentElement.textContent) && regexp_url.test(el.href),
el=>{
var ps = regexp_code.exec(el.parentElement.textContent)
el.href=el.href+'#'+ps[2]
}
);
}
function ELs(tagName, conditionFun, dealFun){
var tags = [...document.getElementsByTagName(tagName)];
if(conditionFun){
tags = tags.filter(conditionFun);
}
if(dealFun){
tags.forEach(dealFun);
}
return tags;
}
})();