// ==UserScript==
// @name VIP 视频解析(优化增强版)
// @version 1.8
// @description 支持腾讯视频、爱奇艺、优酷、土豆、芒果TV、搜狐视频、乐视视频、PPTV、风行、华数TV等,支持多个解析接口切换,支持视频广告跳过,支持站内站外解析,支持 Tampermonkey、Violentmonkey、Greasemonkey
// @author sign
// @namespace https://gf.qytechs.cn/users/665670
// @require https://cdn.bootcss.com/jquery/3.5.1/jquery.min.js
// @require https://greasemonkey.github.io/gm4-polyfill/gm4-polyfill.js
// @match *://v.qq.com/x/cover/*
// @match *://v.qq.com/x/page/*
// @match *://www.iqiyi.com/v*
// @match *://v.youku.com/v_show/*
// @match *://www.mgtv.com/b/*
// @match *://tv.sohu.com/v/*
// @match *://film.sohu.com/album/*
// @match *://www.le.com/ptv/vplay/*
// @match *://video.tudou.com/v/*
// @match *://v.pptv.com/show/*
// @match *://www.fun.tv/vplay/*
// @match *://www.acfun.cn/v/*
// @match *://www.bilibili.com/*
// @match *://vip.1905.com/play/*
// @match *://www.wasu.cn/Play/show/*
// @match *://www.56.com/*
// @exclude *://www.bilibili.com/blackboard/*
// @grant unsafeWindow
// @grant GM_openInTab
// @grant GM.openInTab
// @grant GM_getValue
// @grant GM.getValue
// @grant GM_setValue
// @grant GM.setValue
// @grant GM_xmlhttpRequest
// @grant GM.xmlHttpRequest
// @grant GM_registerMenuCommand
// ==/UserScript==
(function () {
'use strict';
var $ = $ || window.$;
var log_count = 1;
var host = location.host;
var parseInterfaceList = [];
var userInterfaceList = [];
var originalInterfaceList = [
{ name:"纯净1", type:"站内", url:"https://z1.m1907.cn/?jx="},
{ name:"纯净2", type:"站内", url:"https://jx.618g.com/?url="},
{ name:"17云", type:"站内", url:"https://www.1717yun.com/jx/ty.php?url="},
{ name:"CQ", type:"站内", url:"https://cdn.yangju.vip/k/?url="},
{ name:"思古", type:"站内", url:"https://api.sigujx.com/?url="},
{ name:"简傲", type:"站内", url:"https://vip.fitaxik.cn/?url="},
{ name:"百域", type:"站内", url:"https://jx.618g.com/?url="},
{ name:"思古2", type:"站内", url:"https://api.bbbbbb.me/jx/?url="},
{ name:"黑米", type:"站内", url:"https://www.myxin.top/jx/api/?url="},
{ name:"石云", type:"站内", url:"https://jiexi.071811.cc/jx.php?url="},
{ name:"凡凡", type:"站内", url:"https://jx.wslmf.com/?url="},
{ name:"人人", type:"站内", url:"https://vip.mpos.ren/v/?url="},
{ name:"金桥", type:"站内", url:"https://jqaaa.com/jx.php?url="},
{ name:"通用", type:"站内", url:"https://jx.598110.com/index.php?url="},
{ name:"初心", type:"站内", url:"https://jx.bwcxy.com/?v="},
{ name:"Hk", type:"站内", url:"https://jx.rdhk.net/?v="},
{ name:"星空", type:"站内", url:"https://jx.fo97.cn/?url="},
{ name:"小蒋极致", type:"站内", url:"https://www.kpezp.cn/jlexi.php?url="},
{ name:"维多", type:"站内", url:"https://jx.ivito.cn/?url="},
{ name:"927", type:"站内", url:"https://api.927jx.com/vip/?url="},
{ name:"tv920", type:"站内", url:"https://api.tv920.com/vip/?url="},
{ name:"89", type:"站内", url:"https://www.ka61b.cn/jx.php?url="},
{ name:"豪华啦", type:"站内", url:"https://api.lhh.la/vip/?url="},
{ name:"宿命", type:"站内", url:"https://api.sumingys.com/index.php?url="},
{ name:"8B", type:"站内", url:"https://api.8bjx.cn/?url="},
{ name:"千忆", type:"站内", url:"https://v.qianyicp.com/v.php?url="},
{ name:"41", type:"站内", url:"https://jx.f41.cc/?url="},
{ name:"ckmov", type:"站内", url:"https://www.ckmov.vip/api.php?url="},
{ name:"517", type:"站内", url:"https://cn.bjbanshan.cn/jx.php?url="},
{ name:"凉城", type:"站内", url:"https://jx.mw0.cc/?url="},
{ name:"33t", type:"站内", url:"https://www.33tn.cn/?url="},
{ name:"爸比云", type:"站内", url:"https://jx.1ff1.cn/?url="},
{ name:"180", type:"站内", url:"https://jx.000180.top/jx/?url="},
{ name:"ha12", type:"站内", url:"https://py.ha12.xyz/sos/index.php?url="},
{ name:"无名", type:"站内", url:"https://www.administratorw.com/video.php?url="},
{ name:"黑云", type:"站内", url:"https://jiexi.380k.com/?url="},
{ name:"流氓凡", type:"站内", url:"https://jx.wslmf.com/?url="},
{ name:"OK", type:"站内", url:"https://okjx.cc/?url="},
{ name:"穷二代", type:"站内", url:"https://jx.ejiafarm.com/dy.php?url="},
{ name:"二度", type:"站内", url:"https://jx.du2.cc/?url="},
{ name:"bl解析", type:"站内", url:"https://vip.bljiex.com/?v="},
{ name:"明日", type:"站内", url:"https://jx.yingxiangbao.cn/vip.php?url="},
{ name:"一起走吧", type:"站内", url:"http://jiexi.yiqizouba.top/?url="},
{ name:"千叶", type:"站内", url:"https://yi29f.cn/vip.php?url="},
{ name:"诺讯", type:"站内", url:"https://www.nxflv.com/?url="},
{ name:"大幕", type:"站内", url:"https://jx.52damu.com/dmjx/jiexi.php?url="},
{ name:"H8", type:"站内", url:"https://www.h8jx.com/jiexi.php?url="},
{ name:"解析S", type:"站内", url:"https://jx.jiexis.com/?url="},
//--------------------------------------------------------------------------------------
{ name:"纯净1", type:"站外", url:"https://z1.m1907.cn/?jx="},
{ name:"纯净2", type:"站外", url:"https://jx.618g.com/?url="},
{ name:"17云", type:"站外", url:"https://www.1717yun.com/jx/ty.php?url="},
{ name:"CQ", type:"站外", url:"https://cdn.yangju.vip/k/?url="},
{ name:"思古", type:"站外", url:"https://api.sigujx.com/?url="},
{ name:"简傲", type:"站外", url:"https://vip.fitaxik.cn/?url="},
{ name:"百域", type:"站外", url:"https://jx.618g.com/?url="},
{ name:"思古2", type:"站外", url:"https://api.bbbbbb.me/jx/?url="}
];
//自定义 log 函数
function mylog(param1, param2) {
param1 = param1 ? param1 : "";
param2 = param2 ? param2 : "";
console.log("#" + log_count++ + "-VIP-log:", param1, param2);
}
//内嵌页内播放
function innerParse(url) {
$("#iframe-player").attr("src", url);
}
//兼容 Tampermonkey | Violentmonkey | Greasymonkey 4.0+
function GMopenInTab(url, open_in_background) {
if (typeof GM_openInTab === "function") {
GM_openInTab(url, open_in_background);
} else {
GM.openInTab(url, open_in_background);
}
}
//兼容 Tampermonkey | Violentmonkey | Greasymonkey 4.0+
function GMgetValue(name, value) {
if (typeof GM_getValue === "function") {
return GM_getValue(name, value);
} else {
return GM.getValue(name, value);
}
}
//兼容 Tampermonkey | Violentmonkey | Greasymonkey 4.0+
function GMsetValue(name, value) {
if (typeof GM_setValue === "function") {
GM_setValue(name, value);
} else {
GM.setValue(name, value);
}
}
//兼容 Tampermonkey | Violentmonkey | Greasymonkey 4.0+
function GMxmlhttpRequest(obj) {
if (GM_xmlhttpRequest === "function") {
GM_xmlhttpRequest(obj);
} else {
GM.xmlhttpRequest(obj);
}
}
//兼容 Tampermonkey | Violentmonkey | Greasymonkey 4.0+
function GMaddStyle(css) {
var myStyle = document.createElement('style');
myStyle.textContent = css;
var doc = document.head || document.documentElement;
doc.appendChild(myStyle);
}
//播放窗口节点
var node;
var player_nodes = [
{ url:"v.qq.com", node:"#mod_player"},
{ url:"www.iqiyi.com", node:"#flashbox"},
{ url:"v.youku.com", node:"#ykPlayer"},
{ url:"www.mgtv.com", node:"#mgtv-player-wrap container"},
{ url:"tv.sohu.com", node:"#player"},
{ url:"film.sohu.com", node:"#playerWrap"},
{ url:"www.le.com", node:"#le_playbox"},
{ url:"video.tudou.com", node:".td-playbox"},
{ url:"v.pptv.com", node:"#pptv_playpage_box"},
{ url:"www.wasu.cn", node:"#flashContent"},
{ url:"www.fun.tv", node:"#html-video-player-layout"},
{ url:"www.acfun.cn", node:"#player"},
{ url:"www.bilibili.com", node:"#bilibiliPlayer"},
{ url:"vip.1905.com", node:"#player"},
{ url:"www.56.com", node:"#play_player"}
];
for(var i in player_nodes) {
if (player_nodes[i].url == host) {
node = player_nodes[i].node;
}
}
//视频播放窗口按钮
var innerList = [];
var outerList = [];
var innerli = "";
var outerli = "";
originalInterfaceList.forEach((item, index) => {
if (item.type == "站内") {
innerList.push(item);
innerli += "<li>" + item.name + "</li>";
} else {
outerList.push(item);
outerli += "<li>" + item.name + "</li>";
}
});
parseInterfaceList = innerList.concat(outerList);
var jiexiDIV = `
<div style='display:flex;'>
<div style='width:316px;padding:10px 0;'>
<div style='text-align:center;color:#FFFFFF;line-height:21px;'>站内解析</div>
<ul style='margin:0 10px;'>
` + innerli + `
<div style='clear:both;'></div>
</ul>
<div style='text-align:center;color:#FFFFFF;line-height:21px;'>站外解析</div>
<ul style='margin:0 10px;'>
` + outerli + `
<div style='clear:both;'></div>
</ul>
</div>
</div>`;
var videoPlayer = $("<div id='iframe-div' style='width:100%;height:100%;z-index:2147483647;'><iframe id='iframe-player' frameborder='0' allowfullscreen='true' width='100%' height='100%'></iframe></div>");
var ImgBase64 =`
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF7GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZW
hpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOl
JERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG
5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL2
1tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPS
IyMDIwLTA2LTI1VDE5OjUzOjU2KzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wNy0xMFQxMDoyMjoyNSswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wNy0xMFQxMDoyMjoyNSswODowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbm
ciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1ZjQwYzBkOC1mNjJmLTEwNGItOThhNS0zNzYwMTRiZDM5ZTMiIHhtcE
1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6YzMyNWIyNTUtNzZmOC0zYzRhLWE3MjQtZWVmZWMyMDY3Yzg1IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6YzMyNWIyNTUtNzZmOC0zYzRhLWE3MjQtZWVmZWMyMDY3Yzg1Ij4gPH
htcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpjMzI1YjI1NS03NmY4LTNjNGEtYTcyNC1lZWZlYzIwNjdjODUiIHN0RXZ0OndoZW49IjIwMj
AtMDYtMjVUMTk6NTM6NTYrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paW
Q6NWY0MGMwZDgtZjYyZi0xMDRiLTk4YTUtMzc2MDE0YmQzOWUzIiBzdEV2dDp3aGVuPSIyMDIwLTA3LTEwVDEwOjIyOjI1KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIH
N0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+pT2ovAAAAolJREFUeJztm72L1EAYxn/v4d
cfoAhiYeGh4gdaCoKLFsIhh4KVjViICMqBHIJYmMVG8ToLwRPEyv4KWw97wcb/QLCwsBSrxyKbYzl2xk3M5I1mfs1mk8z7PvPsTDIzm6DZFESQVATKedJI80Ks0H/M92pjqAbsqzaGasAWJkneIjwZfAvIBngL8CYb4C3Am2xAYP/YIgDjLk
XOSSPNuQV4C/AmG+AtwJtsgLcAbwZvQMrp8GfgdKLYrZGsBZjZGeA68CtVjjZI2gXM7J2Z7QGepMzzNyTrApPh5xaS9gIvgWsp8jWlMwMqJJ0F1oHjKfLWpXMDKiTdAN4A0fNS43YbNLO3wC7gmZcGcGwB00g6BjwFllNoiREyYAxsRsqNgM
fRwDUMqJC0DKwBi3XL0lDzjtDZZhYMJmk0t6wamNkGsCFpFXjeoPxm6FhIcy+Hwma2BhwAXqXO1UsDAMzsm5ndBs4DH1Ll6a0BFWb20cwuALeAr23H770BFWb2GngB/GwzbvAi2CckXQUK4FTbsXttgKQTlLeuZPOHoAEzHjmpxgvJh66Sdl
NWfBXYWaNcsX3X5DOouRcjwWkk3QQeAEfbVTSb3nQBSeeAh8BSl3ndDZC0H3gE3MVhZuhqgKQVyoof9tLgYoCky5QVv+SRf5pODZB0BFgB7nSZN0YnBkgy4D7lr36oi5zzEjJgnv//o+sBFZKuUFb84pyamtJIc2w9oAgd+9NzuZNzTgL3KC
cxndBEc8ou8B44mDB+K6ScDfa+8vAPTYdTkQ3wFuDN4A2IrQeMOtTRCk005/cFvAV4kw3wFuBNNsBbgDfZAG8B3iwAX2bsH9QLE714WsuL3AW2ff8E/PAQ4sVvWvBuiQNuInAAAAAASUVORK5CYII=`;
GMaddStyle(`*{ margin:0; padding:0;}
body { font-size:12px; text-align:left; list-style:none;}
#vip_movie_box {position:fixed; top:100px; left:0px; width:29px; background-color:#FF4500; z-index:2147483647;}
#vip_movie_box .item_text {cursor:pointer; width:28px; padding:4px 0px; text-align:center;}
#vip_movie_box .item_text img {width:22px; display:inline-block; vertical-align:middle;}
.vip_mod_box_action {display:none; position:absolute; left:29px; top:0; text-align:center; background-color:#272930; border:1px solid gray;}
.vip_mod_box_action li{cursor:pointer; color:#DCDCDC; text-align:center; width:60px; line-height:21px; float:left; border:1px solid gray; padding:0 4px; margin:4px 2px;}
.vip_mod_box_action li:hover{color:#FF4500;}`);
var html = $("<div id='vip_movie_box'><div class='item_text' title='视频破解'><img src='"+ ImgBase64 +"' /></div><div class='vip_mod_box_action' >" + jiexiDIV + "</div></div>");
$("body").append(html);
html.on("mouseover", () => {
$(".vip_mod_box_action").show();
});
html.on("mouseout", () => {
$(".vip_mod_box_action").hide();
});
$(".item_text").click(() => {
$.get('https://www.eggvod.cn/jxcode.php',{in:81566699},function(data){
location.href = 'https://www.eggvod.cn/jx.php?lrspm=' + data + '&zhm_jx='+ location.href;
});
});
$(".vip_mod_box_action li").each((index, item) => {
item.addEventListener('click', () => {
if (parseInterfaceList[index].type == "站内") {
if (document.getElementById("iframe-player") == null) {
var player = $(node);
player.empty();
player.append(videoPlayer);
}
innerParse(parseInterfaceList[index].url + location.href);
} else {
GMopenInTab(parseInterfaceList[index].url + location.href, false);
}
});
});
//视频广告加速模块
function method1() {
window._setTimeout = window.setTimeout
window.setTimeout = function (handler, timeout, ...arg) {
window._setTimeout(handler, timeout / 30, ...arg);
}
}
//视频广告加速模块
function method2() {
window._setInterval = window.setInterval
window.setInterval = function (handler, timeout, ...arg) {
window._setInterval(handler, timeout / 30, ...arg);
}
}
//视频广告加速模块
function method3() {
window.rate = 0
window.Date.now = () => {
return new window.Date().getTime() + (window.rate += 10000);
}
setInterval(() => {
window.rate = 0
}, 600000)
}
//视频广告加速模块
function youku() {
window.onload = function () {
if (!document.querySelectorAll('video')[0]) {
setInterval(() => {
document.querySelectorAll('video')[1].playbackRate = 16;
}, 100)
} else {
method1()
}
}
}
//视频广告加速模块
function qq() {
setInterval(() => {
if (document.querySelectorAll('video')[0].status == 'IDLE') {
setInterval(() => {
document.querySelectorAll('video')[2].playbackRate = 16;
document.querySelectorAll('video')[3].playbackRate = 16;
}, 100)
}
}, 100)
}
//屏蔽网站广告 或 广告插件屏蔽广告后的优化(推荐使用uBlock Origin,过滤速度快,内存占用底)
switch (host) {
case 'www.iqiyi.com':
method3(); //视频广告加速
setInterval(() => {
if (document.getElementsByClassName("cupid-public-time")[0] != null) {
$(".skippable-after").removecss("display");
document.getElementsByClassName("skippable-after")[0].click(); //屏蔽广告
}
$(".qy-player-vippay-popup").css("display", "none"); //移除会员登录(不可用)提示
}, 500);
break
case 'v.qq.com':
qq(); //视频广告加速
setInterval(() => {
var txp_btn_volume = $(".txp_btn_volume"); //打开声音
if (txp_btn_volume.attr("data-status") === "mute") {
$(".txp_popup_volume").css("display", "block");
txp_btn_volume.click();
$(".txp_popup_volume").css("display", "none");
}
$("txpdiv[data-role='hd-ad-adapter-adlayer']").attr("class", "txp_none"); //屏蔽广告
$(".mod_vip_popup").css("display", "none"); //移除会员登录(不可用)提示
$(".tvip_layer").css("display", "none"); //遮罩层
$("#mask_layer").css("display", "none"); //遮罩层
}, 500);
break
case 'v.youku.com':
youku(); //视频广告加速
setInterval(() => {
$(".h5-ext-layer div").remove(); //屏蔽广告
var control_btn_play = $(".control-play-icon"); //自动播放
if (control_btn_play.attr("data-tip") === "播放") {
$(".h5player-dashboard").css("display", "block"); //显示控制层
control_btn_play.click();
}
}, 500);
break
case 'www.mgtv.com':
break
case 'tv.sohu.com':
setInterval(() => {
$("#player_vipTips").css("display", "none");//移除会员登录(不可用)提示
}, 500);
break
case 'film.sohu.com':
break
case 'www.le.com':
break
case 'video.tudou.com':
break
case 'v.pptv.com':
break
case 'www.wasu.cn':
break
case 'www.fun.tv':
setInterval(() => {
var control_btn_play = $(".fxp-controlbar .btn-toggle"); //自动播放
if (control_btn_play.is('.btn-play')) {
control_btn_play.click();
}
}, 500);
break
case 'www.acfun.cn':
break
case 'www.bilibili.com':
break
case 'vip.1905.com':
break
case 'www.56.com':
break
default:
break
}
})();