您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Group AntiBotLinks into one place for better manual solving
// ==UserScript== // @name ABL GROUPER // @description Group AntiBotLinks into one place for better manual solving // @version 1.0 // @author WXC // @match *://*/* // @grant none // @require https://code.jquery.com/jquery-3.6.0.min.js // @run-at document-idle // @noframes // @namespace https://greasyfork.org/users/713625 // ==/UserScript== this.$ = this.jQuery = jQuery.noConflict(true); (function() { 'use strict'; var $ = window.jQuery; $(document).ready(function() { var auto_last_word = 1; // 0/1 auto click last word (1) var resize_small_q = 1; // 0/1 scale up small-height question (1) setTimeout( function() { function cl( text ) { var cssRule = "border-left: 3px solid #f1b44c; padding-left: 5px; "; setTimeout(console.log.bind(console, "%c"+ text, cssRule), 0); } if( $("#antibotlinks").length > -1 ) { var abl_q_src = $("#antibotlinks_reset").prev("img").attr("src"); var abl_tmp = new Image(); abl_tmp.src = abl_q_src; var abl_q_width = abl_tmp.clientWidth; var abl_q_height = abl_tmp.clientHeight; var my_height_q = ''; var my_height_b = ''; if( resize_small_q == 1 ) { my_height_q = 35; // question img height (35) my_height_b = 50; // buttons img height (50) // you can set own dimension and scale if( abl_q_width < 150 ) my_height_q *= 1.3; // 1.3 = +30% } var abl_q_img = '<img src="' + abl_q_src +'" style="height: '+ my_height_q +'px !important; ">'; var img = ''; var rel = ''; var abl_btn_data = ''; var abl_cnt = 0; var abl_clicks = 0; $("#antibotlinks").closest('form').find('a').each( function() { rel = $(this).attr('rel') img = $(this).find("img").attr("src"); if( rel > 0 && img.length > 0 ) { abl_btn_data += `<img src="`+ img +`" height="`+ my_height_b +`" data-abl="`+ rel +`" class="abl_btn abl_abl_hand">`; abl_cnt ++; } }); if( $("#antibotlinks").closest('form').is(":visible") ) { cl( "ABL visible" ); if(!$("#i_bg").length) { $("html").append(` <div id="i_bg" style="position: fixed; z-index: 99999999; background-color: #212529; opacity: 0.98; top: 0px; left: 0px; width: 100%; height: 100%; display: none;"> <div id="i_box" style="position: fixed; z-index: 99999998; top: 10%; left: 50%; transform: translateX(-50%); text-align: center; font: bold 16px arial; line-height: 150%; opacity: 1; border: 1px solid #000; padding: 50px; border-radius: 10px;" class="abl_bg_light"> `+ abl_q_img +` <br><br> <div style="font: 14px arial;"> <span class="abl_theme" style="float:left; margin: 0px 20px;">Hover to THEME</span> <span class="abl_reset abl_abl_hand" style="float:right; margin: 0px 20px;">Click to RESET</span> </div> <br><br><br> `+ abl_btn_data +` </div> </div> <style> #i_box a, #i_box a:visited { line-height: 150%; font-size: 24px; color: #000000; } .abl_btn { margin: 0px 10px; border-bottom: 1px solid #ccc; } .abl_abl_hand { cursor: pointer; } .abl_bg_light { background-color: #ffffff; color: #cccccc; } .abl_bg_dark { background-color: #000000; color: #303030 </style> `); $("#i_bg").fadeIn("fast"); var tit1 = document.title; setInterval(function(){ var title = document.title; var tit2 = "ABL!"; document.title = (title == tit2 ? tit1 : tit2 ); }, 1000); } } else { cl( "ABL not visible" ); } $(document).on("click", "img[data-abl]", function(e){ $("#antibotlinks").val( $("#antibotlinks").val() + " "+ $(this).data("abl") ); // starting space needed! $(this).hide(); abl_clicks++; if( auto_last_word == 1 && abl_clicks == ( abl_cnt -1 ) ) { // auto click last word $(".abl_btn:visible").click(); abl_clicks++; } if( abl_clicks == abl_cnt ) { // all btns clicked $("#i_bg").fadeOut("fast"); $("#antibotlinks").closest('form').find(':submit').removeClass('d-none').show().css('display','block'); // try to display submit button cl( "ABL solution:"+ $("#antibotlinks").val() ); // hide original buttons for (let i = 1; i <= abl_cnt; i++) { $("#antibotlinks").closest('form').find("a").eq(i).fadeOut(); } $("#antibotlinks_reset").after(`<p>`+ $("#antibotlinks").val() +`</p>`); } }); $(document).on("click", ".abl_reset", function(e){ // reset $("#antibotlinks").val(""); $("img[data-abl]").show(); abl_clicks = 0; cl( abl_clicks ); }); $(document).on("mouseover", ".abl_theme", function() { $("#i_box").toggleClass("abl_bg_light abl_bg_dark"); }); } else { cl( "No ABL detected" ); } }, ( 2 * 1000 ) ); // wait for site fully load (sec) }) })();