function takiptenCikVeOnaylaBatch(limit = 20, delayBetweenBatches = 5000, scrollDelay = 3000) {
let isRunning = true;
async function processBatch() {
if (!isRunning) return;
let buttons = Array.from(document.querySelectorAll('button[aria-label^="Takip ediliyor"]'));
let batch = buttons.slice(0, limit);
if (batch.length === 0) {
console.log("Yeni buton bulunamadı. Sayfa kaydırılıyor...");
await scrollPage();
return processBatch(); // tekrar başla
}
console.log(`Yeni parti: ${batch.length} kişi takipten çıkarılıyor...`);
for (let i = 0; i < batch.length; i++) {
batch[i].scrollIntoView({ behavior: "smooth", block: "center" });
batch[i].click();
await waitForConfirmAndClick(i + 1);
await sleep(2500); // Her kişi arasında 2.5 sn bekle
}
console.log(`⏳ ${delayBetweenBatches / 1000} sn dinleniliyor...`);
await sleep(delayBetweenBatches);
await scrollPage();
await sleep(scrollDelay);
return processBatch(); // tekrar başla
}
async function waitForConfirmAndClick(index) {
let waited = 0;
return new Promise(resolve => {
let interval = setInterval(() => {
let confirmButton = document.querySelector('button[data-testid="confirmationSheetConfirm"]');
if (confirmButton) {
confirmButton.click();
clearInterval(interval);
console.log(`${index}. kişi takipten çıkıldı.`);
resolve();
} else {
waited += 300;
if (waited > 3000) { // 3 saniye içinde gelmediyse geç
console.warn(`${index}. kişi için onay butonu gelmedi.`);
clearInterval(interval);
resolve();
}
}
}, 300);
});
}
async function scrollPage() {
return new Promise(resolve => {
window.scrollBy(0, 2000); // Aşağı kaydır
setTimeout(() => {
resolve();
}, 2000);
});
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
// Durdurmak için global değişkeni false yapabilirsin
window.durdurTakiptenCikma = () => {
isRunning = false;
console.log("⛔ İşlem durduruldu.");
};
processBatch(); // Başlat
}Çalışan kod bunu yapıştırdıktan ve Enter yaptıktan sonra aşağıdaki kod ile başlatma komutu verebilirsiniz. Dinlenmeli kaydırmalı mükemmel çalışıyor.
Başlatmak İçin takiptenCikVeOnaylaBatch();