您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
BiliBili哔哩哔哩屏蔽与相应关键词有关的视频与直播
当前为
// ==UserScript== // @name BiliBili哔哩哔哩推荐关键词屏蔽 // @description BiliBili哔哩哔哩屏蔽与相应关键词有关的视频与直播 // @namespace https://space.bilibili.com/482343 // @author 超神越鬼 // @license 超神越鬼 // @version 2.9 // @include *t.bilibili.com* // @include *www.bilibili.com* // @include *live.bilibili.com* // @include *space.bilibili.com* // @exclude *message.bilibili.com* // @run-at document-end // @grant GM_setValue // @grant GM_getValue // ==/UserScript== //dd 都屏蔽, bt 只屏蔽标题, zz 只屏蔽up主 在这里添加,运行一次后会保存,在存储里修改删除。 ("","","","",""); var dd = new Array("","","","",""); var bt = new Array("","","","",""); var zz = new Array("","","","",""); var i,c,fl,fk,x,debugx = 1,a,b; var toObj = function( arr ){ var obj = {}; for(var temp in arr){ obj[arr[temp]] = true; } return obj;}; var toArr = function( obj ){ var arr = []; for(var temp in obj){ arr.push(temp); } return arr;}; var together = function( a,b ){ for(var temp in b){ if(b[temp]!=null && b[temp]!="" && b[temp]!="null" && b[temp].length<40)a.push(b[temp]);}}; var getUniq = function(arr){ return toArr( toObj(arr) );}; var ddx = GM_getValue("dd",new Array("")); var btx = GM_getValue("bt",new Array("")); var zzx = GM_getValue("zz",new Array("")); together(ddx,dd);together(btx,bt);together(zzx,zz); ddx =getUniq(ddx);btx =getUniq(btx);zzx =getUniq(zzx); dd = new Array(); bt = new Array(); zz = new Array(); together(dd,ddx);together(bt,btx);together(zz,zzx); GM_setValue("dd", dd);GM_setValue("bt", bt);GM_setValue("zz", zz); bt.push.apply(bt,dd); zz.push.apply(zz,dd); function sc() { for (x in zz) { if(zz[x] != ""){ //在线列表up主 fl = document.evaluate('//div[@class="online-list"]/div[@class="ebox"]/div[@class="dlo"]/a[contains(text(),"' + zz[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者1 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } //直播up主 fl = document.evaluate('//div[@class="live-card"]/a/div[@class="up"]/div[@class="txt"]/p[@class="name" and contains(text(),"' + zz[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者2 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="room-ctnr w-100"]/div[@class="room-card-wrapper p-relative dp-i-block"]/a/div[@class="card-info-ctnr"]/div[@class="text-info-ctnr body-bg p-relative dp-i-block v-middle"]/div[@class="room-anchor card-text p-relative"]/span[contains(text(),"' + zz[x] + '")]/../../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者3 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } //视频up主 fl = document.evaluate('//div[@class="zone-list-box"]/div[@class="video-card-common"]/a[@class="up"]/i[contains(text(),"' + zz[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者4 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="zone-list-box storey-box"]/div[@class="video-card-common"]/a[@class="up" and contains(text(),"' + zz[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者5 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="ext-box"]/div[@class="video-card-common ex-card-common"]/a[@class="ex-up"]/i[contains(text(),"' + zz[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者6 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="ext-box"]/div[@class="video-card-common ex-card-common"]/a[contains(text(),"' + zz[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者7 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="rec-list"]/div[@class="video-page-card"]/div[@class="card-box"]/div[@class="info"]/div[@class="count up"]/a[contains(text(),"' + zz[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者8 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="zone-list-box"]/div[@class="article-card"]/div/a[@class="up" and contains(text(),"' + zz[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者9 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//*[@id="reportFirst1"]/div[2]/div/div[1]/a/div/p[@class="up" and contains(text(),"' + zz[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者10 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="groom-box-m clearfix"]/div[@class="groom-module"]/a/div[@class="card-mark"]/p[@class="author" and contains(text(),"' + zz[x] + '")]/../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("作者11 ",zz[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } }} for (x in bt) {if(bt[x] != ""){ //在线列表标题 fl = document.evaluate('//div[@class="online-list"]/div[@class="ebox"]/a[1]/p[contains(text(),"' + bt[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题1 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } //直播标题 fl = document.evaluate('//div[@class="live-card"]/a/div[@class="up"]/div[@class="txt"]/p[@class="desc" and contains(text(),"' + bt[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题2 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="room-ctnr w-100"]/div[@class="room-card-wrapper p-relative dp-i-block"]/a/div[@class="card-info-ctnr"]/div[@class="text-info-ctnr body-bg p-relative dp-i-block v-middle"]/span[contains(text(),"' + bt[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题3 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } //视频标题 fl = document.evaluate('//div[@class="zone-list-box"]/div[@class="video-card-common"]/a[@class="title" and contains(text(),"' + bt[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题4 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="zone-list-box storey-box"]/div[@class="video-card-common"]/a[@class="title" and contains(text(),"' + bt[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题5 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="ext-box"]/div[@class="video-card-common"]/a[@class="title" and contains(text(),"' + bt[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题6 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="ext-box"]/div[@class="video-card-common"]/a[@class="title"]/span[contains(text(),"' + bt[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题7 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="ext-box"]/div[@class="video-card-common ex-card-common"]/div/a/p[contains(text(),"' + bt[x] + '")]/../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题8 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="storey-box clearfix"]/div[@class="spread-module"]/a/p[@class="t" and contains(text(),"' + bt[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题9 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="rec-list"]/div[@class="video-page-card"]/div[@class="card-box"]/div[@class="info"]/a[@class="title" and contains(text(),"' + bt[x] + '")]/../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题10 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="zone-list-box"]/div[@class="article-card"]/div/a[@class="title" and contains(text(),"' + bt[x] + '")]/../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题11 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//*[@id="reportFirst1"]/div[2]/div/div[1]/a/div/p[1 and contains(text(),"' + bt[x] + '")]/../../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题12 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.evaluate('//div[@class="groom-box-m clearfix"]/div[@class="groom-module"]/a/div[@class="card-mark"]/p[@class="title" and contains(text(),"' + bt[x] + '")]/../../..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); if (fl.snapshotLength) { for (i = fl.snapshotLength-1; i>-1 ; i--) { if (debugx)console.log("标题13 ",bt[x]," : ", fl.snapshotItem(i).innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl.snapshotItem(i)); fl.snapshotItem(i).remove(); } } fl = document.querySelectorAll("#app > div > div.container > div > div > div > div > div.center-box > a"); for (i = fl.length-1; i>-1 ; i--) { if (fl[i].innerText.indexOf(bt[x])>-1){ if (debugx)console.log("标题14 ",bt[x]," : ", fl[i].innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl[i].parentElement.parentElement.parentElement); fl[i].parentElement.parentElement.parentElement.remove(); } } fl = document.querySelectorAll("#ranking-all > div > ul.rank-list.hot-list > li > a") for (i = fl.length-1; i>-1 ; i--) { if (fl[i].innerText.indexOf(bt[x])>-1){ if (debugx)console.log("标题15 ",bt[x]," : ", fl[i].innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl[i].parentElement); fl[i].parentElement.remove(); } } fl = document.querySelectorAll("div.rank-list > div > a > p") for (i = fl.length-1; i>-1 ; i--) { if (fl[i].innerText.indexOf(bt[x])>-1){ if (debugx)console.log("标题16 ",bt[x]," : ", fl[i].innerText.replace(/\n/g," ").replace(/\s\s/g," "),'\n ',fl[i].parentElement.parentElement); fl[i].parentElement.parentElement.remove(); } } } } //个人页面 fl = document.querySelectorAll("#submit-video-list > ul.clearfix.cube-list > li > a.title"); if (fl.length>0) { for (i = 0; i < fl.length; i++) { a=0; for (x in bt) { if(bt[x] != ""){ if(fl[i].innerText.indexOf(bt[x])>-1){ a=1; break; } } } if (fl[i].parentElement.style.display!="none" && a==1){ if (debugx)console.log("个人页面标题隐藏 ",bt[x]," :",fl[i].innerText); fl[i].parentElement.style.display="none"; } } } //游戏频道推荐 fl = document.querySelectorAll("div.video-card-box > div > div > a > p.title"); fk = document.querySelectorAll("div.video-card-box > div > div > a > p:nth-child(5) > span"); if (fl.length>0) { for (i = 0; i < fl.length; i++) { a=0; for (x in bt) { if(bt[x] != ""){ if(fl[i].innerText.indexOf(bt[x])>-1){ a=1; break; } } } if (fl[i].parentElement.style.display!="none" && a==1){ if (debugx)console.log("频道推荐标题隐藏 ",bt[x]," :",fl[i].innerText); fl[i].parentElement.style.display="none"; continue; } if (a==0){ fk = fl[i].parentElement.querySelector('p:nth-child(5) > span').innerText; for (x in zz) { if(zz[x] != ""){ if(fk.indexOf(zz[x])>-1){ a=1; break; } } } } if (fl[i].parentElement.style.display!="none" && a==1){ if (debugx)console.log("频道推荐作者隐藏 ",zz[x]," :",fk); fl[i].parentElement.style.display="none"; continue; } if (fl[i].parentElement.style.display=="none" && a==0){ if (debugx)console.log("频道推荐显示 :",fl[i].innerText," ",fk); fl[i].parentElement.style.display="block"; } } } return false; } if ((location.href.indexOf("live.bilibili.com")>-1&& location.href.split(".com/")[1].length>0)){return} if ((location.href.indexOf("video/")>-1&& location.href.indexOf("online.html")<0) || location.href.indexOf("play/")>-1){ if (debugx)console.log("A 视频播放模式 ",location.href); setTimeout(sc,10000); }else{ if (debugx)console.log("B 列表模式 ",location.href); setTimeout(sc,1500); setInterval(sc,4500); }