// ==UserScript== // @name 【玩的嗨】VIP工具箱,全网VIP视频免费破解去广告,一站式音乐搜索下载,获取B站封面,下载B站视频,上学吧答案获取等众多功能聚合 2021-05-20 更新,报错请及时反馈 // @namespace http://www.wandhi.com/ // @version 4.2.23 // @homepage https://tools.wandhi.com/scripts // @supportURL https://wiki.wandhi.com/ // @description 功能介绍:1、Vip视频解析;2、一站式音乐搜索解决方案;3、bilibili视频封面获取;4、bilibili视频下载;5、上学吧答案查询(接口偶尔抽风);6、商品历史价格展示(一次性告别虚假降价);7、优惠券查询 // @author MaxZhang // @icon http://www.wandhi.com//favicon.ico // @include *://m.youku.com/v* // @include *://m.youku.com/a* // @include *://v.youku.com/v_* // @include *://*.iqiyi.com/v_* // @include *://*.iqiyi.com/w_* // @include *://*.iqiyi.com/a_* // @include *://*.iqiyi.com/adv* // @include *://*.le.com/ptv/vplay/* // @include *v.qq.com/x/cover/* // @include *v.qq.com/x/page/* // @include *v.qq.com/*play* // @include *v.qq.com/cover* // @include *://*.tudou.com/listplay/* // @include *://*.tudou.com/albumplay/* // @include *://*.tudou.com/programs/view/* // @include *://*.tudou.com/v* // @include *://*.mgtv.com/b/* // @include *://film.sohu.com/album/* // @include *://tv.sohu.com/v/* // @include *://*.acfun.cn/v/* // @include *://*.bilibili.com/video/* // @include *://*.bilibili.com/anime/* // @include *://*.bilibili.com/bangumi/play/* // @include *://*.pptv.com/show/* // @include *://*.baofeng.com/play/* // @include *://*.wasu.cn/Play/show* // @include *://v.yinyuetai.com/video/* // @include *://v.yinyuetai.com/playlist/* // @include *://*.wasu.cn/Play/show/* // @include *://music.taihe.com/song* // @include *://item.taobao.com/* // @include *://detail.tmall.com/* // @include *://chaoshi.detail.tmall.com/* // @include *://detail.tmall.hk/* // @include *://item.jd.com/* // @include *://item.jd.hk/* // @include *://detail.vip.com/detail-* // @include *://product.suning.com/* // @include *://music.163.com/song* // @include *://music.163.com/m/song* // @include *://y.qq.com/* // @include *://*.kugou.com/* // @include *://*.kuwo.cn/* // @include *://*.xiami.com/* // @include *://music.taihe.com/* // @include *://*.1ting.com/player* // @include *://www.qingting.fm/* // @include *://www.lizhi.fm/* // @include *://music.migu.cn/* // @include *://www.shangxueba.com/ask/*.html // @include *://www.ximalaya.com/* // @include *://www.shangxueba.com/ask/*.html // @include *://pan.baidu.com/disk/home* // @include *://yun.baidu.com/disk/home* // @include *://pan.baidu.com/s/* // @include *://yun.baidu.com/s/* // @include *://pan.baidu.com/share/link* // @include *://yun.baidu.com/share/link* // @exclude *://*.wandhi.com/* // @require https://lib.baomitu.com/jquery/1.12.4/jquery.min.js // @require https://cdn.jsdelivr.net/npm/sweetalert2@9.14.0/dist/sweetalert2.min.js // @require https://lib.baomitu.com/echarts/4.6.0/echarts.min.js // @require https://lib.baomitu.com/layer/2.3/layer.js // @require https://lib.baomitu.com/reflect-metadata/0.1.13/Reflect.min.js // @require https://cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js // @require https://cdn.jsdelivr.net/npm/vuex@3.4.0/dist/vuex.min.js // @require https://cdn.jsdelivr.net/npm/qrcode@1.4.4/build/qrcode.min.js // @require https://cdn.jsdelivr.net/npm/crypto-js@4.0.0/crypto-js.js // @license MIT // @grant GM_setClipboard // @run-at document-end // @connect shangxueba365.com // @connect api.wandhi.com // @connect cdn.jsdelivr.net // @connect tool.manmanbuy.com // @connect xbeibeix.com // @connect gwdang.com // @grant unsafeWindow // @grant GM_xmlhttpRequest // @grant GM_info // @grant GM.addStyle // @grant GM_getValue // @grant GM_setValue // @grant GM_notification // @grant GM_openInTab // @grant GM_deleteValue // @grant GM_registerMenuCommand // @grant GM_unregisterMenuCommand // @antifeature referral-link // @downloadURL none // ==/UserScript== !function(e, t) { "object" == typeof exports && "undefined" != typeof module ? t(require("vue"), require("crypto-js")) : "function" == typeof define && define.amd ? define([ "vue", "crypto-js" ], t) : t((e = "undefined" != typeof globalThis ? globalThis : e || self).Vue, e.CryptoJS); }(this, (function(e, t) { "use strict"; function _interopDefaultLegacy(e) { return e && "object" == typeof e && "default" in e ? e : { default: e }; } var n = _interopDefaultLegacy(e), o = _interopDefaultLegacy(t), extendStatics = function(e, t) { return (extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(e, t) { e.__proto__ = t; } || function(e, t) { for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]); })(e, t); }; function __extends(e, t) { function __() { this.constructor = e; } extendStatics(e, t), e.prototype = null === t ? Object.create(t) : (__.prototype = t.prototype, new __); } function __decorate(e, t, n, o) { var i, r = arguments.length, a = r < 3 ? t : null === o ? o = Object.getOwnPropertyDescriptor(t, n) : o; if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, n, o); else for (var s = e.length - 1; s >= 0; s--) (i = e[s]) && (a = (r < 3 ? i(a) : r > 3 ? i(t, n, a) : i(t, n)) || a); return r > 3 && a && Object.defineProperty(t, n, a), a; } function __metadata(e, t) { if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(e, t); } function __awaiter(e, t, n, o) { return new (n || (n = Promise))((function(i, r) { function fulfilled(e) { try { step(o.next(e)); } catch (e) { r(e); } } function rejected(e) { try { step(o.throw(e)); } catch (e) { r(e); } } function step(e) { e.done ? i(e.value) : function adopt(e) { return e instanceof n ? e : new n((function(t) { t(e); })); }(e.value).then(fulfilled, rejected); } step((o = o.apply(e, t || [])).next()); })); } function __generator(e, t) { var n, o, i, r, a = { label: 0, sent: function() { if (1 & i[0]) throw i[1]; return i[1]; }, trys: [], ops: [] }; return r = { next: verb(0), throw: verb(1), return: verb(2) }, "function" == typeof Symbol && (r[Symbol.iterator] = function() { return this; }), r; function verb(r) { return function(s) { return function step(r) { if (n) throw new TypeError("Generator is already executing."); for (;a; ) try { if (n = 1, o && (i = 2 & r[0] ? o.return : r[0] ? o.throw || ((i = o.return) && i.call(o), 0) : o.next) && !(i = i.call(o, r[1])).done) return i; switch (o = 0, i && (r = [ 2 & r[0], i.value ]), r[0]) { case 0: case 1: i = r; break; case 4: return a.label++, { value: r[1], done: !1 }; case 5: a.label++, o = r[1], r = [ 0 ]; continue; case 7: r = a.ops.pop(), a.trys.pop(); continue; default: if (!(i = a.trys, (i = i.length > 0 && i[i.length - 1]) || 6 !== r[0] && 2 !== r[0])) { a = 0; continue; } if (3 === r[0] && (!i || r[1] > i[0] && r[1] < i[3])) { a.label = r[1]; break; } if (6 === r[0] && a.label < i[1]) { a.label = i[1], i = r; break; } if (i && a.label < i[2]) { a.label = i[2], a.ops.push(r); break; } i[2] && a.ops.pop(), a.trys.pop(); continue; } r = t.call(e, a); } catch (e) { r = [ 6, e ], o = 0; } finally { n = i = 0; } if (5 & r[0]) throw r[1]; return { value: r[0] ? r[1] : void 0, done: !0 }; }([ r, s ]); }; } } var i, r = function() { function EventHelper() {} return EventHelper.bind_click = function(e, t) { var n; null === (n = document.querySelector(e)) || void 0 === n || n.addEventListener("click", (function(e) { t(); })); }, EventHelper; }(), a = function() { function Core() { this.topUrl = top.window.location.href, this.url = this.currentUrl(); } return Core.appendTo = function(e, t) { $(e).append(t); }, Core.lazyload = function(e, t) { void 0 === t && (t = 5), setTimeout((function() { e(); }), 1e3 * t); }, Core.aotulazyload = function(e, t, n) { void 0 === n && (n = 5), e() ? t() : setTimeout((function() { Core.aotulazyload(e, t, n); }), 1e3 * n); }, Core.addUrl = function(e, t) { GM_setValue(e, t); }, Core.openUrl = function(e) { this.open(GM_getValue(e)); }, Core.prototype.getPar = function(e, t) { void 0 === t && (t = window.location.search); var n = t.match(new RegExp("[?&]" + e + "=([^&]+)", "i")); return null == n || n.length < 1 ? "" : n[1]; }, Core.appendCss = function(e) { var t = document.createElement("link"); t.type = "text/css", t.rel = "stylesheet", t.href = e, Core.head.appendChild(t); }, Core.appendCssContent = function(e) { var t = document.createElement("style"); t.innerHTML = e, Core.head.appendChild(t); }, Core.prototype.bodyAppendCss = function(e) { $("body").append($('')); }, Core.bodyAppend = function(e) { $("body").append(e); }, Core.appendJs = function(e) { var t = document.createElement("script"); t.type = "text/javascript", t.src = e, this.head.appendChild(t); }, Core.prototype.bodyAppendJs = function(e) { $("body").append($('