Greasemonkey用简易Pixiv过滤

不用再担心被瞎眼!不想看到的东东好走不送~欢迎使用上有疑问者咨询。

注意:

1、小说页标题标签过滤

2、画像页标题过滤,点入后若标签包含关键词则自动后退历史

3、页面结构改变后会失效(容易改)

4、过滤使用正则表达式,可自行修改


// ==UserScript==
// @name        Pixiv Novel
// @namespace   Pixiv
// @include     https://www.pixiv.net/*
// @version     1
// @grant       none
// ==/UserScript==
var filters = /エルリ|エレリ|リヴァイ受|アン兵|言切|バンユガ|エリチャ/;

function needFilter(str){
    return filters.test(str);
}

function start(){
    var items = document.getElementsByClassName('novel-item'), i, j, len, len2, tags, flag, title;
    for(i = 0, len = items.length; i < len; i++) {
        tags = items[i].querySelectorAll('.tags a');
        flag = false;
        for(j = 0, len2 = tags.length; j < len2; j++) {
            if(needFilter(tags[j].innerHTML)){
                flag = true;
                break;
            }
        }
        title = items[i].getElementsByClassName('title')[0];
        if(title && needFilter(title.innerHTML)) {
             flag = true;
        }
        title = items[i].querySelectorAll('.main p')[0];
        if(title && needFilter(title.innerHTML)) {
             flag = true;
        }
        if(flag) {
            items[i].parentNode.style.display = 'none';
       }
    }
    items = document.getElementsByClassName('image-item');
    for(i = 0, len = items.length; i < len; i++) {
        title = items[i].getElementsByClassName('title')[0];
        if(title && needFilter(title.title)) {
            items[i].style.display = 'none';
        } 
    }
   
    flag = false;
    tags = document.querySelectorAll('.work-tags a');
    for(i = 0, len = tags.length; i < len; i++) {
        if(needFilter(tags[i].innerHTML)) {
            flag = true;
            break;
       }
    }
    if(flag) {
        history.back(-1);
    }
}

document.addEventListener('DOMContentLoaded', start, false);

评论
热度(1)

© 枕瑟 | Powered by LOFTER