Фильтрация RSS ленты Хабрахабра с помощью Yahoo!Pipes

в 15:31, , рубрики: rss, Yahoo!Pipes, хабрахабр, метки: ,

Здравствуйте, Уважаемое читатели.

Тема фильтрации RSS потоков с помощью Yahoo!Pipes уже освещалась (Например вот), но хотелось бы показать более простой и доступный для простых смертных способ.

Итак, буквально неделю назад все посты на Хабре имели вид habrahabr.ru/blogs/Название_блога/Номер_поста. По наличию в теле ссылки названия блога можно было легко очистить ленту от неинтересных записей просто отфильтровывая ненужные блоги по ссылке
Фильтрация RSS ленты Хабрахабра с помощью Yahoo!Pipes

Сейчас же, после весеннего обновления, ссылки на посты теперь имеют вид habrahabr.ru/post/Номер_поста/. Пост теперь может быть не в одном хабе а сразу в 3-х. Что ж, это очень интересный подход, однако наша задача научится фильтровать неинтересные хабы.

Одна RSS запись ленты Хабра содержит в себе такую информацию как заголовок поста, ник автора, дату опубликования и прочие данные. Нас же интересует такой параметр записи как category. Он получается перечислением таких составляющих как хабы, к которым относится пост, и метки поста: по этому параметру мы как раз и будем фильтровать.
Фильтрация RSS ленты Хабрахабра с помощью Yahoo!Pipes

А почему мы не можем фильтровать по параметру description? Там же тоже идет перечисление хабов!
Верно, но в description присутствует еще и часть статьи. Моделируем такую ситуацию — я яростный противник Android но при этом эпплофаг, поставил фильтр по слову «Android» чтобы глаза мои не видели новости про эту ОС. Хорошо, теперь моя лента отчищена от упоминаний этой богомерзкой операционки, но ведь теперь если появится статья, в которой упоминается почему iOS лучше Android я её не увижу! Непорядок!

Именно поэтому мы будем фильтровать параметр category, чтобы как можно больше минимизировать риск пропустить полезную/интересную нам статью.

Собственно сам процесс настройки фильтра прост до безобразия: вытаскиваем фильтр и выбираем элементы Block и any в соответствующих списках
Теперь составляем правило:
в качестве параметра сортировки вводим item.category. Раз мы ищем в теле текста, то выбираем в соответствующем списке Contains а в пустое поле вводим имя хаба, которое не хотим видеть в ленте.
Примеры конечных правил: item.category Contains Android, item.category Contains Высокая производительность итд. Думаю, смысл понятен

Как это у нас все будет выглядеть в Yahoo!Pipes
Фильтрация RSS ленты Хабрахабра с помощью Yahoo!Pipes

Первые пару дней придется попотеть и сделать правила на неинтересные хабы, однако через эти же пару дней вы заметите, что ваша лента стала гораздо чище, читать ее стало гораздо приятнее.

Зачем это все нужно, если зарегистрировавшись на Хабре мы сможем сделать всю ту же сортировку просто тыкая галочки ?
Тут, конечно, дело вкуса. Мне вот например удобнее читать ленты в Google Reader, поэтому я пошел таким путём.
Так же, мне интересно читать все новые статьи, а не только захабренные — этот способ как раз удобен в таком случае, ведь хоть регистрация и дает возможность читать новые посты с сортировкой, но показываются посты, опубликованные менее чем 24 часа назад. Согласитесь, такой подход требует ежедневного просмотра раздела «Новые», что очень не удобно. Гораздо удобнее когда Google Reader сам копит вам материал и вы прочтете его когда вам будет удобно.

Надеюсь, данная статья кому нибудь станет полезной. Спасибо за внимание

Автор: NoMore

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js