// ==UserScript==
// @name BiliBili哔哩哔哩推荐关键词屏蔽
// @description BiliBili哔哩哔哩屏蔽与相应关键词有关的视频与直播
// @namespace https://space.bilibili.com/482343
// @author 超神越鬼
// @license 超神越鬼
// @version 1.0
// @include *bilibili.com*
// @exclude *message.bilibili.com*
// @run-at document-end
// ==/UserScript==
//dd 都屏蔽, bt 只屏蔽标题, zz 只屏蔽up主 ,"","","","","","","","",""
var dd = new Array("","","","","","","","","");
var bt = new Array("","","","","","","");
var zz = new Array("","","","","","","","");
bt.push.apply(bt,dd); zz.push.apply(zz,dd);
var i,c,fl,x;
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);
//console.log("结果: ",zz[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除1 ", 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);
//console.log("结果: ",zz[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除2 ", 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);
//console.log("结果: ",zz[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除2b ", 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);
//console.log("结果: ",zz[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除3 ", 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);
//console.log("结果: ",zz[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除4 ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除5 ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除6 ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除6b ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除7 ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除8 ", 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);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除9 ", fl.snapshotItem(i));
fl.snapshotItem(i).remove();
}
}
fl = document.evaluate('//ul[@class="clearfix cube-list"]/li[@class="small-item fakeDanmu-item"]/a[@class="title" and contains(text(),"' + bt[x] + '")]/..', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
//console.log("结果: ",bt[x]," ",fl);
if (fl.snapshotLength) {
for (i = 0; i < fl.snapshotLength; i++) {
//console.log("删除10 ", fl.snapshotItem(i));
fl.snapshotItem(i).remove();
}
}
}}
//console.log(" 运行 ");
return false;
}
if (location.href.indexOf("video/")>-1 || location.href.indexOf("play/")>-1){
//console.log("A 视频播放模式 ",location.href);
setTimeout(sc,4000);
}else{
//console.log("B 列表模式 ",location.href);
setInterval(sc,2000);
}