您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
隐藏大量发帖无人回复者(就是你,广告哥)的帖子,自动加载下一页以凑到30贴以上
// ==UserScript== // @name hide S1 ads (x) // @namespace http://tampermonkey.net/ // @version 0.4 // @description 隐藏大量发帖无人回复者(就是你,广告哥)的帖子,自动加载下一页以凑到30贴以上 // @author whzfjk // @match https://bbs.saraba1st.com/2b/forum-*-*.html // @grant none // ==/UserScript== function killAds() { 'use strict'; var post_threshold = 4; var replied_threshold = 2; var rst = document.evaluate( '//*[starts-with(@id, "normalthread_")]', document, null, XPathResult.ANY_TYPE, null); var post = rst.iterateNext(); var collect = new Map(); var remain = 0; while (post) { remain += 1; var name = post.querySelector('cite > a').text; if (!collect.get(name)) { collect.set(name, {cnt: 0, noreply_cnt: 0, posts: []}); } var ent = collect.get(name); ent.cnt += 1; var reply = parseInt(post.querySelector('tr > td.num > a').text); if (reply === 0) { ent.noreply_cnt += 1; } ent.posts.push(post); post = rst.iterateNext(); } for (var [k, v] of collect) { if (v.cnt > post_threshold && v.cnt - v.noreply_cnt < replied_threshold) { console.log("prepare to hide " + k); for (var p of v.posts) { p.hidden = true; } remain -= v.posts.length; } } return remain; } (function() { 'use strict'; var nextPage = document.querySelector('#autopbn'); for (var posts = killAds(); posts < 30; posts = killAds()) { console.log('need more posts'); nextPage.click(); } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址