视频实时下载解析,支持抖音、快手

功能短视频去水印下载:支持抖音、快手【脚本长期维护更新,完全免费,无广告,仅限学习交流!!QQ:2394856795微信:ahonker999】

// ==UserScript==
// @name              视频实时下载解析,支持抖音、快手
// @name:zh           视频实时下载解析,支持抖音、快手
// @name:zh-TW		  视频实时下载解析,支持抖音、快手
// @namespace         shipin_downspace_20240121
// @version           1.2.0
// @description       功能短视频去水印下载:支持抖音、快手【脚本长期维护更新,完全免费,无广告,仅限学习交流!!QQ:2394856795微信:ahonker999】
// @description:zh    功能短视频去水印下载:支持抖音、快手【脚本长期维护更新,完全免费,无广告,仅限学习交流!!QQ:2394856795微信:ahonker999】
// @description:zh-TW 功能短視頻去水印下載:支援抖音、快手【指令碼或直譯式程式長期維護更新,完全免費,無廣告,僅限學習交流!!QQ:2394856795微信:ahonker999】
// @author            ahonker
// @antifeature  membership
// @icon              data:image/png;base64,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
// @include           *://*.youku.com/v_*
// @include           *://*.iqiyi.com/v_*
// @include           *://*.iqiyi.com/w_*
// @include           *://*.iqiyi.com/a_*
// @include           *://*.iqiyi.com/resource/pcw/play/*
// @include           *://*.le.com/ptv/vplay/*
// @include           *://v.qq.com/x/cover/*
// @include           *://v.qq.com/x/page/*
// @include           *://v.qq.com/tv/*
// @include           *://*.tudou.com/listplay/*
// @include           *://*.tudou.com/albumplay/*
// @include           *://*.tudou.com/programs/view/*
// @include           *://*.mgtv.com/b/*
// @include           *://film.sohu.com/album/*
// @include           *://tv.sohu.com/v/*
// @include           *://*.baofeng.com/play/*
// @include           *://vip.pptv.com/show/*
// @include           *://v.pptv.com/show/*
// @include           *://www.le.com/ptv/vplay/*
// @include           *://www.wasu.cn/Play/show/*
// @include           *://*.1905.com/video/*
// @include           *://*.1905.com/play/*
// @include           *://*.1905.com/*/play/*
// @include           *://www.miguvideo.com/mgs/*
// @include           *://m.v.qq.com/x/cover/*
// @include           *://m.v.qq.com/x/page/*
// @include           *://m.v.qq.com/*
// @include           *://m.iqiyi.com/v_*
// @include           *://m.iqiyi.com/w_*
// @include           *://m.iqiyi.com/a_*
// @include           *://m.youku.com/alipay_video/*
// @include           *://m.youku.com/video/id_*
// @include           *://m.mgtv.com/b/*
// @include           *://m.tv.sohu.com/v/*
// @include           *://m.film.sohu.com/album/*
// @include           *://m.le.com/ptv/vplay/*
// @include           *://m.pptv.com/show/*
// @include           *://m.acfun.cn/v/*
// @include           *://m.wasu.cn/Play/show/*
// @include           *://www.baidu.com/*
// @include           *://www.so.com/s*
// @include           *://www.sogou.com/web*
// @include           *://www.sogou.com/sogou*
// @include           *://cn.bing.com/search*
// @include           *://www.bing.com/search*
// @include           *://www4.bing.com/search*
// @include           *://so.toutiao.com/search*
// @include           *://www.google.com/search*
// @include           *://www.google.com.hk/search*
// @include           *://duckduckgo.com*
// @include	   	      *://www.bilibili.com/**
// @include           *://search.bilibili.com/**
// @include           *://space.bilibili.com/**
// @include           *://www.bilibili.com/read/**
// @include      	  *://*.zhihu.com/*
// @include           *://www.douyin.com/*
// @include           *://www.kuaishou.com/*
// @include           *://www.youtube.com
// @include           *://www.youtube.com/
// @include           *://www.youtube.com/watch*
// @include           *://www.facebook.com/*
// @include           *://yt1s.com/facebook-downloader
// @include           *://*.douyinvod.com/*
// @require           https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/jquery/3.2.1/jquery.min.js
// @require           https://greasyfork.org/scripts/454236-findandreplacedomtext-huahuacat/code/findAndReplaceDOMText-huahuacat.js?version=1112990
// @connect           bilibili.com
// @connect           sct.staticj.top
// @grant             unsafeWindow
// @grant             GM_openInTab
// @grant             GM.openInTab
// @grant             GM_getValue
// @grant             GM.getValue
// @grant             GM_setValue
// @grant             GM.setValue
// @grant             GM_download
// @grant             GM_xmlhttpRequest
// @grant             GM.xmlHttpRequest
// @grant             GM_registerMenuCommand
// @license           AGPL License
// @charset		      UTF-8
// @run-at            document-idle
// ==/UserScript==
(function () {
	'use strict';
	/**
 * 脚本遵循AGPL License开源协议;在协议允许的范围类,可以自由修改
 * 开完万岁!!
 */
	//共有方法,全局共享
function CommonFunction(){
	this.GMgetValue = function (name, value=null) {
		let storageValue = value;
		if (typeof GM_getValue === "function") {
			storageValue = GM_getValue(name, value);
		} else if(typeof GM.setValue === "function"){
			storageValue = GM.getValue(name, value);
		}else{
			var arr = window.localStorage.getItem(name);
			if(arr != null){
				storageValue = arr
			}
		}
		return storageValue;
	};
	this.GMsetValue = function(name, value){
		if (typeof GM_setValue === "function") {
			GM_setValue(name, value);
		} else if(typeof GM.setValue === "function"){
			GM.setValue(name, value);
		}else{
			window.localStorage.setItem(name, value)
		}
	};
	this.GMaddStyle = function(css){
		var myStyle = document.createElement('style');
		myStyle.textContent = css;
		var doc = document.head || document.documentElement;
		doc.appendChild(myStyle);
	};
	this.GMopenInTab = function(url, options={"active":true, "insert":true, "setParent":true}){
		if (typeof GM_openInTab === "function") {
			GM_openInTab(url, options);
		} else {
			GM.openInTab(url, options);
		}
	};
	this.addScript = function(url){
		var s = document.createElement('script');
		s.setAttribute('src',url);
		document.body.appendChild(s);
	};
	this.randomNumber = function(){
		return Math.ceil(Math.random()*100000000);
	};
	this.request = function(mothed, url, param){   //网络请求
		return new Promise(function(resolve, reject){
			GM_xmlhttpRequest({
				url: url,
				method: mothed,
				data:param,
				onload: function(response) {
					var status = response.status;
					var playurl = "";
					if(status==200||status=='200'){
						var responseText = response.responseText;
						resolve({"result":"success", "data":responseText});
					}else{
						reject({"result":"error", "data":null});
					}
				}
			});
		})
	};
	this.addCommonHtmlCss = function(){
		var cssText = 
			`
			@keyframes fadeIn {
				0%    {opacity: 0}
				100%  {opacity: 1}
			}
			@-webkit-keyframes fadeIn {
				0%    {opacity: 0}
				100%  {opacity: 1}
			}
			@-moz-keyframes fadeIn {
				0%    {opacity: 0}
				100%  {opacity: 1}
			}
			@-o-keyframes fadeIn {
				0%    {opacity: 0}
				100%  {opacity: 1}
			}
			@-ms-keyframes fadeIn {
				0%    {opacity: 0}
				100%  {opacity: 1}
			}
			@keyframes fadeOut {
				0%    {opacity: 1}
				100%  {opacity: 0}
			}
			@-webkit-keyframes fadeOut {
				0%    {opacity: 1}
				100%  {opacity: 0}
			}
			@-moz-keyframes fadeOut {
				0%    {opacity: 1}
				100%  {opacity: 0}
			}
			@-o-keyframes fadeOut {
				0%    {opacity: 1}
				100%  {opacity: 0}
			}
			@-ms-keyframes fadeOut {
				0%    {opacity: 1}
				100%  {opacity: 0}
			}
			.web-toast-kkli9{
				position: fixed;
				background: rgba(0, 0, 0, 0.7);
				color: #fff;
				font-size: 14px;
				line-height: 1;
				padding:10px;
				border-radius: 3px;
				left: 50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-moz-transform: translateX(-50%);
				-o-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				z-index: 999999999999999999999999999;
				white-space: nowrap;
			}
			.fadeOut{
				animation: fadeOut .5s;
			}
			.fadeIn{
				animation:fadeIn .5s;
			}
			`;
		this.GMaddStyle(cssText);
	};
	this.webToast = function(params) {	//小提示框
		var time = params.time;
		var background = params.background;
		var color = params.color;
		var position = params.position;  //center-top, center-bottom
		var defaultMarginValue = 50;
		
		if(time == undefined || time == ''){
			time = 1500;
		}
		
		var el = document.createElement("div");
		el.setAttribute("class", "web-toast-kkli9");
		el.innerHTML = params.message;
		//背景颜色
		if(background!=undefined && background!=''){
			el.style.backgroundColor=background;
		}
		//字体颜色
		if(color!=undefined && color!=''){
			el.style.color=color;
		}
		
		//显示位置
		if(position==undefined || position==''){
			position = "center-bottom";
		}
		
		//设置显示位置,当前有种两种形式
		if(position==="center-bottom"){
			el.style.bottom = defaultMarginValue+"px"; 
		}else{
			el.style.top = defaultMarginValue+"px"; 
		}
		el.style.zIndex=999999;
		
		document.body.appendChild(el);
		el.classList.add("fadeIn");
		setTimeout(function () {
			el.classList.remove("fadeIn");
			el.classList.add("fadeOut");
			/*监听动画结束,移除提示信息元素*/
			el.addEventListener("animationend", function () {
				document.body.removeChild(el);
			});
			el.addEventListener("webkitAnimationEnd", function () {
				document.body.removeChild(el);
			});
		}, time);
	};
	this.filterStr = function(str){
		if(!str) return "";
		str = str.replace(/\t/g,"");
		str = str.replace(/\r/g,"");
		return encodeURIComponent(str)
	};
	this.getParamterQueryUrl = function(text, tag) { //查询GET请求url中的参数
		if(text.indexOf("?")!=-1){ //选取?后面的字符串,兼容window.location.search,前面的?不能去掉
			var textArray = text.split("?");
			text = "?"+textArray[textArray.length-1];
		}
		var t = new RegExp("(^|&)" + tag + "=([^&]*)(&|$)");
		var a = text.substr(1).match(t);
		if (a != null){
			return a[2];
		}
		return "";
	};
	this.getEndHtmlIdByUrl = function(url) { //获得以html结束的ID
		if(url.indexOf("?")!=-1){
			url = url.split("?")[0]
		}
		if(url.indexOf("#")!=-1){
			url = url.split("#")[0]
		}
		var splitText = url.split("/");
		var idText = splitText[splitText.length-1];
		idText = idText.replace(".html","");
		return idText;
	};
	this.getEcommercePlatform=function(url = window.location.href){
		let platform = "";
		if(url.indexOf("detail.tmall")!=-1 || url.indexOf("tmall.hk")!=-1 || url.indexOf("pages.tmall.com")!=-1){
			platform = "tmall";
		}else if(url.indexOf("taobao.com")!=-1 || url.indexOf("maiyao.liangxinyao.com")!=-1){
			platform = "taobao";
		}else if(url.indexOf("jd.com")!=-1 || url.indexOf("npcitem.jd.hk")!=-1 || url.indexOf("yiyaojd.com")!=-1){
			platform = "jd";
		}else if(url.indexOf("detail.vip.com")!=-1 || url.indexOf("www.vipglobal.hk")!=-1){
			platform = "vpinhui";
		}
		return platform;
	}
	this.isPC = function(){
		var userAgentInfo = navigator.userAgent;
		var Agents = ["Android", "iPhone","SymbianOS", "Windows Phone", "iPad", "iPod"];
		var flag = true;
		for (var v = 0; v < Agents.length; v++) {
			if (userAgentInfo.indexOf(Agents[v]) > 0) {
				flag = false;
				break;
			}
		}
		return flag;
	};
	this.getBilibiliBV=function(){
		var pathname = window.location.pathname;
		var bv = pathname.replace("/video/","").replace("/","");
		return bv;
	};
	this.getSystemOS=function(){
		var u = navigator.userAgent;
		if (!!u.match(/compatible/i) || u.match(/Windows/i)) {
			return 'windows';
		} else if (!!u.match(/Macintosh/i) || u.match(/MacIntel/i)) {
			return 'macOS';
		} else if (!!u.match(/iphone/i) || u.match(/Ipad/i)) {
			return 'ios';
		} else if (!!u.match(/android/i)) {
			return 'android';
		} else {
			return 'other';
		}
	};
	this.RPCDownloadFile = function(fileName, url, savePath="D:/", RPCURL="ws://localhost:16800/jsonrpc", RPCToken="") {		
		const self = this;
		if(!savePath){
			savePath = "D:/";
		}
		if(!RPCURL){
			RPCURL = "ws://localhost:16800/jsonrpc";
		}
		let options = { //下载配置文件
			"dir":savePath,
			"max-connection-per-server": "16",
			"header":["User-Agent:"+navigator.userAgent+"", "Cookie:"+document.cookie+"", "Referer:"+window.location.href+""]
		}
		if(!!fileName) {
			options.out = fileName;
		}
		let jsonRPC = {
			"jsonrpc": "2.0",
			"id": "huahuacat",
			"method": "aria2.addUri",
			"params": [[url], options],
		}
		if (!!RPCToken) {
			jsonRPC.params.unshift("token:" + RPCToken); // 必须要加在第一个
		}
		return new Promise(function(resolve, reject) {
			var webSocket = new WebSocket(RPCURL);
			webSocket.onerror = function(event) {
				console.log("webSocket.onerror", event);
				reject("Aria2连接错误,请打开Aria2和检查RPC设置!");
			}
			webSocket.onopen = function(){
				webSocket.send(JSON.stringify(jsonRPC));
			}
			webSocket.onmessage = function(event){
				let result = JSON.parse(event.data);
				switch (result.method) {
					case "aria2.onDownloadStart":
						resolve("Aria2 开始下载【"+fileName+"】");
						webSocket.close();
						break;
					case "aria2.onDownloadComplete":
						break;
					default:
						break;
				}
			}
		});
	};
	this.getElementObject = function(selector, allowEmpty = true, delay=10, maxDelay=2000){
		return new Promise((resolve,reject) =>{
			let totalDelay = 0;
			let element = document.querySelector(selector);
			let result = allowEmpty ? !!element : (!!element && !!element.innerHTML);
			if(result){
				resolve(element);
			}
			let elementInterval = setInterval(()=>{
				if(totalDelay >= maxDelay){ //总共检查2s,如果还是没找到,则返回
					clearInterval(elementInterval);
					resolve(null);
				}
				element = document.querySelector(selector);
				result = allowEmpty ? !!element : (!!element && !!element.innerHTML);
				if(result){
					clearInterval(elementInterval);
					resolve(element);
				}else{
					totalDelay += delay;
				}
			}, delay);
		});
	};
	/**
	 * @param {Object} time
	 * @param {Object} format
	 * 时间格式化
	 * DateFormat(new Date(dateCreated), "yyyy-MM-dd hh:mm:ss")
	 */
	this.DateFormat = function(time, format) {
		var o = {
			"M+": time.getMonth() + 1, //月份 
			"d+": time.getDate(), //日 
			"h+": time.getHours(), //小时 
			"m+": time.getMinutes(), //分 
			"s+": time.getSeconds(), //秒 
			"q+": Math.floor((time.getMonth() + 3) / 3), //季度 
			"S": time.getMilliseconds() //毫秒 
		};
		if(/(y+)/.test(format)){
			format = format.replace(RegExp.$1, (time.getFullYear() + "").substr(4 - RegExp.$1.length));
		}
		for(var k in o){
			if(new RegExp("(" + k + ")").test(format)){
				format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
			}
		}
		return format;
	}
}
//全局弹窗对象
const popup = (function(){
	class Popup {
		constructor() {
			this.mask = document.createElement('div')
			this.setStyle(this.mask, {
				"width": '100%',
				"height": '100%',
				"backgroundColor": 'rgba(0, 0, 0, .6)',
				"position": 'fixed',
				"left": "0px",
				"top": "0px",
				"bottom":"0px",
				"right":"0px",
				"z-index":"99999"
			})
			// 创建中间显示内容的水平并垂直居中的div
			this.content = document.createElement('div')
			this.setStyle(this.content, {
				"max-width": '450px',
				"width":"100%",
				"max-height": '600px',
				"backgroundColor": '#fff',
				"boxShadow": '0 0 2px #999',
				"position": 'absolute',
				"left": '50%',
				"top": '50%',
				"transform": 'translate(-50%,-50%)',
				"borderRadius": '3px'
			})
			// 将这个小div放在遮罩中
			this.mask.appendChild(this.content)
		}
		middleBox(param) {
			// 先清空中间小div的内容 - 防止调用多次,出现混乱
			this.content.innerHTML = ''
			let title = '默认标题内容';
			// 检测参数类型
			if({}.toString.call(param) === '[object String]') {
				title = param
			} else if({}.toString.call(param) === '[object Object]') {
				title = param.title
			}
			// 将遮罩放在body中显示
			document.body.appendChild(this.mask)
			// 给中间的小div设置默认的排版
			// 上面标题部分
			this.title = document.createElement('div')
			// 设置样式
			this.setStyle(this.title, {
				"width": '100%',
				"height": '40px',
				"lineHeight": '40px',
				"boxSizing": 'border-box',
				"background-color":"#FF4D40",
				"color": '#FFF',
				"text-align": 'center',
				"font-weight":"700",
				"font-size":"16px"
				
			})
			// 设置默认标题内容
			this.title.innerText = title
			// 将标题部分放在中间div中
			this.content.appendChild(this.title)
			// 关闭按钮
			this.closeBtn = document.createElement('div')
			// 设置内容
			this.closeBtn.innerText = '×'
			// 设置样式
			this.setStyle(this.closeBtn, {
				"textDecoration": 'none',
				"color": '#666',
				"position": 'absolute',
				"right": '10px',
				"top": '0px',
				"fontSize": '25px',
				"color": '#FFF',
				"display":"inline-block",
				"cursor":"pointer"
			})
			// 将关闭按钮放在中间小div中
			this.title.appendChild(this.closeBtn)
			this.closeBtn.onclick = () => this.close()
		}
		// 弹出提示框
		dialog(param) {
			this.middleBox(param);
			this.dialogContent = document.createElement('div')
			this.setStyle(this.dialogContent,{
				"padding":"15px",
				"max-height":"400px"
			})
			this.dialogContent.innerHTML = param.content;
			this.content.appendChild(this.dialogContent)
			param.onContentReady(this);
		}
		close() {
			document.body.removeChild(this.mask)
			window.location.reload();
		}
		setStyle(ele, styleObj) { // 设置样式的函数
			for(let attr in styleObj){
				ele.style[attr] = styleObj[attr]
			}
		}
	}
	let popup = null;
	return (function() {
		if(!popup) {
			popup = new Popup()
		}
		return popup;
	})()
})();
//全局统一方法对象
const commonFunctionObject = new CommonFunction(); 
commonFunctionObject.addCommonHtmlCss();	//统一html、css元素添加
let functionController = null;
	//相关功能关闭控制
functionController = commonFunctionObject.GMgetValue("setingData");
if(!functionController){
	functionController={
		"bilibiliHelper":true,"superVideoHelper":true,
		"abroadVideoHelper":true,
		"searchEnginesNavigation":true,"zhihuHelper":true,
		"shortVideoDownload":true
	}
}	
//用户功能设置函数
function usersSeting(){
	var bilibiliHelper=true, superVideoHelper=true, abroadVideoHelper=true, 
	searchEnginesNavigation=true, zhihuHelper=true, shortVideoDownload=true;
	var isUpdateStorage = false;
	if(!functionController.hasOwnProperty("bilibiliHelper")){
		functionController.bilibiliHelper = true;
		isUpdateStorage = true;
	}else{
		bilibiliHelper = functionController.bilibiliHelper;
	}
	if(!functionController.hasOwnProperty("superVideoHelper")){
		functionController.superVideoHelper = true;
		isUpdateStorage = true;
	}else{
		superVideoHelper = functionController.superVideoHelper;
	}
	if(!functionController.hasOwnProperty("abroadVideoHelper")){
		functionController.abroadVideoHelper = true;
		isUpdateStorage = true;
	}else{
		abroadVideoHelper = functionController.abroadVideoHelper;
	}
	if(!functionController.hasOwnProperty("searchEnginesNavigation")){
		functionController.searchEnginesNavigation = true;
		isUpdateStorage = true;
	}else{
		searchEnginesNavigation = functionController.searchEnginesNavigation;
	}
	if(!functionController.hasOwnProperty("zhihuHelper")){
		functionController.zhihuHelper = true;
		isUpdateStorage = true;
	}else{
		zhihuHelper = functionController.zhihuHelper;
	}
	if(!functionController.hasOwnProperty("shortVideoDownload")){
		functionController.shortVideoDownload = true;
		isUpdateStorage = true;
	}else{
		shortVideoDownload = functionController.shortVideoDownload;
	}
	if(isUpdateStorage){
		commonFunctionObject.GMsetValue("setingData",functionController);
	}
	var setingData=[
		{"tag":"bilibiliHelper", "name":"B站使用加强(视频下载支持批量、浏览记录、一键三连)", "checked":bilibiliHelper},
		{"tag":"zhihuHelper", "name":"知乎使用加强(内容标识、问答显示优化、视频下载等)", "checked":zhihuHelper},
		{"tag":"superVideoHelper", "name":"全网VIP视频解析(支持爱奇艺、腾讯视频、B站番剧等)", "checked":superVideoHelper},
		{"tag":"searchEnginesNavigation", "name":"搜索引擎使用加强(适配百度、360、搜狗、必应、Google等)", "checked":searchEnginesNavigation},
		{"tag":"shortVideoDownload", "name":"短视频去水印下载(支持抖音、快手等)", "checked":shortVideoDownload},
		{"tag":"abroadVideoHelper", "name":"国外视频解析下载(支持油管、Facebook等)", "checked":abroadVideoHelper}
	]
	var content = "";
	for(var i=0; i<setingData.length;i++){
		var one = setingData[i];
		content += `
			<div style="padding: 5px 0px;">
				<input style="display:inline-block;width: 15px;height: 15px;display: inline-block;vertical-align: middle; -webkit-appearance:checkbox;margin-bottom: 3px;cursor: pointer;" name="Checkbox" type="checkbox" data-tag="`+one.tag+`" `+(one.checked ? "checked" : "")+`>
				<label style="display:inline-block;font-size: 14px;margin:3px 0;vertical-align: middle;font-weight:500;color:#000;">`+one.name+`</label>
			</div>
		`
	}
	popup.dialog({
		"title":"功能开关",
		"content":content,
		"onContentReady":function($that){
			$that.dialogContent.querySelectorAll("input[type='checkbox']").forEach(function(checkbox){
				checkbox.addEventListener("click", function(e){
					var tag = e.target.getAttribute("data-tag");
					var checked = e.target.checked;
					functionController[tag] = checked;
					commonFunctionObject.GMsetValue("setingData",functionController);
					commonFunctionObject.webToast({"message":"操作成功", "background":"#FF4D40"});
				});
			})
		}
	});
}
 
// 菜单按钮弹框
if(commonFunctionObject.isPC()){
	GM_registerMenuCommand("功能开关",()=>usersSeting());
}else{
	functionController.bilibiliHelper = false;
	functionController.abroadVideoHelper = false;
	functionController.searchEnginesNavigation = false;
	functionController.zhihuHelper = false;
}
	
	/**
 * 超级解析助手功能
 */
 
//VIP视频解析接口可自定义;请严格按照格式添加
//showType=1(仅PC), showType=2(仅mobile), showType=3(同时显示)
const originalInterfaceList = [
	
];
function SuperVideoHelper(originalInterfaceList){
	this.originalInterfaceList = originalInterfaceList;
	this.elementId = Math.ceil(Math.random()*100000000)+"mmx";
	this.customInterfaceKey = "custom_interface_key_dddsdxxa";
	this.quicklyInterfaceKey = "custom_quickly_interface_key_dddsdxxa";
	this.defaultQuicklyInterfaceIndex = 1;
	this.isRun = function(){ //判断是否运行
		const host = window.location.host;
		const urls = ["www.iqiyi.com","v.qq.com","youku.com", "www.le.com","mgtv.com","sohu.com", "acfun.cn","bilibili.com",
			"baofeng.com","pptv.com","1905.com","miguvideo.com","sports.iqiyi.com"];
		var result = false;
		if(!host.startsWith("m.")){ //不是移动端执行
			for(var i=0; i<urls.length;i++){ //不是B站直接判断
				if(window.location.host.indexOf("bilibili.com")==-1){
					if(window.location.host.indexOf(urls[i])!=-1){
						result = true;
						break;
					}
				}else{
					if(window.location.href.indexOf("www.bilibili.com/bangumi/play")!=-1){ //是B站只有番剧才开启VIP解析
						result = true;
						break;
					}
				}
			}
		}
		return result;
	};
	this.showPlayerWindow = function(playObject){	//显示播放窗口
		var url = playObject.url + window.location.href;
		commonFunctionObject.GMopenInTab(url);
	};
	this.analysisCustomInterface = function(){ //自定义接口解析
		var customInterface = commonFunctionObject.GMgetValue(this.customInterfaceKey,"");
		if(!!customInterface){
			try{
				var customizeInterfaceList = new Array();
				var analysisArray = customInterface.split("\n");
				for(var i=0;i<analysisArray.length;i++){
					var onePiece = analysisArray[i];
					if(!!onePiece && onePiece.indexOf(",")!=-1){
						var onePieceArray = onePiece.split(","); 
						
						if(onePieceArray.length==2 && !!onePieceArray[0] && /(http|https):\/\/\S*/.test(onePieceArray[1])){
							customizeInterfaceList.push({"name":""+onePieceArray[0]+"","url":""+onePieceArray[1]+"", "showType":1});
						}
					}
				}
				this.originalInterfaceList = customizeInterfaceList.concat(this.originalInterfaceList);
			}catch(e){}
		}
	};
	this.getQuicklyInterfaceIndex = function(){
		var quicklyInterfaceIndexString = commonFunctionObject.GMgetValue(this.quicklyInterfaceKey,"")+"";
		var quicklyInterfaceIndex = this.defaultQuicklyInterfaceIndex;
		if(!!quicklyInterfaceIndexString){
			quicklyInterfaceIndex = parseInt(quicklyInterfaceIndexString);
		}
		if(this.originalInterfaceList.length-1<quicklyInterfaceIndex){
			quicklyInterfaceIndex = this.defaultQuicklyInterfaceIndex;
		}
		return quicklyInterfaceIndex;
	};
	this.addHtmlElements = function(){  //添加HTML
		const vipVideoImageBase64 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC9klEQVRoQ+2ZPWgVQRDH/7/CWqOIYOFHFbRSjJhGMGDpByoIago70cqvUtQgdipWFqawMWghGIidhcHKQAJqEURBRfED1CCCjc3IPu4em31775J7d3m8cAtX3O7szP7nPzszx6EeH/T4+VUD6DaDTQbMbE+3D7MY+8Ckkw8BPFuMki7KDtUAuuh9Z3oZMtBljxY2X9eBwq4raWPNQEmOLKxm+TBgZqsknQ1dAVzNco+ZhWsm6ZakHZLC1mQyrZ5OX2RvzMxnSa8lzQJ/YwLzGDCze5JOeoI/gbVtAMxJ6vPW7wKnkr4qbEuaxccDcGWBsfNV0mjMmSGAg5LGA6XbgFehITPbLel5MN84ZAUAUjMPgWO+zZY7YGbvJW0OvRoB8EjSEW9+BhhIvOvCp0wGfPPbgZfpRAzATUnn56GEmJyLd39cBNxeF99FADTa42BskuQef4wDh9oB2CXpRbDpMPA4nTOz05LuBDLrgW+dAACGIkxfkHTDm/8DrMwEkBxgOskkqdwEcMAD4GLf3YF0PACOe+uFGMgA4Bj4EAAbAGbcXLQOmNklSdeCTRuBT2bWL+lNsLYfeFIRgH2SJgJ7GwCXYjMBrJb0K9jUiHEzG5F02VubA9b4skXvQMiAmW2VdFSSn24/As0kk1mJzeyppL3ewaaBnWY2K2mLNz8S5ueCAMLwz3q/DZxreweSe3BC0v1Ai7tkYXrsB96WwMBCAfQBv3MBJCD+SVrhaXaZ54z3PgUMhpYrZKCF7bbNnJk5BhwT6fghyW8thoGxigE4my6tXwemQlt5AGI1oamDSIFLmCuURiW5BOGPL8C7drGV206b2XdJ6yJKxoDhmPKCIeS61ZZClncxFgLAtcyxrnEwRmknDFQFIFYTWnJ/CVmoGgYSj7Z81OR86Lg7sOgPmnY6s0IpN4TyYrDb6zWAmoEOPVCHUIcO7Hh7/YemYxcWU7AMf3BkNGDF/FP9rkwGqjddkoWWv5Ql6V1yNXUdWHKXBwZ7noH/dP+HQNqheToAAAAASUVORK5CYII=";
		const quicklyBase64 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAv1JREFUWEfFl02IVWUYx39/EDdKoCiCGYquxNw404QL+wA/wIUfA5luMotk0jGoiDQFv1oMqCCOFkYQtopczKxMGsUUF2bNKsWFKBroJtLI2qjwl+dy7uV47jnnnntnygcOF97nfd7/777nfZ7nPeIZm8Zb3/ZsYBEwE5gFzAGmAX8lz9/AA0l7QnvcAGwvBd4E1gOTK/yxvQExZgDbbwHvAq9UEE1POSzpwzEB2D4KbG1TuD79G0nvdAxg+2egp0PxCBuS1NsRgG2PQbgeelbS0rYBbJ8DXisAuAdcB2Ykp7+M8ztJGyoD2H4J+AxYU7DqoKQP6j7b24AjJQQDknaUAtieDvQmz/KSxUYkNfltx07FjuVZv6RjhQC21wIHgHkV3vc2SZERTWb7d+CFHFevpKFcANvvA19UEK5PWSnphwKAS8DLGd8/wIuSbjcB2I4SubsN8Zj6iaSDBQB/AlMzvq8lvRdjTwEk5XSkTfHadEl5fyYOYRzGrC2TdOYpANvdwC+diKditgNXkxRcBSzLWe+CpFfr4w1q21eABZmAx8DFkrzvhHejpG/zAPqSbhaCtUfSv7YHgE87UcqJOSapPz1eqRDZ/h54Y4wQlyVls6H6fcD2r0BXpxB5h7QpC1otbjtq/ZRW8zL+nyS9XhTTqhR3SRpNB9u+k1y3qnAMS4qKWmhFlXAlsC/Z8lvAifodLlayPQysrkDQI6k0tfOKx0TgGjA3I7BO0sn6mO1DwEclED9KWtEKMg/gOLA5J/CupOczryN2aUlBneiTFGuVWrYUR6pFyhVZd86ZeARMyATcABZL+qMygO043eeBhQVBo5KiXDfM9iQgOlvWaq22lXj406X4c2BnQdDNaCqSTmUA4h2fzsRskfRlFfEGgO35QPTt53ICv0rEH2Z9tvcDu1LjtY+NquJpgLh8xCUkbb8B+9MnPwcgfUFttNhOANILxbfbIHBI0v2yxWx/DGwC3pYUpbptq52B5BYUPTryP2638fu/WKVu+F+SPAG7l/wh4NsJOQAAAABJRU5ErkJggg==";
		const currentHost = window.location.host;
		
		const quicklyInterfaceIndex = this.getQuicklyInterfaceIndex();
		var currentQuicklyInterfaceObject = null;
		
		var category_1_html = "";
		this.originalInterfaceList.forEach((item, index) => {
			if(item.showType != 2){
				var selected = ""
				if(index==quicklyInterfaceIndex){
					selected = "selected";
					currentQuicklyInterfaceObject =  item;
				}
				category_1_html += "<span title='"+item.name+"' data-index='"+index+"' class='"+selected+"'>" + item.name + "</span>";
			}
		});
		
		//获得自定义位置
		var left = 0;
		var top = 120;
		var Position = commonFunctionObject.GMgetValue("Position_" + currentHost);
		if(!!Position){
			left = Position.left;
			top = Position.top;
		}
		var color = "#FF4D40";
		var hoverColor = "#000000";
		if(currentHost.indexOf("bilibili.com")!=-1){ //自定义主题
			color = "#fb7299";
			hoverColor = "#00B0E1";
		}
		var cssMould = `#vip_movie_box`+this.elementId+`{cursor:pointer; position:fixed; top:` + top + `px; left:` + left + `px; width:0px; z-index:99999999; font-size:16px; text-align:left;}
						#vip_movie_box`+this.elementId+` .img_box`+this.elementId+`{width:24px; height:32px;line-height:32px;text-align:center;background-color:`+color+`;}
						#vip_movie_box`+this.elementId+` .img_box`+this.elementId+`:hover{
							background: linear-gradient(30deg, #2a66ff 40%, `+color+`);
						}
						#vip_movie_box`+this.elementId+` .img_box`+this.elementId+`>img {width:20px; display:inline-block; vertical-align:middle;}
						
						#vip_movie_box`+this.elementId+` .showhide_box`+this.elementId+`{display:none;padding-left:5px;position: absolute;left: 24px;top: 0;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii{width:380px; max-height:400px; overflow-y:auto;background-color:rgba(241,241,241);}
						#vip_movie_box`+this.elementId+` .default-scrollbar-55678::-webkit-scrollbar{width:5px; height:1px;}
						#vip_movie_box`+this.elementId+` .default-scrollbar-55678::-webkit-scrollbar-thumb{box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); background:#A8A8A8;}
						#vip_movie_box`+this.elementId+` .default-scrollbar-55678::-webkit-scrollbar-track{box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); background:#F1F1F1;}
						
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+`{margin-bottom:10px;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+`:last-child{margin-bottom:0px;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.title`+this.elementId+`{font-size:14px; text-align:left;color:#000000;font-weight:600;margin:5px 3px;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.interface_box`+this.elementId+`{}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.interface_box`+this.elementId+`>span{border-radius:3px;border-top:3px solid `+color+`; border-bottom:3px solid `+color+`;display:inline-block;width:calc(25% - 6px);width:-moz-calc(25% - 6px);width: -webkit-calc(25% - 6px);height:20px;line-height:20px;background-color:`+color+`;color:#FFF;cursor:pointer;margin:3px;text-align:center;overflow:hidden;white-space: nowrap;text-overflow: ellipsis;-o-text-overflow:ellipsis;font-size:12px!important;box-sizing:content-box!important;}							
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.interface_box`+this.elementId+`>span:hover{border-top:3px solid `+hoverColor+`; border-bottom:3px solid `+hoverColor+`;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.interface_box`+this.elementId+`>span.selected{border-top:3px solid `+hoverColor+`; border-bottom:3px solid `+hoverColor+`;}
						#vip_movie_box`+this.elementId+` .vip_mod_box_action_687ii> .item_box`+this.elementId+` >.content`+this.elementId+`{font-size:12px;color:#000000;margin-left:3px;}
						`
		commonFunctionObject.GMaddStyle(cssMould);
		
		//加入HTML
		var htmlMould = `<div id='vip_movie_box`+this.elementId+`'>
							<div class='plugin_inner_`+this.elementId+`'>
								<div class="img_box`+this.elementId+`" id="img_box_jump_6667897iio"><img src='`+ vipVideoImageBase64 +`' title='选择解析线路'/></div>
								<div class='showhide_box`+this.elementId+`'>									
									<div class='vip_mod_box_action_687ii default-scrollbar-55678'>
										<div class='item_box`+this.elementId+`'>
											<div class='title`+this.elementId+`'><b>接口添加</b></div>
											<div class='content`+this.elementId+`'>
												对现有接口不满意?可添加自定义接口哟~<span id="img_set_6667897iio" style="display:inline-block;border-radius:2px;margin-left:5px;padding:3px 5px;background-color:#CCC;cursor:pointer;">添加接口</span>
											</div>
											<div class='title`+this.elementId+`'>
												<a style="font-size:13px;color:blue;" href="javascript:void(0);" target="_blank">接口请自行添加~</a>
											</div>
										</div>
										<div class='item_box`+this.elementId+`' style='min-height:80px;border:1px dashed #000;'>
											<div class='interface_box`+this.elementId+`'>
												` + category_1_html + `
											</div>
										</div>
										<div class='item_box`+this.elementId+`' style="padding:10px 0px;">
											<div class='title`+this.elementId+`'><b>免责声明:</b></div>
											<div class='content`+this.elementId+`'>
												1、<b style='color:red;'>需要使用VIP视频解析的,请自行添加接口</b>,版权问题请联系相关解析接口所有者,脚本不承担相关责任!"<br>
												2、为创造良好的创作氛围,请大家支持正版!<br>
												3、脚本仅限个人学习交流,使用即已代表您已经充分了解相关问题,否则后果自负,特此声明!<br>
												** <b>脚本源码托管地址(含解析接口、使用教程):<a href="https://github.com/huahuacatTX/greasyfork" target="_blank" style="padding:0px 5px;color:red;">点我查看</a></b>
											</div>
										</div>
									</div>
								</div>
							</div>
							<div class="img_box`+this.elementId+`" id="img_quickly_6667897iio"><img src='`+quicklyBase64+`' title='快速开始(当前所选接口:`+(currentQuicklyInterfaceObject==null ? '无' : currentQuicklyInterfaceObject.name)+`)'/></div>
						</div>
						`;
		$("body").append(htmlMould);
	};
	this.runEvent = function(){	 //事件运行
		var that = this;
		$("#vip_movie_box"+this.elementId+" >.plugin_inner_"+this.elementId).on("mouseover", () => {
			$(".showhide_box"+this.elementId).show();
		});
		$("#vip_movie_box"+this.elementId+" >.plugin_inner_"+this.elementId).on("mouseout", () => {
			$(".showhide_box"+this.elementId).hide();
		});
		$("body").on("click","#vip_movie_box"+this.elementId+" .vip_mod_box_action_687ii>.item_box"+this.elementId+">.interface_box"+this.elementId+">span",function(){
			var index = parseInt($(this).attr("data-index"));
			var playObject = that.originalInterfaceList[index];
			that.showPlayerWindow(playObject);
			
			$("#vip_movie_box"+that.elementId+" .vip_mod_box_action_687ii> .item_box"+that.elementId+">.interface_box"+that.elementId+">span").removeClass("selected");
			$(this).addClass("selected");
			commonFunctionObject.GMsetValue(that.quicklyInterfaceKey, index);
			
			$("#img_quickly_6667897iio").find("img").attr("title","快速开始(当前所选接口:"+playObject.name+")");
		});
								
		//点击弹出设置框
		$("#img_set_6667897iio").on("click", function(){
			that.showSetingDialog();
		});
		
		$("#img_quickly_6667897iio").on("click", function(){
			const quicklyInterfaceIndex = that.getQuicklyInterfaceIndex();
			var playObject = that.originalInterfaceList[quicklyInterfaceIndex];
			that.showPlayerWindow(playObject);
		});
		
		//右键移动位置
		var movie_box = $("#vip_movie_box"+this.elementId);
		movie_box.mousedown(function(e) {
			if (e.which == 3) {
				e.preventDefault()
				movie_box.css("cursor", "move");
				var positionDiv = $(this).offset();
				var distenceX = e.pageX - positionDiv.left;
				var distenceY = e.pageY - positionDiv.top;
				
				$(document).mousemove(function(e) {
					var x = e.pageX - distenceX;
					var y = e.pageY - distenceY;
					var windowWidth = $(window).width();
					var windowHeight = $(window).height();
					
					if (x < 0) {
						x = 0;
					} else if (x >  windowWidth- movie_box.outerWidth(true) - 100) {
						x = windowWidth - movie_box.outerWidth(true) - 100;
					}
					
					if (y < 0) {
						y = 0;
					} else if (y > windowHeight - movie_box.outerHeight(true)) {
						y = windowHeight - movie_box.outerHeight(true);
					}
					movie_box.css("left", x);
					movie_box.css("top", y);
					commonFunctionObject.GMsetValue("Position_" + window.location.host,{ "left":x, "top":y});
				});
				$(document).mouseup(function() {
					$(document).off('mousemove');
					movie_box.css("cursor", "pointer");
				});
				$(document).contextmenu(function(e) {
					e.preventDefault();
				})
			}
		});
	};
	this.removeVideoAdBlock_iqiyi = function(){
		
	},
	this.removeVideoAdBlock_vqq = function(){
 
	},
	this.removeVideoAdBlock_youku = function(){
		
	},
	this.removeVideoAdBlock_mgtv = function(){
		
	},
	this.removeVideoAdBlock_sohu = function(){
		
	},
	this.removeVideoAdBlock = function(){
		const currentHost = window.location.host;
		if(currentHost.indexOf("www.iqiyi.com")!=-1){
			this.removeVideoAdBlock_iqiyi();
		}else if(currentHost.indexOf("v.qq.com")!=-1){
			this.removeVideoAdBlock_vqq();
		}else if(currentHost.indexOf("v.youku.com")!=-1){
			this.removeVideoAdBlock_youku();
		}else if(currentHost.indexOf("www.mgtv.com")!=-1){
			this.removeVideoAdBlock_mgtv();
		}else if(currentHost.indexOf("tv.sohu.com")!=-1){
			this.removeVideoAdBlock_sohu();
		}
	};
	this.showSetingDialog = function(){
		const that = this;
		var customInterfaceKey = that.customInterfaceKey;
		var customInterface = commonFunctionObject.GMgetValue(customInterfaceKey, "");
		
		var content = `
			<div>
				<div style="font-size:14px;font-weight:700;color:#000;">自定义解析接口</div>
				<div style="font-size:13px;color:red;">					
					数据格式:[名字] + [,] + [接口地址]<br>
					例如:就是名字而已,https://xxxxxx?url=<br>
					注:一行一个
				</div>
				<div style="margin-top:5px;height:200px;width:100%;">
					<textarea 
						placeholder="请严格按照格式填写,否则不生效"
						class="custom-interface-textarea"
						style="color:#000;font-size:14px;box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;padding:5px;height:100%;width:100%;Overflow:auto;border:1px solid #ccc;resize:none;background-color:#FFF;outline:none;">`+customInterface+`</textarea>
				</div>
				<div style="text-align:center;margin-top:15px;">
					<button class="save-custom-interface-btn" style="color:#000;cursor:pointer;">保存自定义接口</button>
				</div>
			</div>
		`;
		popup.dialog({
			"title":"解析接口添加",
			"content":content,
			"onContentReady":function($that){
				var $saveCustomInterfaceBtn = $that.dialogContent.querySelector(".save-custom-interface-btn");
				$saveCustomInterfaceBtn.addEventListener("click", function(){
					var $customInterfaceTextarea = $that.dialogContent.querySelector(".custom-interface-textarea");
					var content = $customInterfaceTextarea.value;
					commonFunctionObject.GMsetValue(customInterfaceKey, content);
					commonFunctionObject.webToast({"message":"自定义接口保存成功", "background":"#FF4D40"});
				});
			}
		})
	}
	this.start = function(){			
		let delayTimeMs = 0;
		if(window.location.host.indexOf("www.bilibili.com")!=-1){
			delayTimeMs = 2200;
		}
		setTimeout(()=>{
			try{
				this.removeVideoAdBlock();
			}catch(e){}
			try{
				this.analysisCustomInterface();
				this.addHtmlElements();
				this.runEvent();
			}catch(e){}
		}, delayTimeMs);
	};
};
 
/**
 * 移动端VIP解析
 * @param {Object} originalInterfaceList
 */
function SuperVideoHelperMobile(originalInterfaceList){
	this.originalInterfaceList = originalInterfaceList;
	this.elementId = Math.ceil(Math.random()*100000000)+"mmx";
	this.quicklyInterfaceKey = "custom_mobile_quickly_interface_key_dddsdxxa";
	this.defaultQuicklyInterfaceIndex = 2;
	this.playerNodes=[
		{"url":"m.iqiyi.com", "showNode":".m-video-player-wrap", "color":"#05B03B"},
		{"url":"m.v.qq.com", "showNode":".mod_player", "color":"#F99D39"},
		{"url":"m.youku.com", "showNode":".h5-detail-player", "color":"#08BAFD"},
		{"url":"m.mgtv.com", "showNode":".video-area", "color":"#E95904"}
	];
	this.isRun = function(){ //判断是否运行
		const host = window.location.host;
		const urls = ["m.iqiyi.com","m.v.qq.com","m.youku.com", "m.mgtv.com", "m.bilibili.com"];
		var result = false;
		if(host.startsWith("m.")){ //是移动端执行
			for(var i=0; i<urls.length; i++){
				if(host.indexOf(urls[i]) != -1){
					result = true;
					break;
				}
			}
		}
		return result;
	};
	this.getwindowElement = function(){
		var nodeObject = null;
		for(var i in this.playerNodes) { //获得窗口ID
			if (this.playerNodes[i].url == window.location.host) {
				nodeObject = this.playerNodes[i];
				break;
			}
		}
		return nodeObject;
	};
	this.getQuicklyInterfaceIndex = function(){
		var quicklyInterfaceIndexString = commonFunctionObject.GMgetValue(this.quicklyInterfaceKey,"")+"";
		var quicklyInterfaceIndex = this.defaultQuicklyInterfaceIndex;
		if(!!quicklyInterfaceIndexString){
			quicklyInterfaceIndex = parseInt(quicklyInterfaceIndexString);
		}
		if(this.originalInterfaceList.length-1<quicklyInterfaceIndex){
			quicklyInterfaceIndex = this.defaultQuicklyInterfaceIndex;
		}
		return quicklyInterfaceIndex;
	};
	this.addHtmlElements = function(){
		let nodeObject = this.getwindowElement();
		const quicklyInterfaceIndex = this.getQuicklyInterfaceIndex();
		if(!nodeObject) return;
		return new Promise((resolve, reject)=>{
			const elementInterval = setInterval(()=>{
				const nodeElementObject = $(nodeObject.showNode), themeColor = nodeObject.color;
				
				if(nodeElementObject.length == 0) return;
				clearInterval(elementInterval);
									
				//添加HTML
				let category_1_html = "";
				this.originalInterfaceList.forEach((item, index) => {
					if (item.showType != 1) {
						var selected = "";
						if(index==quicklyInterfaceIndex){
							selected = "selected";
						}
						category_1_html += "<option value='"+item.url+"' index='"+index+"' "+selected+">"+item.name+"</option>";
					}
				});
				var htmlMould = `
					<div style="margin:15px 15px 50px 15px;padding:10px;background-color:`+themeColor+`;border-radius:4px;cursor:pointer;z-index: 999999999999999999999;color:#FFF;">
							<div style="font-weight:700;font-size:14px;text-align:center;">
								<span>选择解析接口</span>
								<select id="interface_selection_`+this.elementId+`" style="background-color:#FFF;padding: 0px 10px;">
									`+category_1_html+`
								</select>
							</div>
							<div style="text-align:center;">
								<a href="javascript:void(0);" id="start_analysis_outer_`+this.elementId+`" style="box-sizing:border-box;margin:10px 0px;display:inline-block;padding:10px 0px;width:100%;border-radius:4px;color:#FFF;background-color:#F2503F;font-size:14px;">站外解析</a>
							</div>
							<div style="text-align:left;font-size:10px;">
								<div>
									免责申明:1、VIP视频解析中所用到的解析接口全部收集自互联网(源码可见),版权问题请联系相关解析接口所有者!
									2、为创造良好的创作氛围,请大家支持正版!
									3、脚本仅限个人学习交流,切勿用于任何商业等其它用途!
									4、继续使用,即表明你已经明确使用脚本可能带来的风险,且愿意自行承担相关风险,对于风险脚本不承担任何责任!
									** <b>脚本源码托管地址(含解析接口、使用教程):<a href="https://github.com/huahuacatTX/greasyfork" target="_blank" style="padding:0px 5px;color:red;">点我查看</a></b>
								</div>
							</div>
					</div>
				`;
				nodeElementObject.after(htmlMould);
				resolve("ok");
			}, 100);
		});
	};
	this.getPlayObjectBySelect = function(){
		
		var indexString = $("#interface_selection_"+this.elementId).find("option:selected").attr("index");
		var index = 0;
		if(!!indexString){
			index = parseInt(indexString);
		}
		return this.originalInterfaceList[index];
	};
	this.runEvent = function(){	 //事件运行
		const self = this;
 
		//初始化
		var playObject = self.getPlayObjectBySelect();
		$('#start_analysis_outer_'+self.elementId).attr("href", playObject.url + window.location.href);
		$('#start_analysis_outer_'+self.elementId).on('click', function (e) {
			if(commonFunctionObject.GMgetValue("copyright_video_remind_mobile_outer",null)==="true"){
				
			}else{
				var r=confirm(
					"脚本运行提醒!!!\u000d"+
					"使用站外解析功能,视频解析时脚本跳出本页面,如不同意此脚本行为,请点击【取消】按钮!!"
				);
				if(r==false){
					e.preventDefault();
				}else{
					commonFunctionObject.GMsetValue("copyright_video_remind_mobile_outer","true");
				}
			}
		});
		//接口切换
		$('#interface_selection_'+self.elementId).on('change', function () {
			var $option = $(this).find("option:selected");
			var value = $option.val();
			var index = parseInt($option.attr("index"));
			$('#start_analysis_outer_'+self.elementId).attr("href", value+window.location.href);
			commonFunctionObject.GMsetValue(self.quicklyInterfaceKey, index);
		});
	};
	this.start = function(){
		const self = this;
		if(this.isRun()){
			this.addHtmlElements().then(()=>{
				self.runEvent();
			});
		}
	}
}
try{
	let newOriginalInterfaceList = originalInterfaceList;
	if(!functionController || functionController.superVideoHelper){
		const superVideoHelperObject = new SuperVideoHelper(newOriginalInterfaceList);
		if(superVideoHelperObject.isRun()){
			if(commonFunctionObject.GMgetValue("copyright_video_remind",null)==="true"){
				superVideoHelperObject.start();
			}else{
				var r=confirm(
					"脚本运行提醒!!!\u000d"+
					"1、VIP视频解析中所用到的解析接口全部收集自互联网(源码可见),版权问题请联系相关解析接口所有者!\u000d"+
					"2、为创造良好的创作氛围,请大家支持正版!\u000d"+
					"3、脚本仅限个人学习交流,切勿用于任何商业等其它用途!\u000d"+
					"4、继续使用,即表明你已经明确使用脚本可能带来的风险,且愿意自行承担相关风险,对于风险脚本不承担任何责任!\u000d"+
					"5、此提醒只弹出一次,确认后,后续将不在弹出,请知悉!"
				);
				if(r==true){
					commonFunctionObject.GMsetValue("copyright_video_remind","true");
					superVideoHelperObject.start();
				}
			}
		}
		(new SuperVideoHelperMobile(newOriginalInterfaceList)).start();
	}
}catch(e){
	console.log("全网VIP解析:error:"+e);
}
	
	/**
 * B站相关功能:视频多P下载,一键三联,浏览记录等
 */
function BilibiliHelper(){
	
	this.isRun = function(){
		return window.location.host.indexOf("bilibili.com") != -1
	}
	this.baseFunction = function(){
		/**
		 * b站基本功能,一件三连、视频解析、视频下载
		 */ 
		function baseFunctionObject(){
			this.elementId = Math.ceil(Math.random()*100000000)+"mmx";
			this.downloadSettingKey = "download_setting_key";
			this.downloadResutError=function(btnElement){
				btnElement.text("下载视频");
				btnElement.removeAttr("disabled");
			};
			this.downloadResutSuccess=function(btnElement){
				btnElement.text("下载视频");
				btnElement.removeAttr("disabled");
			};
			this.getDownloadPages = function(){
				return new Promise(function(resolve, reject) {
					var pathname = window.location.pathname, bv = null;
					if (pathname.indexOf("/medialist/play/watchlater/") != -1) { // 在下载视频的时候针对稍后再看页面的链接找BV号
						bv = pathname.replace("/medialist/play/watchlater/","").replace("/","");
					}else{
						bv = pathname.replace("/video/","").replace("/","");
					}
					if(!bv){
						resolve({"status":"bv_null"});
						return;
					}
					//bv转av
					commonFunctionObject.request("get", "https://api.bilibili.com/x/web-interface/view?bvid="+bv, null).then((resultData)=>{
						let dataJson = JSON.parse(resultData.data);
						if(!dataJson || dataJson.code!==0 || !dataJson.data){
							resolve({"status":"request_error"});
							return;
						}
						
						let data = dataJson.data;
						if(!data){
							resolve({"status":"aid_null"});
							return;
						}
						
						let aid = data.aid;
						let pic = data.pic;
						let title = data.title
						if(!aid){
							resolve({"status":"aid_null"});
							return;
						}
						
						//获取cid
						commonFunctionObject.request("get", "https://api.bilibili.com/x/web-interface/view?aid="+aid, null).then((resultData2)=>{
							let dataJson2 = JSON.parse(resultData2.data);
							if(!dataJson2 || dataJson2.code!==0 || !dataJson2.data){
								resolve({"status":"request_error"});
								return;
							}
							const downloadData = dataJson2.data;
							const {aid,  bvid} = downloadData,
								items = new Array();
							//这是下载集合
							if(downloadData.hasOwnProperty("ugc_season") && downloadData.ugc_season.hasOwnProperty("sections")){
								let sections = downloadData.ugc_season.sections;
								let page = 1;
								for(var i=0; i<sections.length; i++){
									let section = sections[i];
									if(section.hasOwnProperty("episodes")){
										for(var j=0; j<section.episodes.length; j++){
											let episode = section.episodes[j];
											items.push({
												"cover":"",
												"page":page,
												"title":episode.title,
												"cid":episode.cid,
												"aid":episode.aid
											});
											page++;
										}
									}
								}
							}else{ //这是多P下载
								for(var i=0; i<downloadData.pages.length; i++){
									let pageData = downloadData.pages[i];
									items.push({
										"cover":pageData.first_frame,
										"page":pageData.page,
										"title":pageData.part,
										"cid":pageData.cid,
										"aid":aid
									});
								}
							}
							resolve({"status":"success", "downloadData":{
								"items":items,
								"pic":pic,
								"title":title
							}});
						}).catch((errorData)=>{
							resolve({"status":"request_error"});
						});
					}).catch((errorData)=>{
						resolve({"status":"request_error"});
					});
				});
			};
			this.startDownloadFile = function(options){
				let aid = options.aid, cid = options.cid, fileName = options.fileName, 
					savePath = options.savePath, RPCURL = options.RPCURL, RPCToken = options.RPCToken;
				let isByPRC = options.isByPRC;
				
				commonFunctionObject.request("get", "https://api.bilibili.com/x/player/playurl?avid="+aid+"&cid="+cid+"&qn=112", null).then((resultData3)=>{
					
					if(!fileName){
						fileName = (new Date()).getTime() + "";
					}
					fileName = fileName.replace(/[\ |\~|\`|\=|\||\\|\;|\:|\"|\'|\,|\.|\>|\/]/g,"");
					fileName = fileName.substring(0,50); //可能有异常,标题最多50字符
					fileName = fileName + ".mp4";
					
					let dataJson3 = JSON.parse(resultData3.data);
					if(!!dataJson3 && dataJson3.code===0 && !!dataJson3.data){
						let downloadUrl = dataJson3.data.durl[0].url;
						if(isByPRC){
							commonFunctionObject.RPCDownloadFile(fileName, downloadUrl, savePath, RPCURL).then((data)=>{
								commonFunctionObject.webToast({"message":data, "time":3000});
							}).catch((data)=>{
								commonFunctionObject.webToast({"message":data, "time":3000});
							});
						}else{
							window.open(downloadUrl);
						}
					}else{
						commonFunctionObject.webToast({"message":"获取下载链接失败", "background":"#FF4D40"});
					}
				}).catch((errorData)=>{
					commonFunctionObject.webToast({"message":"获取下载链接失败", "background":"#FF4D40"});
				});
			};
			this.createModals = function(){
				var css = `
					.modal-mask-`+this.elementId+`{
						position:fixed;
						top:0;
						left:0;
						z-index:999;
						width:100%;
						height:100%;
						display:none;
						background-color:#000;
						opacity:0.3;
						overflow:hidden;
					}
					.modal-body-`+this.elementId+`{
						position:fixed;
						border-radius:5px;
						background-color: #FFFFFF;
						top:10%;
						width:600px;
						max-width:90%;
						max-height:80%;
						z-index:1000;
						left: 50%;
						transform: translateX(-50%);
						display:none;
						padding: 10px;
						overflow-y: auto;
					}
					.modal-body-`+this.elementId+` >.page-header{
						height:30px;
						line-height:30px;
						position:relative;
					}
					.modal-body-`+this.elementId+` >.page-header >span{
						display:inline-block;
					}
					.modal-body-`+this.elementId+` >.page-header >span:nth-child(1) {
						font-size:18px;
						font-weight:bold;
						position:absolute;
						left:10px;
					}
					.modal-body-`+this.elementId+` >.page-header >span:nth-child(2) {
						font-size:28px;
						font-weight:bold;
						position:absolute;
						right:10px;
						cursor:pointer;
					}
					.modal-body-`+this.elementId+` >.page-container{
						max-height: 500px;
						overflow-y: auto;
					}
					.modal-body-`+this.elementId+` .page-wrap{
						display: flex;
						flex-wrap: wrap;
						margin-top:5px;
					}
					.modal-body-`+this.elementId+` .page-wrap >.board-item{
						display: block;
						width: calc(50% - 10px);
						background-color: #6A5F60;
						margin: 5px;
						background-color:#FB7299;
						color:#FFFFFF;
						cursor: pointer;
						overflow:hidden;
						white-space:nowrap;
						text-overflow:ellipsis;
					}
					.modal-body-`+this.elementId+` .page-wrap >.board-item >input{
						width: 14px;
						height: 14px;
						vertical-align: middle;
						margin-right:5px;
					}
					.modal-body-`+this.elementId+` .page-wrap >.board-item >span{
						vertical-align: middle;
					}
					.modal-body-`+this.elementId+` .modal-btn-wrap{
						text-align: center;
						margin-top: 10px;
						cursor: pointer;
					}
					.modal-body-`+this.elementId+` .aria2-setting{
						border:1px dashed #F1F1F1;
						border-radius:4px;
						margin-top:10px;
					}
					.modal-body-`+this.elementId+` .aria2-setting >.setting-item{
						text-align: center;
						font-size:14px;
						margin:10px 0px;
					}
					.modal-body-`+this.elementId+` .aria2-setting >.setting-item .topic-name{
						display:inline-block;
						width:80px;
						text-align:left;
					}
					.modal-body-`+this.elementId+` .aria2-setting >.setting-item> input{
						width:300px;
						padding-left:10px;
						border:1px solid #888;
						outline:none;
						border-radius:3px;
					}
					.modal-body-`+this.elementId+` .modal-btn-wrap >span{
						border:1px solid #ccc;
						display:inline-block;
						padding:3px 5px;
						margin:0px 5px;
						border-radius:3px;
					}
					.modal-body-`+this.elementId+` .tip-wrap{
						margin-top: 10px;
						font-size:12px;
					}
					.modal-body-`+this.elementId+` .tip-wrap >.title{
						font-size:16px;
						font-weight:bold;
					}
					.modal-body-`+this.elementId+` .tip-wrap >.content >ul >li{
						margin-top:5px;
					}
				`;
									
				var html = `
					<div class='modal-mask-`+this.elementId+`'></div>
					<div class='modal-body-`+this.elementId+`'>
						<div class="page-header">
							<span>视频下载(可批量)</span>
							<span class="close">×</span>
						</div>
						<div class="page-container">
							<label style="color:red;">注:此功能会调用bilibili的API,脚本仅用于个人交流,切勿用于商业用途,否则后果自负,特此申明!</label>
							<div class="page-wrap">
							</div>
							<div class="aria2-setting">
								<div class="setting-item">
									<span><input type="radio" name="downloadWay" value="Motrix">Motrix下载</span>&nbsp;&nbsp;&nbsp;
									<span><input type="radio" name="downloadWay" value="AriaNgGUI">AriaNgGUI下载</span>
								</div>
								<div class="setting-item">
									<label class="topic-name">配置RPC:</label><input type="text" name="RPCURL" value="" placeholder="请准确输入RPC对应软件的地址,默认:Motrix">
								</div>
								<div class="setting-item">
									<label class="topic-name">配置Token:</label><input type="text" name="RPCToken" value="" placeholder="默认无需填写">
								</div>
								<div class="setting-item">
									<label class="topic-name">保存路径:</label><input type="text" name="savePath" value="" placeholder="请准确输入文件保存路径">
									<div style="font-size:12px;color:#888;">最好自定义下载地址,默认地址可能不满足需要</div>
								</div>
							</div>
							<div class="modal-btn-wrap">
								<span name="selectall">全选</span>
								<span name="removeSelect">取消选择</span>
								<span name="downloadAll">批量下载</span>
							</div>
							<div class="tip-wrap">
								<div class="title">关于单P下载:</div>
								<div class="content"><span>点击弹框单个选集,即可下载单集视频!PS:单P下载,推荐大家使用BBDown下载,此工具功能很强大,具体查看:<a target="_blank" href="https://github.com/nilaoda/BBDown">https://github.com/nilaoda/BBDown</a></span></div>
							</div>
							<div class="tip-wrap">
								<div class="title">关于批量下载:</div>
								<div class="content">
									<ul>
										<li>
											<b>1、批量下载需要第三方软件的支持,脚本推荐使用:Motrix</b>
											<ul>
												<li>Motrix下载地址:<a href="https://motrix.app/zh-CN/" target="_blank">https://motrix.app/zh-CN/</a></li>
												<li>AriaNgGUI下载地址:<a href="https://github.com/Xmader/aria-ng-gui" target="_blank">https://github.com/Xmader/aria-ng-gui</a></li>
											</ul>
										</li>
										<li>
											<b>2、在批量下载前需要提前打开软件,本教程以Motrix为准</b>
											<ul>
												<li>(1)、如果全部按照默认配置,只需要打开软件即可</li>
												<li>(2)、如果想自定义RPC地址和文件保存路径,可更改上面输入框的内容(此数据非常重要,请准确填写)</li>
												<li>
												(3)、Motrix运行图片
												<img src="https://pic.rmb.bdstatic.com/bjh/8912582c0416119405ec37ea27d12376.jpeg" width="100%" />
												</li>
											</ui>
										</li>
										<li>
											<b>3、默认RPC默认地址</b>
											<ul>
												<li>(1)、Motrix RPC默认地址:ws://localhost:16800/jsonrpc</li>
												<li>(2)、Aria2 RPC默认地址:ws://localhost:6800/jsonrpc</li>
												<li>(3)点击“批量下载会自动保存当前下载设置”</li>
											</ul>
										</li>
										<li>
											<b>4、如使用AriaNgGUI,使用方式类似,大家可以自行研究</b>
										</li>
									</ul>
								</div>
							</div>
							<div class="tip-wrap">
								<div class="title">必要说明:</div>
								<div class="content">
									申明:本功能仅能作为学习交流使用,且不可用于其它用途,否则后果自负。请大家重视版权,尊重创作者,切勿搬运抄袭。请大家多用[一键三连]为创作者投币~,小破站牛掰!
								</div>
							</div>
						</div>
					</div>
				`;
				commonFunctionObject.GMaddStyle(css);
				$("body").append(html);
			};
			this.hideModals = function(){
				$(".modal-body-"+this.elementId+"").css('display','none');
				$(".modal-mask-"+this.elementId+"").css('display','none');
			};
			this.showModals = function(pageHtml){
				const self = this;
				const downloadSettingKey = self.downloadSettingKey;
				$(".modal-body-"+self.elementId+"").css('display','block');
				$(".modal-mask-"+self.elementId+"").css('display','block');
				$(".modal-body-"+self.elementId+" .page-wrap").html(pageHtml);
				
				//初始化设置的数据
				var savePath = "D:/";
				if("macOS"===commonFunctionObject.getSystemOS()){
					savePath = ""
				}
				const downloadSetting = commonFunctionObject.GMgetValue(this.downloadSettingKey, 
					{"RPCURL":"ws://localhost:16800/jsonrpc", 
					"savePath":savePath,
					"RPCToken":'', "downloadWay":"Motrix"});
				const isMotrix = downloadSetting.downloadWay=="Motrix";
				$(".modal-body-"+self.elementId+" input[name='RPCURL']").val(downloadSetting.RPCURL);
				$(".modal-body-"+self.elementId+" input[name='savePath']").val(downloadSetting.savePath);
				$(".modal-body-"+self.elementId+" input[name='RPCToken']").val(downloadSetting.RPCToken);
				$(".modal-body-"+self.elementId+" input[name='downloadWay']").removeAttr("checked");
				if(isMotrix){
					$(".modal-body-"+self.elementId+" input:radio[value='Motrix']").attr('checked','true');
				}else{
					$(".modal-body-"+self.elementId+" input:radio[value='AriaNgGUI']").attr('checked','true');
				}
				
				$(".modal-body-"+self.elementId+" .page-wrap >.board-item >span").off("click").on("click", function(){
					$(this).css("background-color","#ccc");
					let downloadOptions={
						"aid":$(this).data("aid"),
						"cid":$(this).data("cid"),
						"isByPRC":false
					}
					self.startDownloadFile(downloadOptions);
				});
				$(".modal-body-"+self.elementId+" .page-header >span.close").off("click").on("click", function(){
					self.hideModals();
				});
				$(".modal-body-"+self.elementId+" .modal-btn-wrap >span[name='selectall']").off("click").on("click", function(){
					$(".modal-body-"+self.elementId+" .page-wrap").find("input[type='checkbox']").each(function(){
						$(this).prop('checked', true);
					});
				});
				$(".modal-body-"+self.elementId+" input[name='downloadWay']").off("change").on("change", function(){
					if($(this).val()=="Motrix"){
						$(".modal-body-"+self.elementId+" input[name='RPCURL']").val("ws://localhost:16800/jsonrpc");
					}else{
						$(".modal-body-"+self.elementId+" input[name='RPCURL']").val("ws://localhost:6800/jsonrpc");
					}
				});
				$(".modal-body-"+self.elementId+" .modal-btn-wrap >span[name='removeSelect']").off("click").on("click", function(){
					$(".modal-body-"+self.elementId+" .page-wrap").find("input[type='checkbox']").each(function(){
						$(this).prop('checked', false);
					});
				});
				$(".modal-body-"+self.elementId+" .modal-btn-wrap >span[name='downloadAll']").off("click").on("click", function(){
					let RPCURL = $(".modal-body-"+self.elementId+" input[name='RPCURL']").val();
					let savePath = $(".modal-body-"+self.elementId+" input[name='savePath']").val();
					let RPCToken = $(".modal-body-"+self.elementId+" input[name='RPCToken']").val();
					let downloadWay = $(".modal-body-"+self.elementId+" input[name='downloadWay']:checked").val();
					commonFunctionObject.GMsetValue(downloadSettingKey,{"RPCURL":RPCURL, "savePath":savePath, 
						"RPCToken":RPCToken, "downloadWay":downloadWay});
						
					let inputElements = $(".modal-body-"+self.elementId+" .page-wrap input[type='checkbox']:checked");
					if(inputElements.length == 0){
						commonFunctionObject.webToast({"message":"至少需要选中1P", "background":"#FF4D40"});
						return;
					}
											
					if(!savePath){
						commonFunctionObject.webToast({"message":"保存路径不能为空", "background":"#FF4D40"});
						return;
					}
					if(!RPCURL){
						commonFunctionObject.webToast({"message":"PRC地址不能为空", "background":"#FF4D40"});
						return;
					}
					RPCToken = !RPCToken ? "" : RPCToken;
					let downloadOptions = {
						"aid":"",
						"cid":"",
						"isByPRC":true,
						"fileName":"",
						"savePath":savePath,
						"RPCURL":RPCURL,
						"RPCToken":RPCToken
					}
					inputElements.each(function(){
						setTimeout(()=>{
							let aid=$(this).data("aid"), cid = $(this).data("cid"), fileName = $(this).attr("title");
							downloadOptions.aid = aid;
							downloadOptions.cid = cid;
							downloadOptions.fileName = fileName;
							self.startDownloadFile(downloadOptions);
						}, 1000);
					})
				});
			};
			this.createElementHtml = async function(){
				$("#bilibili_exti_9787fjfh12j").remove();
				
				const randomNumber = this.elementId, self = this;
				let cssText = `
					#bilibili_exti_9787fjfh12j{
						position:fixed;
						left:-30px;
						top:250px;
						opacity:0.6;
						transition: 0.3s;
					}
					#bilibili_exti_9787fjfh12j >.self_s_btn{
						background-color:#FB7299;
						color:#FFF;
						font-size:10px;
						border-radius:3px;
						cursor:pointer;
						margin:10px 0px;
						width:60px;
						height:20px;
						text-align:center;
						line-height:20px;
					}
				`;
				let htmlText=`
					<div id="bilibili_exti_9787fjfh12j">
						<div class="self_s_btn" id="pro_s_`+randomNumber+`">Pro版本托管</div>
						<div class="self_s_btn" id="download_s_`+randomNumber+`">下载视频</div>
						<div class="self_s_btn" id="focus_s_`+randomNumber+`">一键三连</div>
					</div>
				`;
				
				//添加下载等操作按钮
				commonFunctionObject.GMaddStyle(cssText);
				$("body").append(htmlText);
								
				//创建弹框
				this.createModals();
				
				//移入移除操作
				$("#bilibili_exti_9787fjfh12j").hover(function(){
					$(this).css({
						"left":"0px", "opacity":1
					});
				},function(){
					$(this).css({
						"left":(0-$(this).width())/2+"px", "opacity":0.6
					});
				});
				
				//下载操作函数
				$("body").on("click", "#download_s_"+randomNumber, function(){
					const btnElement = $(this);
					btnElement.attr("disabled", "disabled");
					btnElement.text("准备中~");
					//开始准备下载数据
					self.getDownloadPages().then((resule)=>{
						if(resule.status==="success"){
							const {items, pic, title} = resule.downloadData;
							let itemHtml = "";
							itemHtml += "<div style='width:100%;'><a href='"+pic+"' target='_blank'>标题:"+title+"(点我跳转封面)</a></div>";
							for(var i=0; i<items.length; i++){
								var currentTitle = "【P"+items[i].page+"】"+items[i].title+"";
								itemHtml += "<div class='board-item'>";
								itemHtml += "<input data-aid='"+items[i].aid+"' data-cid='"+items[i].cid+"' title='"+currentTitle+"' type='checkbox'>"
								itemHtml += "<span data-aid='"+items[i].aid+"' data-cid='"+items[i].cid+"' title='"+currentTitle+"'>"+currentTitle+"</span>";
								itemHtml += "</div>";
							}
							self.showModals(itemHtml);
							self.downloadResutSuccess(btnElement);
						}else{
							self.downloadResutError(btnElement);
						}
					}).catch((error)=>{
						self.downloadResutError(btnElement);
					});
				});
				$("body").on("click", "#focus_s_"+randomNumber, function(){
					$("#arc_toolbar_report .video-like").click(); // 点赞
					$("#arc_toolbar_report .video-coin").click(); // 投币
					// $("#arc_toolbar_report .video-fav").click(); // 收藏
				});
				$("body").on("click","#pro_s_"+randomNumber, function(){
					commonFunctionObject.GMopenInTab("https://github.com/huahuacatTX/greasyfork");
				});
			}
			this.start = function(){
				let locationHost = window.location.host, locationPathname = window.location.pathname;
				if(locationHost==="www.bilibili.com" && (locationPathname.indexOf("/video")!=-1 || locationPathname.indexOf("/watchlater")!=-1)){
					this.createElementHtml();
				}
			}
		}
		try{
			(new baseFunctionObject()).start();
		}catch(e){
			console.log("baseFunctionObject new error", e);
		}
	};
	/**
	 * 浏览历史记录提醒
	 */
	this.recordViewFunction = function(){
		function recordViewObject(){
			this.localCacheName = "bilibili_video_record"; 
			this.recordOneVideo = function(){
				let promise = new Promise((resolve, reject)=>{
					let bv = commonFunctionObject.getBilibiliBV();
					let cacheText = commonFunctionObject.GMgetValue(this.localCacheName);
					cacheText = !cacheText ? "" : cacheText
					let maxLength = 12*500;
					let currentLength = cacheText.length;
					if(currentLength > maxLength){
						cacheText = cacheText.substring(12*100, currentLength);
					}
					
					if(cacheText.indexOf(bv)==-1){
						cacheText += bv;
						commonFunctionObject.GMsetValue(this.localCacheName, cacheText);
					}
					resolve({"result":"success"});
				});
			};
			this.searchPageRemindHtml = function($ele, top=8, right=8){
				if($ele.find("div[name='marklooked']").length==0){						
					$ele.css("position","relative");
					$ele.append("<div name='marklooked' style='z-index: 100;position:absolute; top:"+top+"px; right:"+right+"px; background-color: rgba(251,123,159,1); border-radius:3px; font-size:10px; color:#FFF;padding:0px 2px;'>已看</div>");
				}
			};
			this.searchPageRemind = function(){
				let $that = this;
				var elementArray = [
					{"node":".bili-video-card", "top":8, "right":12},  //兼容 MAC M1搜索结果
					{"node":"#page-index .small-item", "top":12, "right":12},  //用户投稿
					{"node":"#submit-video-list .small-item", "top":12, "right":12}, //用户主页
					{"node":"#page-series-detail .small-item.fakeDanmu-item", "top":12, "right":12}, //用户主页投稿
				];
				setInterval(function(){
					let cacheText = commonFunctionObject.GMgetValue($that.localCacheName);
					cacheText = !cacheText ? "" : cacheText;
					for(var i=0; i<elementArray.length; i++){
						var elementobj = elementArray[i];
						$(elementobj.node).each(function(){
							if($(this).attr("dealxll")!=="true"){
								var videourl = $(this).find("a[href^='//www.bilibili.com/video']").attr("href");
								if(!!videourl){
									var bvs = videourl.match(/(\/BV(.*?)\/)/g)
									if(bvs.length==1){
										var bv = bvs[0].replace(/\//g,"");
										if(cacheText.indexOf(bv) != -1){
											$that.searchPageRemindHtml($(this), elementobj.top, elementobj.right);
										}
										$(this).unbind("click").bind("click", ()=>{  //循环操作,单独绑定
											$that.searchPageRemindHtml($(this), elementobj.top, elementobj.right);
										})
									}
									$(this).attr("dealxll","true");
								}
							}
						});
					}
				}, 500);
			}
			this.start=function(){
				let $that = this;
				if(window.location.pathname.indexOf("/video")!=-1 && window.location.host==="www.bilibili.com"){
					let currentHref = "";
					setInterval(()=>{ //需要循环存储
						if(window.location.href !== currentHref){
							this.recordOneVideo();
							currentHref = window.location.href;
						}
					}, 500);
				}
				//搜索结果和用户主页已经看过的视频提醒
				if(window.location.host.indexOf("bilibili.com")!=-1){
					this.searchPageRemind();
					GM_registerMenuCommand("清空B站浏览记录",function(){
						if(confirm('是否要清空B站浏览记录?清空后将不可恢复...')){
							commonFunctionObject.GMsetValue($that.localCacheName, "");
						}
					});
				}
			};
		}
		try{
			(new recordViewObject()).start();
		}catch(e){
			console.log("recordViewObject new error", e);
		}
	};
	/**
	 * 视频描述文本转链接
	 */
	this.textToLinkFunction = function() {
		function textToLinkObject(){
			this.link = function(selector){
				const current_href = window.location.href;
				const textToLinkArea = document.querySelector(selector);
				
				if(!textToLinkArea){
					return;
				}
				findAndReplaceDOMText(textToLinkArea, {
					find: /(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?/g,
					replace: function (e, t) {
						let text = e.text;
						let element = null;
						if(text.indexOf("bilibili.com")==-1 && /^(http|ftp|https)/i.test(text)){
							element = document.createElement("a");
							element.setAttribute("href", text)
							element.setAttribute("target", "_blank");
							element.style.color="#00AEEC";
						}else{
							element = document.createElement("span");
						}
						element.innerText = text;
						return element;
					}, 
					preset: "prose"
				});
				
			}
			this.start = function(){
				const selector = "#v_desc";
				this.link(selector);
				
				const MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver
				const bodyMutationObserver = new MutationObserver(()=>{
					this.link(selector);
				});
				
				const element = document.querySelector(selector);
				if(element){
					bodyMutationObserver.observe(element, 
						{"characterData":true, "attributes":true, "childList":true},
					);
				}
			}
		}
		try{
			(new textToLinkObject()).start();
		}catch(e){
			console.log("textToLinkObject new error", e);
		}
	}
	this.signIn = async function(){ //签到下线,2024年7月2日
		
	}
	this.start = function(){
		if(this.isRun()){
			this.baseFunction();
			this.recordViewFunction();
			this.textToLinkFunction();
			this.signIn();
		}
	}
}
 
try{
	if(!functionController || functionController.bilibiliHelper){
		new BilibiliHelper().start();
	}
}catch(e){
	console.log("B站视频下载:error:"+e);
}
	/**
 * 知乎助手开始
 */
function ZhihuHelper(){
	this.markArticleOrQuestion = function(){
		var questionsCss = `
			.AnswerItem .ContentItem-title a::before {
				content: '问题';
				color: #f68b83;
				background-color: #f68b8333;
				font-weight: bold;
				font-size: 13px;
				padding: 1px 4px 0px;
				border-radius: 2px;
				display: inline-block;
				vertical-align: middle;
				margin: 0px 4px 0px 0px;
			}
			.ArticleItem .ContentItem-title a::before {
				content: '文章';
				color: #0066FF;
				background-color: #E5EFFF;
				font-weight: bold;
				font-size: 13px;
				padding: 1px 4px 0;
				border-radius: 2px;
				display: inline-block;
				vertical-align: middle;
				margin: 0px 4px 0px 0px;
			}
			.ZvideoItem .ContentItem-title a::before {
				content:'视频';
				color: #00BCD4;
				background-color: #00BCD433;
				font-weight: bold;
				font-size: 13px;
				padding: 1px 4px 0;
				border-radius: 2px;
				display: inline-block;
				vertical-align: middle;
				margin: 0px 4px 0px 0px;
			}
			.TopstoryItem--advertCard{
				text-decoration:line-through;
			}
		`;
		commonFunctionObject.GMaddStyle(questionsCss);
	}
	this.autoJumpTarget = function(){
		var regexResult = location.search.match(/target=(.+?)(&|$)/);
		if(regexResult && regexResult.length==3){
			location.href = decodeURIComponent(regexResult[1]);
		}
	};
	// 为问题本身添加时间
	this.addDateQuestion = function(){
		var title = document.querySelector(".QuestionPage");
		if(!!title){
			var dateCreated = title.querySelector("[itemprop~=dateCreated][content]").content;
			var dateModified = title.querySelector("[itemprop~=dateModified][content]").content;
			var createDate = commonFunctionObject.DateFormat(new Date(dateCreated), "yyyy-MM-dd hh:mm:ss");
			var editDate = commonFunctionObject.DateFormat(new Date(dateModified), "yyyy-MM-dd hh:mm:ss");
			
			var side = title.querySelector(".QuestionHeader-side");
			var timeDiv = document.createElement('div');
			timeDiv.innerHTML = `<p>创建于:&nbsp;${createDate}</p><p>编辑于:&nbsp;${editDate}</p>`;
			timeDiv.style.cssText = 'color:#6f6f6f;font-size:13px;';
			side.appendChild(timeDiv);
		}
	};
	// 为回答添加时间
	this.addTimeAnswerItems = function(){
		var list = document.querySelectorAll(".AnswerItem:not(div[zh_date_mk='true'])");
		var item = null;
		for (var i = 0; i < list.length; i++) {
			item = list[i];
			if (item.getAttribute('zh_date_mk') === 'true') {
				continue;
			}
			item.setAttribute("zh_date_mk", "true");
			try{					
				var dateCreated = item.querySelector("[itemprop~=dateCreated][content]").content;
				var dateModified = item.querySelector("[itemprop~=dateModified][content]").content;
				var createDate = commonFunctionObject.DateFormat(new Date(dateCreated), "yyyy-MM-dd hh:mm:ss");
				var editDate = commonFunctionObject.DateFormat(new Date(dateModified), "yyyy-MM-dd hh:mm:ss");
					 
				var sideItem = item.querySelector(".ContentItem-meta");
				var timeDiv = document.createElement('div');
				timeDiv.innerHTML = `创建于:&nbsp;${createDate}&nbsp;&nbsp;&nbsp;修改于:&nbsp;${editDate}`;
				timeDiv.class = "Voters";
				timeDiv.style.cssText = 'color:#6f6f6f;font-size:13px;display:block;padding:5px 0px;';
				sideItem.appendChild(timeDiv);
			}catch(e){}
		}
		return true;
	};
	// 提问者标识出来
	this.showQuestionAuthor = function(){
		//此处代码借鉴自 - 知乎增强
		//原作者:X.I.U
		//https://greasyfork.org/zh-CN/scripts/419081-%E7%9F%A5%E4%B9%8E%E5%A2%9E%E5%BC%BA
		if (document.querySelector('.BrandQuestionSymbol, .QuestionAuthor')) return
		let qJson = JSON.parse(document.querySelector('#js-initialData').textContent).initialState.entities.questions[/\d+/.exec(location.pathname)[0]].author,
			html = `<div class="BrandQuestionSymbol"><a class="BrandQuestionSymbol-brandLink" href="/people/${qJson.urlToken}"><img role="presentation" src="${qJson.avatarUrl}" class="BrandQuestionSymbol-logo" alt=""><span class="BrandQuestionSymbol-name">${qJson.name}</span></a><div class="BrandQuestionSymbol-divider" style="margin-left: 5px;margin-right: 10px;"></div></div>`;
		document.querySelector('.QuestionHeader-topics').insertAdjacentHTML('beforebegin', html);
	};
	this.startDealwithQuestion = function(){
		let isMarkComplete = true;
		setInterval(()=>{
			if(isMarkComplete){
				isMarkComplete = false;
				isMarkComplete = this.addTimeAnswerItems();
			}
		}, 2500);
		this.showQuestionAuthor();
		this.addDateQuestion();
	};
	this.downloadVideo = function(){
		let isMarkComplete = true;
		function addDownloadButton(){
			if(!isMarkComplete) return;
			isMarkComplete = false;
			
			var itemArray = document.querySelectorAll("._1tg8oir:not(span[zh_date_mk='true'])");
			var item = null;
			// console.log("知乎视频下载循坏监听次数:", itemArray.length);
			for(var i=0; i<itemArray.length; i++){
				item = itemArray[i];
				if (item.getAttribute('zh_date_mk') === 'true') {
					continue;
				}
				item.setAttribute("zh_date_mk", "true");
				
				if(item.innerText != "倍速"){
					continue;
				}
				
				var playButLi = item.parentNode.parentNode;
				var downloadBut = playButLi.cloneNode(true)
				if(!downloadBut.querySelector('._1tg8oir')) return;
				
				// 删除其它元素
				var downloadButChildren = downloadBut.children;
				for(var j=0; j<downloadButChildren.length; j++){
					if(downloadButChildren[j].nodeName !== "BUTTON"){
						downloadBut.removeChild(downloadButChildren[j]);
					}
				}
				
				downloadBut.setAttribute("zh_date_mk", "true");
				downloadBut.querySelector('._1tg8oir').innerText='下载';
				
				playButLi.before(downloadBut);
				downloadBut.addEventListener("click",function(){
					let href = window.location.href;
					let findClassName = ".ZVideoItem-video"; // 首页
					if(href.indexOf("www.zhihu.com/search")!=-1){ //搜索界面
						findClassName = ".List-item";
					}else if(href.indexOf("www.zhihu.com/zvideo/")!=-1){ //单独视频播放界面
						findClassName = ".ZVideo-player";
					}else if(href.indexOf("https://video.zhihu.com/video")!=-1){ //视频播放iframe
						findClassName = "#player"
					}
					if(!findClassName) return;
					let playUrl = $(item).parents(findClassName).find("video").attr("src");
					if(!!playUrl){
						commonFunctionObject.GMopenInTab(playUrl);
					}
				});
			}
			isMarkComplete = true;
		}
		
		setInterval(()=>{
			addDownloadButton();
		}, 1499);
	};
	this.start = function(){
		const host = window.location.host;
		const self = this;
		if(host == "link.zhihu.com"){ 
			this.autoJumpTarget();
		}
		if(host.indexOf("zhihu.com")!=-1){
			this.markArticleOrQuestion();
			if(window.location.href.indexOf("www.zhihu.com/question/")!=-1){
				this.startDealwithQuestion();
			}
			//this.downloadVideo();
		}
	};
}
try{
	if(!functionController || functionController.zhihuHelper){
		(new ZhihuHelper()).start();
	}
}catch(e){
	console.log("知乎助手:error:"+e);
}
	
	/**
 * 搜索引擎资源提醒
 */
function SearchEnginesNavigation(){
	
	this.customNavigationkey = "custom-navigation-key-8898";
	this.serverNavigationkey = "server-navigation-key-8898";
	this.searchEnginesData=[
		{"host":"www.baidu.com", "element":"#content_right","elementInput":"#kw"},
		{"host":"www.so.com", "element":"#side","elementInput":"#keyword"},
		{"host":"www.sogou.com", "element":"#right","elementInput":"#upquery"},
		{"host":"cn.bing.com", "element":"#b_context","elementInput":"#sb_form_q"},
		{"host":"www.bing.com", "element":"#b_context","elementInput":"#sb_form_q"},
		{"host":"www4.bing.com", "element":"#b_context","elementInput":"#sb_form_q"},
		{"host":"so.toutiao.com", "element":".s-side-list","elementInput":"input[type='search']"},
		{"host":"www.google.com", "element":"#rhs","elementInput":"input[type='text']"},
		{"host":"www.google.com.hk","element":"#rhs","elementInput":"input[type='text']"},
		{"host":"duckduckgo.com","element":".react-results--sidebar","elementInput":"#search_form_input"}
	];
	this.defaultNavigationData =  [
		{"name":"资源搜索","list":[
			{"name":"书签搜索 · 🔥发现", "url":"https://www.bookmarkearth.cn/?from=dxy"},
			{"name":"百度百科", "url":"https://baike.baidu.com/item/@@"},
			{"name":"知乎搜索", "url":"https://www.zhihu.com/search?type=content&q=@@"},
			{"name":"B站搜索", "url":"https://search.bilibili.com/all?keyword=@@&from_source=webtop_search&spm_id_from=333.851"},
			{"name":"财经雪球", "url":"https://xueqiu.com/k?q=@@"},
			{"name":"抖音搜索", "url":"https://www.douyin.com/search/@@"},
			{"name":"搜狗|公众号", "url":"https://weixin.sogou.com/weixin?type=2&query=@@"},
			{"name":"豆瓣搜索", "url":"https://www.douban.com/search?q=@@"},
			{"name":"维基百科", "url":"https://en.wikipedia.org/w/index.php?search=@@"},
			{"name":"法律法规", "url":"https://www.pkulaw.com/law/chl?Keywords=@@"},
			{"name":"icon搜索", "url":"https://www.iconfont.cn/search/index?searchType=icon&q=@@"},
			{"name":"github", "url":"https://github.com/search?q=@@"},
			{"name":"csdn", "url":"https://so.csdn.net/so/search?q=@@&t=&u="},
			{"name":"stackoverflow", "url":"https://stackoverflow.com/"},
			{"name":"AI内容分析🔥","url":"https://www.quzhuanpan.com/redirect/d_n?t="+(new Date()).getTime()},
			{"name":"在线工具", "url":"https://www.tool77.com/category/1?from=vbx"}
		]},
		{"name":"搜索引擎","list":[
			{"name":"百度", "url":"https://www.baidu.com/s?wd=@@"},
			{"name":"必应", "url":"https://cn.bing.com/search?q=@@"},
			{"name":"google", "url":"https://www.google.com/search?q=@@"},
			{"name":"360搜索", "url":"https://www.so.com/s?ie=utf-8&fr=none&src=360sou_newhome&nlpv=basest&q=@@"},
			{"name":"搜狗", "url":"https://www.sogou.com/web?query=@@"},
			{"name":"头条搜索", "url":"https://so.toutiao.com/search?dvpf=pc&source=input&keyword=@@"},
			{"name":"DuckDuckGo", "url":"https://duckduckgo.com/?t=h_&q=@@&ia=web"},
		]}
	];
	this.getNavigationData = async function(element, elementInput){
		const self = this;
		let navigationData = self.defaultNavigationData;
		let finalNavigationData = null;
		try{
			let customNavigationData = commonFunctionObject.GMgetValue(self.customNavigationkey, null); //自定义的数据
			if(!!customNavigationData){
				finalNavigationData = [].concat(customNavigationData);
				// console.log("使用本地");
			}else{
				let currentMS = (new Date()).getTime();
				let delayMS = 1000 * 60 * 5;
				let serverNavigationData = commonFunctionObject.GMgetValue(self.serverNavigationkey, null);
				if(!serverNavigationData || (currentMS - serverNavigationData.ms) > delayMS){
					//拉取服务器本次不用,下次再使用
					commonFunctionObject.request("get", "https://sct.staticj.top/script/api/nav?t="+currentMS, null).then((serverJson)=>{
						let data = JSON.parse(serverJson.data);  //获取本地data
						data.ms = currentMS;                     //添加时间戳保存到本地区
						commonFunctionObject.GMsetValue(self.serverNavigationkey, data);
						//console.log("拉取服务器");
					}).catch((error)=>{});
				}
				
				if(!!serverNavigationData){
					finalNavigationData = JSON.parse(serverNavigationData.list);
				}else{
					finalNavigationData = navigationData;
				}
			}
		}catch(e){
			finalNavigationData = navigationData;
		}
		self.createHtml(element, elementInput, finalNavigationData);
	};
	this.createCss = function(elementNum){
		var innnerCss = `
			#dsdsd99mmmjj7760011{
				margin-bottom:20px;
			}
			.tab`+elementNum+`{
				margin-bottom:8px;
			}
			.tab-c-titles`+elementNum+`{
				margin-bottom:8px;
			}
			.tab-c-links`+elementNum+`{
				
			}
			
			.tabs-t`+elementNum+`{
				display: inline-block;
				width: 80px;
				height: 28px;
				line-height: 28px;
				font-size: 15px;
				letter-spacing: 0;
				text-align: center;
				font-weight: 400;
				border-radius: 6px;
				cursor: pointer;
				background: #f8f8f8;
				color: #333;
			}
			.tabs-t-selected-ddsds1idddx90{
			    color: #315EFB;
			    font-weight: 500;
			    background: rgba(49, 94, 251, 0.1);
			}
			.tabs-t-small-ddsds1idddx90{
			    margin-left: 8px;
			}
			
			.tab-c-links`+elementNum+` a[name='navigation']{
				display:inline-block;
				text-align:center;
				margin-right:12px;
				margin-top:5px;
				overflow: hidden;
				white-space: nowrap;
				text-overflow:ellipsis;
				box-sizing:border-box;
				line-height:20px;
				font-size:14px!important;
				text-decoration: none;
				color:#1a0dab;
			}
			.tab-c-links`+elementNum+` a[name='navigation']:hover{
				text-decoration: underline;
			}
			
			.bookmarks`+elementNum+`{
				min-height:50px;
			}
		`;
		if($("#plugin_css_style_dddsoo").length==0){
			$("body").prepend("<style id='plugin_css_style_dddsoo'>"+innnerCss+"</style>");
		}
	};
	this.showSetingDialog = function(){
		const self = this;
		
		var customNavigationData = "";
		const customNavigation = commonFunctionObject.GMgetValue(self.customNavigationkey, null);
		if(!!customNavigation){
			customNavigationData = JSON.stringify(customNavigation, null, 4);
		}
		const content = `
			<div>
				<div style="font-size:13px;color:red;">
					注意事项如下:
					<br>1、请严格按照格式添加,否则不生效
					<br>2、数据为json格式,请确保json格式正确,必要时请到<a target="_blank" href="https://www.json.cn/">https://www.json.cn/</a>校验
					<br>3、点击下面”示例“按钮,查看具体格式情况
					<br>4、链接中的搜索关键词请用”@@“代替,脚本会自动替换成当前搜索词。例如:https://www.baidu.com/s?wd=@@
					<br>5、大家可以自定义导航数据,<b>但是必须要注意数据格式,发现出现错误,可点“初始化”</b>
				</div>
				<div style="margin-top:5px;height:200px;width:100%;">
					<textarea 
						placeholder="请严格按照格式填写,否则不生效"
						class="navigation-textarea"
						style="color:#000;font-size:14px;box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;padding:5px;height:100%;width:100%;Overflow:auto;border:1px solid #ccc;resize:none;background-color:#FFF;outline:none;">`+customNavigationData+`</textarea>
				</div>
				<div style="text-align:center;margin-top:15px;">
					<button class="navigation-init" style="color:#000;cursor:pointer;">初始化</button>
					<button class="navigation-example" style="color:#000;cursor:pointer;">示例</button>
					<button class="navigation-clear" style="color:#000;cursor:pointer;">清空</button>
					<button class="navigation-save" style="color:#000;cursor:pointer;">保存自定义导航</button>
				</div>
			</div>
		`;
		popup.dialog({
			"title":"自定义添加导航",
			"content":content,
			"onContentReady":function($that){
				var $navigationExample = $that.dialogContent.querySelector(".navigation-example");
				var $navigationClear = $that.dialogContent.querySelector(".navigation-clear");
				var $navigationSave = $that.dialogContent.querySelector(".navigation-save");
				var $navigationInit = $that.dialogContent.querySelector(".navigation-init");
				
				var $textarea = $that.dialogContent.querySelector(".navigation-textarea");
				$navigationExample.addEventListener("click", function(){
					$textarea.value = JSON.stringify(self.defaultNavigationData, null, 4);
				});
				$navigationClear.addEventListener("click", function(){
					$textarea.value = "";
				});
				$navigationInit.addEventListener("click", function(){
					$textarea.value = "";
					commonFunctionObject.GMsetValue(self.customNavigationkey, null);
				});
				$navigationSave.addEventListener("click", function(){
					var content = $textarea.value;
					if(!content){
						commonFunctionObject.GMsetValue(self.customNavigationkey, null);
						commonFunctionObject.webToast({"message":"保存成功:数据为空", "background":"#FF4D40"});
						return;
					}
					if(content.length==0 || content.indexOf("{")==-1 || content.indexOf("[")==-1){
						commonFunctionObject.webToast({"message":"格式错误,请更正", "background":"#FF4D40"});
						return;
					}
					try{
						var contentJson = JSON.parse(content);
						if(Array.isArray(contentJson)){ //开始必须是数组
							var isOK = true;
							for(var i=0; i<contentJson.length; i++) {
								if(Array.isArray(contentJson[i])){ //此处必须是对象
									isOK = false;
									break;
								}
								if(!contentJson[i].hasOwnProperty("name") || !contentJson[i].hasOwnProperty("list")){
									isOK = false;
									break;
								}
								if(typeof(contentJson[i]["name"])!="string"){
									isOK = false;
									break;
								}
								if(!Array.isArray(contentJson[i]["list"])){ //此处必须是数组
									isOK = false;
									break;
								}
								for(var j=0; j<contentJson[i]["list"].length; j++){
									if(!contentJson[i]["list"][j].hasOwnProperty("name") || !contentJson[i]["list"][j].hasOwnProperty("url")){
										isOK = false;
										break;
									}
									if(typeof(contentJson[i]["list"][j]["name"])!="string" || typeof(contentJson[i]["list"][j]["url"])!="string"){
										isOK = false;
										break;
									}
								}
								if(!isOK){
									break;
								}
							}
							if(isOK){
								commonFunctionObject.GMsetValue(self.customNavigationkey, contentJson);
								commonFunctionObject.webToast({"message":"保存成功", "background":"#FF4D40"});
							}else{
								commonFunctionObject.webToast({"message":"格式错误,请更正", "background":"#FF4D40"});
							}
						}else{
							commonFunctionObject.webToast({"message":"格式错误,请更正", "background":"#FF4D40"});
						}
					}catch(e){
						commonFunctionObject.webToast({"message":"格式错误,请更正", "background":"#FF4D40"});
					}
				});
			}
		})
	}
	this.createHtml = function(element, elementInput, navigationData){
		$("#dsdsd99mmmjj7760011").remove();
		
		var isComplate = true;
		const host = window.location.host;
		const self = this;
		const elementNum = commonFunctionObject.randomNumber();
		const elementInterval = setInterval(function(){
			if(isComplate){
				var $element = $(element);
				var $box = $("#dsdsd99mmmjj7760011");
				isComplate = false;
				if($element.length!=0 && $box.length==0){					
					var nameArray = [];
					var linkArray = [];
					for(var i=0; i<navigationData.length; i++){
						var name = "";
						if(i==0){
							name += '<span class="tabs-t'+elementNum+' tabs-t-selected-ddsds1idddx90" name="tab-list-xxsddddssd-'+i+'">'+navigationData[i].name+'</span>';
						}else{
							name += '<span class="tabs-t'+elementNum+' tabs-t-small-ddsds1idddx90" name="tab-list-xxsddddssd-'+i+'">'+navigationData[i].name+'</span>';
						}
						nameArray.push(name);
						
						var links = "";
						if(i==0){
							links = '<div id="tab-list-xxsddddssd-'+i+'">';
						}else{
							links = '<div id="tab-list-xxsddddssd-'+i+'" style="display:none;">';
						}
						for(var j=0;j<navigationData[i].list.length;j++){
							let url = navigationData[i].list[j].url;
							url = url.replace("${t}",(new Date()).getTime());
							let name = navigationData[i].list[j].name;
							links += "<a target='_blank' name='navigation' data-url='"+url+"' href='javascript:void(0);'>"+name+"</a>"				
						}
						links += "</div>";
						linkArray.push(links);
					}
					
					var html = `
						<div id="dsdsd99mmmjj7760011">
							<div class="tab`+elementNum+`">
								<div class="tab-c-titles`+elementNum+`">`+nameArray.join("")+`</div>
								<div class="tab-c-links`+elementNum+`">`+linkArray.join("")+`</div>
							</div>
							<div style='margin-bottom:10px;margin-top:5px;font-size:12px;'>
								<a target='_blank' href='https://greasyfork.org/zh-CN/scripts/469407' style="color: #000;background-color: #efefef;padding: 2px 5px; border-radius: 2px;">*该数据由油猴脚本提供</a>
								&nbsp;&nbsp;
								<a href="javascript:void(0);" name="customNavigation" style="color: #000;background-color: #efefef;padding: 2px 5px; border-radius: 2px;">🔧自定义网址</a>
							</div>
						<div>
					`;
					
					// //添加css 添加html
					self.createCss(elementNum);
					$element.prepend(html);
					
					
					//点击切换tab
					$("#dsdsd99mmmjj7760011 .tabs-t"+elementNum).on("click", function(e){
						$("div[id^='tab-list-xxsddddssd-']").hide();
						$(".tabs-t"+elementNum).removeClass("tabs-t-selected-ddsds1idddx90");
						
						$("#"+$(this).attr("name")).show();
						$(this).addClass("tabs-t-selected-ddsds1idddx90");
					});
					
					//点击链接
					$("#dsdsd99mmmjj7760011 a[name='navigation']").on("click", function(e){
						commonFunctionObject.GMopenInTab($(this).data("url").replace("@@",$(elementInput).val()));
						e.preventDefault()
					});
					
					//弹出自定义导航弹窗
					$("#dsdsd99mmmjj7760011 a[name='customNavigation']").on("click", function(e){
						self.showSetingDialog();
						e.preventDefault()
					});
				}
				isComplate = true;
			}
		}, 100);			
	};
	this.hookBaidu = function(){
		let items = document.querySelectorAll("#content_left>div");
		for(let item of items){
			//给处理完成的做一个标识
			if(!!item.getAttribute("baidu_dealxx")){
				continue;
			}
			item.setAttribute("baidu_dealxx","--");
			
			let a = item.querySelector("a");
			if(!a || !a.href){
				continue;
			}
			
			//标注了html网址的忽略
			let OP_LOG_LINK = item.querySelector(".OP_LOG_LINK");
			if(!!OP_LOG_LINK && OP_LOG_LINK.innerText.search("http")!=-1){
				continue;
			}
			
			//有多个点击点的忽略
			let cGapBottomSmall = item.querySelector(".c-gap-bottom-small");
			if(!!cGapBottomSmall){
				continue;
			}
							
			//https://www.baidu.com/s?wd=一夜醒来欠地铁600多万?官方回应
			if (a.href.includes("www.baidu.com/link?url=")) {
				let url = item.getAttribute("mu");
				if (url && url != null && !url.includes("nourl.ubs.baidu.com")) {
					a.href = url;
					item.innerHTML += `<div style="color:#ccc;font-size:12px;display:flex;align-items:center;width:100%;overflow:hidden;white-space: nowrap;text-overflow: ellipsis;-o-text-overflow:ellipsis;">
										<img style="width:15px;height:15px;" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAKhJREFUOE+9k9ENwjAMBc8RA7AR7UhMQDsBszBBw0YMAAmKrBS3pM1HpOb/ne9ZjtD4pDHPEYBTB2FSU9fD21vrisEcHsF5BS0hFYCLwAhh0KkZGOZcBSATyAM4K8QNEC8Q+1yjAEhTPjeQ50+bq0KW4QRZAWxnXsBdO4euFC4AbOe1fvlijEGebrecOqeXl/gP2aiwr125g2wSvd321skfccr7363Z4Asklz4RHmdA1gAAAABJRU5ErkJggg=="/>
										<a style="color:#626675;" href="`+url+`" target="_blank">`+url+`</a>
									</div>`;
				}
			}
			
			let itemNews = item.querySelectorAll("[class^=single-card-wrapper] div,[class^=group-wrapper] div");
			if(!itemNews){
				continue;
			}
			//single-card-wrapper: https://www.baidu.com/s?ie=UTF-8&wd=es6                          xxx的最新相关信息
			//group-wrapper:       https://www.baidu.com/s?ie=UTF-8&wd=五一消费成绩单折射市场活力     资讯
			for(let itemNew of itemNews){
				let dataUrl = null;
				let divs = itemNew.querySelectorAll("div");
				for (let div of divs) {
					if ((dataUrl = div.getAttribute("data-url"))) {
						let a = itemNew.querySelector("a");
						a.setAttribute("href", dataUrl);
					}
				}
			}
		}
	};
	this.hookGoogle = function(){
		let items = document.querySelectorAll("#center_col a");
		for(let a of items){
			if(!a.getAttribute("target")) a.setAttribute("target","_blank");
		}
	};
	this.hooks = function(){
		const host = window.location.host;
		const href = window.location.href;
		const search = window.location.search;
		const self = this;
		setInterval(function(){
			if(host==="www.baidu.com"){
				self.hookBaidu();
			}else if(host==="www.google.com" || host==="www.google.com.hk"){
				self.hookGoogle();
			}
		}, 300);
	};
	this.show = function(){
		const self = this;
		const host = window.location.host;
		const href = window.location.href;
		if((host==="www.baidu.com")
			|| (host==="www.so.com" && href.indexOf("www.so.com/s")!=-1)
			|| (host==="www.sogou.com" && (href.indexOf("www.sogou.com/web")!=-1 || href.indexOf("www.sogou.com/sogou")!=-1))
			|| (host==="cn.bing.com" && href.indexOf("cn.bing.com/search")!=-1)
			|| (host==="www.bing.com" && href.indexOf("www.bing.com/search")!=-1)
			|| (host==="www4.bing.com" && href.indexOf("www4.bing.com/search")!=-1)
			|| (host==="so.toutiao.com" && href.indexOf("so.toutiao.com/search")!=-1)
			|| (host==="www.google.com" && href.indexOf("www.google.com/search")!=-1)
			|| (host==="www.google.com.hk" && href.indexOf("www.google.com.hk/search")!=-1)
			|| (host==="duckduckgo.com" && href.indexOf("duckduckgo.com")!=-1)){
			let currentSearchEnginesData = null;
			for(var i=0; i<self.searchEnginesData.length; i++){
				if(host===self.searchEnginesData[i].host){
					currentSearchEnginesData = self.searchEnginesData[i];
				}
			}
			if(currentSearchEnginesData!=null){
				self.getNavigationData(currentSearchEnginesData.element, currentSearchEnginesData.elementInput);
			}
			self.hooks();
		}
	};
	this.start = function(){
		this.show();
	};
}
try{
	if(!functionController || functionController.searchEnginesNavigation){
		(new SearchEnginesNavigation()).start();
	}
}catch(e){
	console.log("搜索引擎导航:error:"+e);
}
	
	//国外的一些解析
function AbroadVideoHelper(){
	this.isRun = function(){
		var urls=["youtube.com", "facebook.com"];
		for(var i=0; i<urls.length;i++){
			if(window.location.host.indexOf(urls[i])!=-1){
				return true;
			}
		}
		return false;
	};
	this.start = function(){
		if(!this.isRun()){
			return;
		}
		setInterval(function(){
			const host = window.location.host;
			const href = window.location.href;
			const eleId = "free-xx1-player-script-9999";
			
			//youtube解析
			if(host.indexOf("youtube.com")!=-1){
				if(href.indexOf("youtube.com/watch")!=-1){
					if($("#"+eleId).length != 0){
						return;
					}
					var html='<div id="'+eleId+'" style="width:50px;font-size:13px;cursor:pointer;font-weight:bold;text-align:center;background-color:rgba(0,0,0,0.05);border-radius:25px;padding: 9px 13px;position:relative;left:8px;">'+
						'下载'+
						'</div>';
					$("#owner").append(html);
					$("body").off("click", "#"+eleId).on("click", "#"+eleId, function(){
						var location_url = window.location.href;
						var videourl = "https://www.videofk.com/videofk-video-download/search?url="+location_url;
						commonFunctionObject.GMopenInTab(videourl);
					});
				}else{
					$("#"+eleId).remove();
				}
			}
			
			//facebook解析
			if(host.indexOf("facebook.com")!=-1){
				if(href.indexOf("facebook.com/watch")!=-1 || href.indexOf("/videos/")!=-1){
					if($("#"+eleId).length != 0){
						return;
					}
					var iconVideo = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAADOUlEQVRoQ+2Zz4uNURjHP9+F8g8gykKJNJMUUmzMDKZmYVYsLBRhOaEmFhRRLCZDY4PBrJRREkUMmY3URCk/s6GMhR9ZWNk9OvXO7b133ve+57w/7szUnLqbe59fn/Oc85znnCvm+NAcj595gHgGzWwDsBZYDawEFgI/gT/AR0nDZWe8lAyYWTewF9iTEeA4MCTpblkghQHM7BxwPDCgAUn9gTqJ4oUAzOwKcChnICOS9uXUranlBjCza8CBggFclHSkiI1cAGbWBTwt4jim2y3pSV5bwQBmtgq4BazP67RB7w3gsvAX+CbpV4hdL4CoPG4H3KcjxEEOWVdyHwPjkq5m6WcCmNmFaIaybFXx+2vgsqSRNOOpAGa2GHhY4lIpAnha0qkkA4kAZuZO0k9FPFag2yHJHYR1Iw3gO7CsgiCKmPwMdEmajBuZBmBmbuMcLOKpQt1BSUdTAczMVZmQmjwtpTmC3xqo0ybpw5ROXQbMrA+45GtQUmYVy7JlZpYl0/B73YZuBAjqbWYI4KWkzWkZeBVSNuMAZua1FBorSY4MTEpangYQlM4EgOdZy6ExazkAiNtoXELvgLasIGr0sT0QZaAVAO8ltadlYBTYNcsB7kjanQZwHjg2ywGaViHXIruN7DVmYA+4lnudpC+JGXBfhlwTZwDAPQi4s6o2kloJ9yzyyKcXajGA64F6JL1tChBlwdX0oIrSgirUK+l+49pudh/IhGhhBvolDSRtzKa9jJktBdxrWk+icvXnwO3oIexFWlXJbMbMbAGwJQWg1o0WWEKpLUjSBcZ7CXnV0ZhQXoBQP/MAUzNgZu5Z8EbRGQT2S7qZ107mHmhmuIQnl2lXxFCQQgDRmTEGbAt1DIxJ2pFDr06lDIBFgDsdlwQE8wNol/Q7QCdRtDBAlIVO4FlAMJ2SMk96H3ulAEQQh4FBD6d9koY85LxESgOIIK67qtLE87CkUt+cSgWIICaAjQkQE5I2eU1rgFAVACsA9/Dk/qGcGv+ANZK+BsTmJVo6QJSFXuBeLIKdkh54RRQoVAlABHECOAOclHQ2MC5v8coAIojR+AuCd1QBgpUCBMSRW3QeIPfUlaT4H0/7RUAi2a/NAAAAAElFTkSuQmCC";
					var html='<div id="'+eleId+'" style="width:25px;padding:10px 0px;text-align:center;background-color:#E5212E;position:fixed;top:250px;left:0px;color:#FFF;font-size:0px;z-index:9999999999999;cursor:pointer;margin:0px auto;text-align:center;">'+
						'<img src="'+iconVideo+'" style="width:20px;">'+
						'</div>';
					$("body").append(html);
					$("body").on("click", "#"+eleId, function(){
						var location_url = window.location.href;
						commonFunctionObject.GMsetValue("facebook_downloader_obj", {"facebook_url":location_url});
						commonFunctionObject.GMopenInTab("https://yt1s.com/facebook-downloader");
					});
				}else{
					$("#"+eleId).remove();
				}
			}
		}, 1000);
		
		if(window.location.href.indexOf("yt1s.com/facebook-downloader")!=-1){ //facebook下载
			var facebookObject = commonFunctionObject.GMgetValue("facebook_downloader_obj");
			if(!!facebookObject){
				$("#s_input").val(facebookObject.facebook_url);
			}
		}
	}
}
try{
	if(!functionController || functionController.abroadVideoHelper){
		(new AbroadVideoHelper()).start();
	}
}catch(e){
	console.log("国外视频解析:error:"+e);
}
	function ShortVideoDownloader(){
	this.douyinVideoDownloader = function(){
		/**
		 * 此处代码有借鉴lazyfrog的代码,在原来代码的基础上修改了部分功能和bug修复
		 * 脚本地址:https://greasyfork.org/zh-CN/scripts/469521
		 * 特此注明
		 */
		const _self = this;
		function run(){
			if(window.location.host !== "www.douyin.com"){
				return;
			}
			let downloadOption = [{name:'',id:'toServer'}, {name:'打开视频(可下载)',id:'toLink'}];
			let videoElements = document.querySelectorAll('video');
			if(videoElements.length == 0) return;
			 
			//把自动播放的video标签选择出来
			let playVideoElements=[];
			videoElements.forEach(function(element){
				let autoplay = element.getAttribute('autoplay');
				if(autoplay !== null){
					playVideoElements.push(element);
				}
			})
			
			let videoContainer=location.href.indexOf('modal_id') != -1 
				? playVideoElements[0]
				: playVideoElements[playVideoElements.length-1];
			if(!videoContainer) return;
			 
			//获取视频播放地址
		   let url = videoContainer && videoContainer.children.length>0 && videoContainer.children[0].src
						? videoContainer.children[0].src
						: videoContainer.src;
			 
			//获取视频ID,配合自定义id使用
			let videoId;
			let resp = url.match(/^(https:)?\/\/.+\.com\/([a-zA-Z0-9]+)\/[a-zA-Z0-9]+\/video/);
			let res = url.match(/blob:https:\/\/www.douyin.com\/(.*)/);
			if(resp && resp[2]){
				videoId=resp[2];
			}else if(res && res[1]){
				videoId=res[1]
			}else{
				videoId = videoContainer.getAttribute('data-xgplayerid')
			}
			 
			let playContainer = videoContainer.parentNode.parentNode.querySelector('.xg-right-grid');
			if(!playContainer) return;
			
			//在对主页就行视频浏览时会出现多个按钮,删除不需要的,只保留当前对应的
			let videoDownloadDom = playContainer.querySelector('#scriptVideoDownload'+videoId);
			if(videoDownloadDom){
				let dom = playContainer.querySelectorAll('.xgplayer-playclarity-setting');
				dom.forEach(function(d){
					let btn = d.querySelector('.btn');
					if(d.id != 'scriptVideoDownload'+videoId && btn.innerText=='下载'){
						d.parentNode.removeChild(d);
					}
				});
				return;
			}
			 
			if(videoContainer && playContainer){
				let playClarityDom = playContainer.querySelector('.xgplayer-playclarity-setting');
				if(!playClarityDom) return;
	
				let palyClarityBtn = playClarityDom.querySelector('.btn');
				if(!palyClarityBtn) return;
	
				let downloadDom = playClarityDom.cloneNode(true);
				downloadDom.setAttribute('id','scriptVideoDownload'+videoId);
	
				if(location.href.indexOf('search') == -1){
					downloadDom.style='margin-top:-68px;padding-top:100px;padding-left:20px;padding-right:20px;';
				}else{
					downloadDom.style='margin-top:0px;padding-top:100px;';
				}
	
				let downloadText = downloadDom.querySelector('.btn');
				downloadText.innerText='抖音';
				downloadText.style = 'font-size:14px;font-weight:600;';
				downloadText.setAttribute('id','zhmDouyinDownload'+videoId);
				
				let detail = playContainer.querySelector('xg-icon:nth-of-type(1)').children[0];
				let linkUrl = detail.getAttribute('href') ? detail.getAttribute('href') : location.href;
	
				if(linkUrl.indexOf('www.douyin.com')==-1){
					linkUrl='//www.douyin.com'+linkUrl;
				}
	
				downloadText.setAttribute('data-url',linkUrl);
				downloadText.removeAttribute('target');
				downloadText.setAttribute('href','javascript:void(0);');
	
				let virtualDom = downloadDom.querySelector('.virtual');
				downloadDom.onmouseover=function(){
					if(location.href.indexOf('search') == -1){
						virtualDom.style='display:block !important';
					}else{
						virtualDom.style='display:block !important;margin-bottom:37px;';
					}
				}
	
				downloadDom.onmouseout=function(){
					virtualDom.style='display:none !important';
				}
	
				let downloadHtml = '';
				downloadOption.forEach(function(item){
					if(item.id=="toServer"){
						downloadHtml += `<div style="text-align:center;width:100px;" class="item ${item.id}" id="${item.id}${videoId}">更多资源<span style="color:red;">(热点)</span></div>`;
					}else{
						downloadHtml += `<div style="text-align:center;width:100px;" class="item ${item.id}" id="${item.id}${videoId}">${item.name}</div>`;
					}
	
				})
	
				if(downloadDom.querySelector('.virtual')){
					downloadDom.querySelector('.virtual').innerHTML = downloadHtml;
				}
	
				playClarityDom.after(downloadDom);
	
				//直接打开
				let toLinkDom = playContainer.querySelector('#toLink'+videoId);
				if(toLinkDom){
					toLinkDom.addEventListener('click',function(){
						if(url.match(/^blob/)){
							commonFunctionObject.webToast({"message":"加密视频无法直接打开。可复制分享链,重新打开页面使用“下载”", "background":"#141414"});
						}else{
							window.open(url);
						}
					})
				}
	
				let toAi = playContainer.querySelector('#toServer'+videoId);
				if(toAi){
					toAi.addEventListener('click',function(){
						window.open("https://ss.qiwudianzi.top");
					})
				}
			}
		}
		//抖音视频下载需要鼠标右键保存
		function player(){
			if(window.location.host.indexOf(".douyinvod.com")!=-1){
				var html=`<div style="position:fixed;left:15px;bottom:300px;background-color:#ccc;width:200px;font-size:14px;padding:5px;">
					<div style="color:red;font-weight:bold;">下载请在视频框点击:鼠标右键 ->视频另存为,保存视频</div>
					<div style="margin-top:15px;"># 资源分享,交流学习,微信:ahonker999,QQ:2394856795,备注视频学习</div>
					<div style="margin-top:15px;"># 网址导航效率工具,免费<a target="_blank" href="http://bds.yt3166.com">点我查看</a></div>
				</div>`;
				$("body").append(html);
			}
		}
		setInterval(function(){
			run();
		}, 500);
		player();
	};
	this.kuaishouVideoDownloader = function(){
		if(window.location.host !== "www.kuaishou.com"){
			return;
		}
		window.addEventListener('load',function(){
			async function downloader(){
				let kuaishouVideoDownloder = document.querySelector("#kuaishou-video-downloder");
				if(!kuaishouVideoDownloder){
					let downloadDIV = document.createElement("div");
					downloadDIV.style = "cursor:pointer;width:50px;height:40px;line-height:40px;text-align:center;background-color:#FFF;color:#000;position:fixed;top:200px;left:0px;z-index:999;";
					downloadDIV.innerText = "下载";
					downloadDIV.setAttribute('id','kuaishou-video-downloder');
					document.body.appendChild(downloadDIV);
					
					downloadDIV.addEventListener("click", function(e){
						let videoDom = document.querySelector('.player-video');
						if(!videoDom){
							console.log('没有找到DOM');
							return;
						}
						let videoSrc = videoDom.getAttribute('src');					
						if(videoSrc.match(/^blob/)){
							console.log('blob视频无法下载');
							return;
						}
						commonFunctionObject.GMopenInTab(videoSrc);
					});
				}
			}
			document.querySelectorAll(".switch-item").forEach(function(value){
				value.addEventListener("click", function(){
					downloader();
				});
			})
			downloader();
			setInterval(function(){
				let kuaishouVideoDownloder = document.querySelector("#kuaishou-video-downloder");
				if(kuaishouVideoDownloder){
					if(window.location.href.match(/https:\/\/www\.kuaishou\.com\/short-video\/.*?/)){
						kuaishouVideoDownloder.style.display = "block";
					}else{
						kuaishouVideoDownloder.style.display = "none";
					}
				}
			}, 800);
		});
	};
	this.start = function(){
		this.douyinVideoDownloader();
		this.kuaishouVideoDownloader();
	};
};
try{
	if(!functionController || functionController.shortVideoDownload){
		(new ShortVideoDownloader()).start();
	}
}catch(e){
	console.log("短视频去水印下载:error:"+e);
}
	
})();