您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
2ch captcha easy solve
// ==UserScript== // @name 2ch-CAPTCHA-MATH // @license GPL-3.0-or-later; https://www.gnu.org/licenses/gpl-3.0.txt // @version 0.1 // @author Master2ch // @description 2ch captcha easy solve // @homepageURL https://t.me/Master2ch // @author Master2ch // @match *://2ch.hk/* // @namespace https://greasyforks.org/ru/users/1120123 // ==/UserScript== (function() { 'use strict'; function solveEquation(equation) { const parts = equation.split(/([\+\-\*\/=])/); // Используется регулярное выражение для разделения уравнения по операторам const operand1 = parts[0].trim() === "?" ? null : parseInt(parts[0].trim()); const operator = parts[1].trim(); const operand2 = parts[2].trim() === "?" ? null : parseInt(parts[2].trim()); const result = parts[4].trim() === "?" ? null : parseInt(parts[4].trim()); if (operand1 === null) { switch (operator) { case "/": case "\\": return result * operand2; case "*": return result / operand2; case "+": return result - operand2; case "-": return result + operand2; } } else if (operand2 === null) { switch (operator) { case "/": case "\\": return operand1 / result; case "*": return result / operand1; case "+": return result - operand1; case "-": return operand1 - result; } } else if (result === null) { switch (operator) { case "/": case "\\": return operand1 / operand2; case "*": return operand1 * operand2; case "+": return operand1 + operand2; case "-": return operand1 - operand2; } } } // Получаем все элементы с классом .captcha__val.input var inputElements = document.querySelectorAll('.captcha__val.input'); // Добавляем обработчик события input к каждому элементу inputElements.forEach(function(inputElement) { inputElement.maxLength = 20; var pattern = /\s*([\d]+|\?)\s*[-+*/\\]\s*([\d]+|\?)\s*=\s*([\d]+|\?)\s/g; // Паттерн для поиска символа '=', числа и пробела с параметром жадности inputElement.addEventListener('input', function(event) { var enteredText = event.target.value; if (pattern.test(enteredText)) { console.log('REPLACE !!!!!!!!'); event.target.value = solveEquation(enteredText); } return true; // Продолжение дальнейших событий }); }); })();