Untitled
unknown
plain_text
a year ago
4.8 kB
5
Indexable
(async function deleteInstagramPosts() {
const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));
// Sayfa yenilemesini engellemek için gerekli önlem
window.addEventListener('beforeunload', function(event) {
event.preventDefault(); // Sayfa yenilmesini engeller
event.returnValue = ''; // Tarayıcıyı uyarır
});
// Sayfa yenileme durumunu engellemek için interval kullanıyoruz
let preventReload = false;
const preventAutomaticReload = () => {
if (preventReload) {
return false; // Sayfa yenilemeyi durdurur
}
preventReload = true; // Yenileme durdurulacak
return true;
};
// Her saniyede bir sayfa yenilemesini kontrol et
setInterval(() => {
if (preventReload) {
// Eğer sayfa yenilenmesi engellendiyse, işlemi devam ettir
console.log("Sayfa yenilenmesi engellendi.");
} else {
// Sayfa yeniden yüklendiyse, yenileme kontrolünü engelle
preventReload = true;
console.log("Sayfa yeniden yüklendi. Yenilenme engellendi.");
}
}, 100); // Her saniyede bir kontrol eder
const clickFeedButton = async () => {
let feedButton;
// Feed butonuna tıklamadan önce birkaç kez dene
for (let attempts = 0; attempts < 5; attempts++) {
feedButton = document.querySelector('svg[aria-label="Feed"]');
if (feedButton && feedButton.parentElement && feedButton.offsetParent !== null) {
feedButton.parentElement.click();
console.log("Feed butonuna başarıyla tıklandı.");
await delay(100); // Sayfanın hızlıca yüklenmesini bekle
return; // Başarılıysa döngüden çık
}
console.log(`Feed butonuna tıklanamadı, tekrar deniyorum (${attempts + 1}/5)...`);
await delay(500); // Tekrar denemeden önce kısa süre bekle
}
console.error("Feed butonu tıklanamadı!");
throw new Error("Feed butonu tıklanamadı.");
};
const deletePost = async () => {
try {
const moreOptionsButton = document.querySelector('svg[aria-label="More options"]');
if (moreOptionsButton) {
moreOptionsButton.parentElement.click();
console.log("More options menüsü açıldı.");
await delay(500); // Menü açılmasını bekle
} else {
console.log("More options butonu bulunamadı!");
return;
}
const firstDeleteButton = document.querySelector('button._a9--._ap36._a9-_');
if (firstDeleteButton && firstDeleteButton.innerText === "Delete") {
firstDeleteButton.click();
console.log("Silme seçeneği tıklandı.");
await delay(3000); // Onay ekranını bekle
} else {
console.error("Sil butonu bulunamadı!");
return;
}
const confirmDeleteButton = document.querySelector('button._a9--._ap36._a9-_');
if (confirmDeleteButton && confirmDeleteButton.innerText === "Delete") {
confirmDeleteButton.click();
console.log("Silme işlemi onaylandı.");
await delay(300); // Hızlıca işlemin tamamlanmasını bekle
} else {
console.error("Onaylama butonu bulunamadı!");
return;
}
} catch (err) {
console.error("Silme işlemi sırasında hata oluştu:", err);
}
};
const getRandomDelay = () => {
// 3 ila 5 saniye arasında rastgele bir gecikme süresi döndürür
return Math.floor(Math.random() * 2000) + 3000; // 3000ms - 5000ms arası
};
try {
await clickFeedButton();
const maxIterations = 1000;
let iterationCount = 0;
while (iterationCount < maxIterations) {
try {
console.log(`İşlem ${iterationCount + 1} / ${maxIterations}`);
await clickFeedButton(); // Feed butonuna tıklama
await deletePost(); // Gönderi silme işlemi
iterationCount++;
const delayTime = getRandomDelay(); // Rastgele gecikme süresi
console.log(`Bir sonraki işlem için ${delayTime / 1000} saniye bekleniyor...`);
await delay(delayTime); // Rastgele bekleme süresi
} catch (err) {
console.error("Gönderi silinirken hata oluştu:", err);
break;
}
}
console.log("Tüm gönderiler işlendi veya işlem tamamlandı!");
} catch (err) {
console.error("Hata oluştu:", err);
}
})();
Editor is loading...
Leave a Comment