// ==UserScript== // @name Pixiv 小说屏蔽 // @namespace http://tampermonkey.net/ // @version 0.2 // @description 按照pixiv小说的文章简介,系列标题,文章标题,作者,tag来屏蔽小说的一个脚本 // @author DeanShaw // @match https://www.pixiv.net/tags/*/novels?*s_mode=s_tag* // @icon https://www.google.com/s2/favicons?sz=64&domain=chrxw.com // @grant none // @license MIT // @downloadURL none // ==/UserScript== var check_done = 0; var detail_string1 = "#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child("; var detail_string2 = ") > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-1.hwRAzH > div.sc-1c4k3wn-2.kmvfbY > div.sc-1c4k3wn-20.dfbKty > div"; // 此处加入文章描述的屏蔽关键词,以下是两个示例 var detail_keyword = ["后续付费内容请加QQ购买", "伽Q裙"]; var series_string1 = "#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child("; var series_string2 = ") > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-12.dtKrCh > a"; // 此处加入文章系列名称的屏蔽关键词,请注意是文章系列名,不是文章标题 var series_keyword = []; var title_string1 = "#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child("; var title_string2 = ") > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-12.dtKrCh > div > a"; // 此处加入文章标题名称的屏蔽关键词 var title_keyword = []; var author_string1 = "#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child("; var author_string2 = ") > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-9.drcSvz > a"; // 此处加入作者名称的屏蔽关键词 var author_keyword = []; var tag_string1 = "#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child("; var tag_string2 = ") > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-1.hwRAzH > div.sc-1c4k3wn-2.kmvfbY > ul"; // 此处加入文章tag的屏蔽关键词 var tag_keyword = []; function single_check(keywordlist, string1, string2, index, mode=0) { var delete_flag = 0; var temp = document.querySelector(string1+ String(index) + string2); if(temp != null) { for (var j = 0; j < keywordlist.length; ++j) { if(mode == 0) { if(temp.title.search(keywordlist[j]) != -1) { document.querySelector("#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child(" +String(index) + ") > div").remove(); delete_flag = 1; break; } } else { if(temp.innerText.search(keywordlist[j]) != -1) { document.querySelector("#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child(" +String(index) + ") > div").remove(); delete_flag = 1; break; } } } } return delete_flag; } function block_novel() { var temp; // 修改30这个数字来修改屏蔽上限 for (var i=1; i <= 30; i++) { if(single_check(detail_keyword, detail_string1, detail_string2, i) == 1) { continue; }; if(single_check(series_keyword, series_string1, series_string2, i) == 1) { continue; }; if(single_check(title_keyword, title_string1, title_string2, i, 1) == 1) { continue; }; if(single_check(author_keyword, author_string1, author_string2, i, 1) == 1) { continue; }; if(single_check(tag_keyword, tag_string1, tag_string2, i, 1) == 1) { continue; }; } } (function() { 'use strict'; let t = setInterval(function () { //设定循环定时器,1000毫秒=1秒,1秒钟检查一次目标对象是否出现 if(check_done == 0) { let obj = document.querySelector("#root > div.charcoal-token > div > div:nth-child(3) > div > div > div.sc-15n9ncy-0.jORshO > section > div.sc-1eop7y7-0.cJYTWr > div:nth-child(1) > div > div > ul > li:nth-child(1) > div > div.sc-xy7s8e-4.fQSIvl > div > div.sc-1c4k3wn-12.dtKrCh > div > a"); if (obj) { block_novel(); check_done = 1; } } else { block_novel(); } }, 1000); })();