您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
ganjel tok
// ==UserScript== // @name Verifikasi SSCASN V2 // @namespace http://tampermonkey.net/ // @version 2 beta // @description ganjel tok // @author L1L15 5URY4N1 // @match https://verifikasi-sscasn.bkn.go.id/cpns/verifikasi* // @grant none // ==/UserScript== (function() { 'use strict'; let isProcessing = false; function clickElementByXPath(xpath) { let elements = document.evaluate(xpath, document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); let clicked = false; for (let i = 0; i < elements.snapshotLength; i++) { let element = elements.snapshotItem(i); if (element) { element.click(); console.log('Clicked element with XPath: ' + xpath); clicked = true; } } return clicked; } function tryClickingElement(xpath, retries = 5, delay = 1000, callback) { let attempts = 0; function attemptClick() { if (clickElementByXPath(xpath)) { console.log('Successfully clicked element with XPath: ' + xpath); if (callback) callback(); } else if (attempts < retries) { attempts++; console.log('Retrying to find element with XPath: ' + xpath); setTimeout(attemptClick, delay); } else { console.log('Failed to find element after ' + retries + ' attempts with XPath: ' + xpath); if (callback) callback(); } } attemptClick(); } function clickDocumentElements() { if (isProcessing) return; isProcessing = true; var elementsToClick = [ "//*[contains(text(), 'Surat Tanda Registrasi (STR)')]", "//*[contains(text(), 'Surat Pernyataan 5 Poin')]", "//*[contains(text(), 'Surat Lamaran')]", "//*[contains(text(), 'Kartu Tanda Penduduk')]", "//*[contains(text(), 'Surat Akreditasi Perguruan Tinggi dan a...')]", "//*[contains(text(), 'Sertifikat Kursus atau Ketrampilan (1)')]", "//*[contains(text(), 'Ijazah Asli')]", "//*[contains(text(), 'Transkrip atau Daftar Nilai Asli')]", "//*[contains(text(), 'Pas Foto terbaru Pakaian Formal dengan ...')]" ]; elementsToClick.forEach(function(xpath, index) { setTimeout(function() { tryClickingElement(xpath); }, index * 2000); }); setTimeout(function() { tryClickingElement("//*[contains(text(), 'Tidak Valid')]"); }, elementsToClick.length * 2000 + 1000); setTimeout(function() { tryClickingElement("//*[contains(text(), 'setuju')]", 5, 1000, function() { // Reset the processing flag after all clicks isProcessing = false; console.log('Processing complete, ready for new actions.'); }); }, elementsToClick.length * 2000 + 3000); } function addManualTriggerButton() { const button = document.createElement('button'); button.innerText = 'Buka Dokumen'; button.style.position = 'fixed'; button.style.top = '50%'; button.style.right = '0'; button.style.transform = 'translateY(-50%)'; button.style.backgroundColor = 'red'; button.style.color = 'white'; button.style.border = 'none'; button.style.borderRadius = '0'; button.style.padding = '10px 20px'; button.style.cursor = 'pointer'; button.style.zIndex = '1000'; button.style.fontSize = '16px'; button.addEventListener('click', clickDocumentElements); document.body.appendChild(button); } window.addEventListener('load', function() { setTimeout(function() { addManualTriggerButton(); }, 2000); }); })();