Created
June 4, 2020 09:29
-
-
Save maximal/c54da93fc4b5194b1552ea7c0875b025 to your computer and use it in GitHub Desktop.
Пакетное удаление сообщений ВКонтакте
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
// Сколько ждать после нажатия крестика удаления, миллисекунды | |
const MS_DELAY_AFTER_DELETE_CLICK = 1000; | |
// Сколько ждать после нажатия кнопки подтверждения удаления, миллисекунды | |
const MS_DELAY_AFTER_DELETE_CONFIRM = 500; | |
// Можно эти переменные изменить: поэкспериментируйте в зависимости от скорости страницы. | |
// Чем быстрее загружаются сообщения работает удаление, тем меньше можно поставить. | |
let messagesDeleted = 0; | |
let running = false; | |
function deleteDialog() { | |
if (running) { | |
// Если уже запущено, не запускаем второй раз | |
return; | |
} | |
running = true; | |
const buttons = document.querySelectorAll('.nim-dialog--close'); | |
console.info('Messages shown: ' + buttons.length); | |
const button = buttons[2]; | |
//console.log(button); | |
// Нажать на кнопку удаления | |
button && button.click(); | |
setTimeout(function () { | |
// Если появилось подтверждение удаления, нажать и его | |
const delBtns = document.querySelectorAll('.popup_box_container td:nth-child(2) .flat_button'); | |
delBtns.forEach(function (btn) { btn.click(); }); | |
setTimeout(function () { | |
running = false; | |
deleteDialog(); | |
}, MS_DELAY_AFTER_DELETE_CONFIRM); | |
messagesDeleted++; | |
console.info('Messages deleted: ' + messagesDeleted); | |
}, MS_DELAY_AFTER_DELETE_CLICK); | |
// Проскроллить до конца страницы, чтобы подгрузить ещё сообщения | |
if (buttons.length < 50) { | |
window.scrollTo(0, document.body.scrollHeight); | |
} | |
} | |
deleteDialog(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment