// ==UserScript== // @name 网盘自动填写提取密码 // @namespace http://jixun.org/ // @description 自动填写提取密码,失败不重试。 // @include http://pan.baidu.com/share/init?* // @include http://yun.baidu.com/share/init?* // @include http://www.kuaipan.cn/file/id_* // @include http://*.yunpan.cn/lk/* // @version 1.0.1.3 // @grant none // @run-at document-start // @downloadURL none // ==/UserScript== unsafeWindow.eve = Event; (function ($) { var site = { 'yunpan.cn': { chk: /^[a-z0-9]{4}$/, code: '.pwd-input', btn: '.submit-btn' }, 'baidu.com': { chk: /^[a-z0-9]{4}$/, code: '#accessCode', btn: '#submitBtn' }, 'kuaipan.cn': { chk: /^[a-z0-9]{6}$/i, code: '#pwdContaier .txt', btn: '#btnOK', preSubmit: function (codeBox, okBtn) { $('#pwdContaier .bold').textContent = '请手动单击确认按钮然后刷新页面'; } } }; addEventListener ('DOMContentLoaded', function () { // 抓取提取码 var sCode = location.hash.slice(1).trim(), hostName = location.host.match(/\w+\.\w+$/)[0].toLowerCase(); var conf = site[hostName]; // 检查是否为合法格式 if (!conf.chk.test(sCode)) // 没有 Key 或格式不对 return ; // 调试用 console.log ('抓取到的提取码: %s', sCode); // 加个小延时 setTimeout (function () { // 键入提取码并单击「提交」按钮,报错不用理。 var codeBox = $(conf.code), btnOk = $(conf.btn); codeBox.value = sCode; if (conf.preSubmit) if (conf.preSubmit (codeBox, btnOk)) return ; btnOk.click(); }, 10); }, false); })(function ($) { return document.querySelector ($); });