Skip to content

Instantly share code, notes, and snippets.

@arterm-sedov
Last active March 31, 2024 11:34
Show Gist options
  • Save arterm-sedov/6ddab675c642b57247ce216b74800dc7 to your computer and use it in GitHub Desktop.
Save arterm-sedov/6ddab675c642b57247ce216b74800dc7 to your computer and use it in GitHub Desktop.
A script to remove all posts from your ok.ru wall
(function ()
{
'use strict';
if (!confirm('Удалить все заметки со стены?')) return;
var deletePostLink = document.body.querySelectorAll('a.delete-stub_cancel');
for (var i = 0; i < deletePostLink.length; i++)
{
deletePostLink[i].click();
}
alert( 'удалено записей:'+deletePostLink.length);
}());
@d2boy
Copy link

d2boy commented Feb 14, 2024

Код у ОК сменился, использовал другой скрипт

`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));

// Получаем элемент Удалить
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();
}`

@arterm-sedov
Copy link
Author

Спасибо, может, кому-то новый рецепт пригодится

@goglik2
Copy link

goglik2 commented Mar 31, 2024

код не работает если есть темы от других авторов, которые уже не являются модераторами группы, если получится исправить скину

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment