// ==UserScript== // @name 隐心百度云盘钥匙 // @namespace http://tampermonkey.net/ // @version 1.9 // @description 百度云盘钥匙,主要功能有:1、打开百度云盘链接地址时,会自动获取提取码填入,并会自动提交,一键打开分享链接,方便快捷;2、浏览任何网页时,只要包含百度云盘分享链接,都会在页面左上角显示链接是否有效,如果有效则会显示提取码。 // @author Yisin // @match *://pan.baidu.com/* // @match *://*/* // @require https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.0/jquery.min.js // @grant GM_xmlhttpRequest // @grant GM_openInTab // @connect meek.com.cn // @connect ip.cn // @downloadURL https://update.greasyfork.icu/scripts/373344/%E9%9A%90%E5%BF%83%E7%99%BE%E5%BA%A6%E4%BA%91%E7%9B%98%E9%92%A5%E5%8C%99.user.js // @updateURL https://update.greasyfork.icu/scripts/373344/%E9%9A%90%E5%BF%83%E7%99%BE%E5%BA%A6%E4%BA%91%E7%9B%98%E9%92%A5%E5%8C%99.meta.js // ==/UserScript== (function() { 'use strict'; var isBDY = false; var URL_STORE = {}; var CK_DATA = {}; var EC = new EventControl(); var PAN_S = 'https://pan.baidu.com/s/'; var PAN_S1 = '//pan.baidu.com/s/'; var PAN_I = 'https://pan.baidu.com/share/init?surl='; var PAN_I1 = '//pan.baidu.com/share/init'; function getLocationKey(){ var key = ""; var url = document.location.href; if(url.indexOf(PAN_S1) != -1){ key = document.location.pathname.substring(4); } else if(url.indexOf(PAN_I1) != -1){ key = getUrlParam(null, "surl"); } if(/^1[^\s]+/g.test(key)){ key = key.substring(1); } return key; } function getUrlKey(url){ var key = ""; if(url.indexOf(PAN_S1) != -1){ key = url.substring(url.indexOf(PAN_S1) + 18); } else if(url.indexOf(PAN_I1) != -1){ key = getUrlParam(url, "surl"); } if(/^1[^\s]+/g.test(key)){ key = key.substring(1); } console.info("===>" + key); return key; } function getUrlParam(u, param) { var url = u || location.href; var reg = new RegExp("(" + param + ")=([^]*)", "g"), matched = url.match(reg); return matched && matched[0] ? matched[0].replace(param + "=", "") : null; } function LoadPass(bdyKey, purl, callback){ var bdyUrl = purl.indexOf(PAN_I1) != -1 ? PAN_I + bdyKey : PAN_S + bdyKey; var bdyPass = ""; if(window.localStorage){ bdyPass = localStorage.getItem(bdyUrl); if(!bdyPass || bdyPass.length < 4){ var hashs = document.location.hash; var ret = hashs.match(/^(#tqm=[0-9a-zA-Z]{4})/g); if(ret && ret.length){ bdyPass = ret[0].substring(5); } } } if(bdyPass && bdyPass.length == 4){ console.info(bdyUrl,"->",bdyPass); if(callback){ callback(bdyPass); } if(isBDY){ $('.verify-input input').val(bdyPass); $('.g-button.g-button-blue-large').click(); return; } } else { var weburl = 'http://ypsuperkey.meek.com.cn/api/items/BDY-' + bdyKey + '?access_key=4fxNbkKKJX2pAm3b8AEu2zT5d2MbqGbD&client_version=web-client&' + new Date().getTime(); GM_xmlhttpRequest({ method: 'GET', url: weburl, headers: {"Accept": "application/json"}, contentType: "application/json", dataType: 'json', onload: function(response){ if(response.statusText == 'OK'){ try{ var res = JSON.parse(response.responseText); bdyPass = res.access_code; console.info(bdyUrl,"->",bdyPass); if(bdyPass && bdyPass.length == 4){ if(window.localStorage){ localStorage.setItem(bdyUrl, bdyPass); } if(isBDY){ $('.verify-input input').val(bdyPass); $('.g-button.g-button-blue-large').click(); return; } } if(callback){ callback(bdyPass); } else { autoGet(bdyUrl); } }catch(e){} } else if(callback){ callback(bdyPass); } else { autoGet(bdyUrl); } } }); } } function CheckUrl(weburl, callback){ GM_xmlhttpRequest({ method: 'GET', url: weburl, contentType: "text/html", onload: function(response){ if(response.statusText == 'OK' && response.responseText){ // if(/分享的文件已经被取消了/g.test(response.responseText) || /此链接分享内容可能因为涉及侵权/g.test(response.responseText) || /啊哦,邀请链接已失效/g.test(response.responseText) || /啊哦,你所访问的页面不存在了/g.test(response.responseText) || /分享的文件已经被删除了/g.test(response.responseText)){ callback(false); } else { callback(true); } } else { callback(false); } } }); } function ShowBDYPass(url, pass){ if(URL_STORE[url]){ return; } pass = pass || ""; var px = pass; URL_STORE[url] = pass; var $div = $('#__BDY-DIV-BOX'); var $list = {}; var $box = {}; var $btn = {}; if(!$div.length){ $div = $('