Многие популярные паблики Вконтакте зарабатывают тем, что рекламируют друг друга, публикуя записи со ссылками «Читать далее» или «Узнать как», которые после перехода требуют вступить в группу или подписаться. Иногда полезные и интересные записи тонут в длинных списках таких «мусорных» новостей.

В интернете нашлось несколько способов очистить от них ленту.

Если у вас Google Chrome, вам поможет пара расширений:

1. VkClean

Это расширение работает полностью в автоматическом «интеллектуальном» режиме. Доступные настройки позволяют включать / отключать рекламный блок слева, новости от приложений (уведомления от игр и т д), репосты, сокращенные ссылки, новости «Читать далее», ведущие на другие паблики.
vkclean

2. VK Spoilers

Расширение, разработанное бывшим сотрудником Вконтакте обладает более гибкой настройкой, позволяя создавать собственные правила и даже использовать для этого регулярные выражения.
Оно скрывает из ленты новостей и со стен ВКонтакте записи, содержащие определенные словосочетания, а также репосты (копии чужих записей).
В настройках каждого правила можно указать, что делать с «плохой» записью — просто скрыть под спойлер или полностью удалить.

vkspoiler

Если вы пользуетесь другим браузером, умельцы в интернете разработали скрипт-фильтр для очистки ленты


function setWords() {
    words = prompt('Enter bad words and phrases. Comma separated (,).',localStorage.getItem('bad_words'));
    if(typeof(words) == 'string') {
        localStorage.setItem('bad_words',words);
    }
}

function hunt() {
    if( ! localStorage.getItem('bad_words')) {
        setWords();
        return;
    }
    textArr = localStorage.getItem('bad_words').split(',');
    posts = document.getElementsByClassName('feed_row');
    for(ii =0; ii<posts.length; ii++) {
        for(ll = 0; ll<textArr.length; ll++) { if(posts[ii].innerText.search(textArr[ll].trim()) > 0) {
                thepost = document.getElementsByClassName('feed_row')[ii].children[0];
                idToDel = thepost.getAttribute('id').split('post')[1];
                delElement = document.getElementById('post_delete'+idToDel);
                if(delElement) {delElement.click();}
                break;
            }
        }
    }
    setTimeout('hunt()',5000);
};

hunt();
if( ! document.getElementById('vk_feed_cleaner')) {
    menuVK=document.getElementById('side_bar').children[0]; 
    a=document.createElement('a');   
    a.setAttribute('href','javascript:setWords();');
    a.innerText = 'Set Bad Words';
    li=document.createElement('li'); 
    li.setAttribute('id','vk_feed_cleaner');
    li.appendChild(a);
    menuVK.appendChild(li);
}

Как пользоваться:
1. Запускаем в консоли скрипт.
2. При первом запуске во всплывающем окне он попросит ввести «плохие» слова или фразы через запятую
3. Скрипт сохраняет слова в localStorage
4. Каждые 5 секунд скрипт «сканирует» ленту по всем элементам с классом «feed_row»
5. Если в тексте элемента найдено хотя бы 1 плохое слово, программно нажимается HTML элемент удаления поста.
6. В боковое меню помещается ссылка: Set Bad Words, по клику на которую можно изменить список плохих слов.

Быстрая настройка: http://jsfiddle.net/U2r9k/7/
По ссылке можно произвести быструю настройку скрипта, а затем сгенерированную ссылку из правого нижнего блока добавить на панель закладок для быстрого запуска и активировать при необходимости.
Этот способ не оптимален, но тоже работает. Возможно автор когда-нибудь доработает его до целого сервиса.

Источники: habrahabr.ru

3 комментарий для “Как очистить новостную ленту Вконтакте от рекламных и вирусных записей и новостей”

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *