Социальные сети
Как быстро удалить все записи из группы ВКонтакте
Часто бывает, что группу в социальной сети ВКонтакте требуется переделать под новую тематику. Допустим, в ней уже собрана некоторая аудитория, но сама тематика группы устарела, либо необходимо удалить посты группы по каким-то другим причинам. Если группа существует давно, в ней может скопиться не одна тысяча постов. Удаление поста — дело пары секунд, но когда постов много, на это может уйти значительное время.
Представьте: В группе публиковалось по 5 постов в день в течение года. Это 1825 постов за год. Даже если удалять каждый пост за 2 секунды, на это придется потратить больше часа вашего времени. А если по 4 секунды на пост — это 2 часа. А если постов больше?
Есть простой способ быстро удалить все посты, опубликованные в группе ВКонтакте. Для этого даже не нужно ставить никакие отдельные программы, достаточно скрипта.
Чтобы быстро удалить все записи из группы ВКонтакте, проделайте следующее:
- Откройте нужную группу ВКонтакте, в которой вы имеете достаточные права для удаления записей со стены.
- Далее запустите консоль браузера. В зависимости от того, какой браузер вы используете, будут отличаться способы запуска консоли. В браузере Google Chrome для этого достаточно нажать F12 и в открывшемся справа меню перейти в пункт Console.
- Вставьте приведенный ниже код скрипта в консоль и нажмите Enter, чтобы запустить обработку скрипта:
var test = false, offset = 50, pause = 1, count = 0;function itit() {offset = prompt('Кол-во первых записей которые нужно оставить.\nУбедитесь что на странице есть больше больше чем указанное кол-во', 50);pause = prompt('Пауза в секундах перед запросами (рекомендуем 1-10)', 1);test = confirm("Вы подтверждаете что хотите удалить все записей в группе/странице?\nКроме первых "+offset+"\n\nНаблюдать за процессом можно в консоли (F12 > console).\nЧтобы остановить удаление, просто закройте страницу.");document.querySelectorAll('#wall_more_link')[0].click();scrollingTest()}function scrollingTest() {document.querySelectorAll('#wall_more_link')[0].click();var posts = document.querySelectorAll('div._post');console.log('Предварительная загрузка записей', posts.length, 'из', offset*2);if(posts.length < offset*2) {setTimeout(function(){scrollingTest() }, 1500);} else {setTimeout(function(){removePost();}, 1500);}}function removePost(){document.body.scrollTop = 9999999;if(test == true) {count++;var post = document.querySelectorAll('div._post')[offset];if(post) {console.log('удаление поста с id '+post.id);post.scrollIntoView();post.querySelector('[onclick*="deletePost"]').click();if(count > 10) {console.log('Нажатие на кнопку "показать ещё"');count = 0;document.querySelectorAll('#wall_more_link')[0].click();}setTimeout(function(){post.remove();removePost();}, pause * 1000);} else {alert('Похоже что посты закончились или требуется перезапустить скрипт');}}}itit();
- Появится сообщение, в котором нужно указать, сколько постов должно остаться в группе (обратите внимание: речь идет о постах с более поздней датой). Введите нужное значение и нажмите “ОК”.
- Далее нужно указать время обработки запроса на удаление поста. Если у вас нет проблем с производительностью компьютера и скоростью интернета, можно ставить 1 секунду — скрипт хорошо работает и при таком значении. Далее жмите “ОК”.
- Следующий шаг — это подтверждение действий. После того как вы подтвердите все указанные значения, начнется обработка запроса.
- В консоли можно следить за процессом удаления записей.
Важно: Пока работает скрипт нельзя закрывать вкладку браузера, но можно переключаться на другие вкладки и работать в других приложениях. На слабых компьютерах при работе в других приложениях может произойти выгрузка вкладки браузера из оперативной памяти, тогда работа скрипта завершится.
Да, скрипт не идеален. Да, бывает, что он сбоит. Но, самое главное, он работает. На его запуск требуется 10-20 секунд, а сэкономить вам он может часы. Пользуйтесь!