Forked from arterm-sedov/ok_remove_all_posts.js
Last active
February 14, 2024 08:36
-
-
Save d2boy/a6d1c68d8a3165dbd530057cbb7158ef to your computer and use it in GitHub Desktop.
A script to remove all posts from your ok.ru wall
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
async function deleteOkPosts() { | |
// Получаем элемент при наведении на который появляется блок с "удалить" | |
let selectPostLink = document.body.querySelectorAll('.feed_menu_ic'); | |
for (var i = 0; i < selectPostLink.length; i++) { | |
// Создаем событие наведения на элемент | |
var event = new Event('mouseenter', { | |
'view': window, | |
'bubbles': true, | |
'cancelable': true | |
}); | |
// Добавляем событие (Имитируем наведение курсора на элемент) | |
selectPostLink[i].dispatchEvent(event); | |
// Ждем секунд, чтобы сработали скрипты ОК | |
await new Promise(r => setTimeout(r, 1000)); | |
// Получаем элемент Удалить (в этом году 3 элемент) | |
let deleteElement = document.body.querySelectorAll('#hook_Block_ShortcutMenu .u-menu_li a')[3]; | |
// Если элемента Удалить нет, то подождем 2 секунд (чтобы все еще подгрузилось) и пропустим эту итерацию цикла | |
if (deleteElement == undefined) { | |
await new Promise(r => setTimeout(r, 2000)); | |
console.log("Пропуск " + [i]); | |
continue; | |
} else { // Если элемент есть, то имитируем клик по нему | |
console.log([i] +" - " + deleteElement); | |
deleteElement.click(); | |
} | |
} | |
console.log(selectPostLink.length + ' posts deleted'); | |
}; | |
if (confirm("Удалить темы?")){ | |
deleteOkPosts(); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment