[Из песочницы] Превращаем Pocket в новостную ленту

Недавно задумался над созданием единой новостной ленты из всего, что я читаю. Видел варианты со сведением всего счастья в телеграмм, но мне больше приглянулся Pocket.

Почему? Этот парень выкачивает всё в удобочитаемом формате и отлично работает на всех девайсах, включая читалку.

Всем, кому интересно — добро пожаловать под кат.
Дано: новостные ленты, которые я читаю: threatpost, habr, medium, один паблик со статьями во vk.com, и 2–3 канала в telegram.

Самый простой вариант, который я нашёл — сделать из всех читаемых ресурсов RSS feed (ы) и интегрировать с Pocket.

Немного теории об RSS, если вдруг кто не сталкивался с данной технологией. RSS (Rich Site Summary — обогащённая сводка сайта) — это способ организации информации ресурса в облегчённом XML формате.

Выглядит примерно вот так



Заголовок статьи
Ссылка на ресурс


    	
Контент
]]>


Информация из RSS feed выкачивается в текстовом формате, причём только последние обновления. Обычно обновление происходит 2 часа.

Причём RSS feed-ы можно агрегировать друг с другом и получать из них единую ленту новостей (единый RSS feed) со всех интересующих ресурсов.

Для интеграции rss feed с pocket-ом я нашёл такой вот чудесный портал — ifttt.com — позволяющий настраивать апплеты для перенаправления rss в покет с возможностью расстановки тегов для более удобного поиска/сортировки статей.

Регистрация на ifttt.com бесплатная.

Начнём с threatpost


Здесь вроде всё просто. У ресурса есть rss канал, ссылка на который красуется прямо в самом верху страницы.

image

Просто копируем её (https://threatpost.ru/rss) и идём с ней в platform.ifttt.com.

image

1) «Пробуем сейчас».

2) Проходим регистрацию, Company name → Any

3) Во вкладке Applets создаём New Applet.

image

4) Trigger выбираем RSS feed

image

5) В нашем случае выбираем New feed item.

image

New feed item

При каждой новой записи в RSS feed добавит новость в pocket


New feed item matches

Только при указанных критериях сортировки добавит запись в pocket


6) Visibility — set by you. И в value вставляем rss ресурса.
Можно так же поставить customizable by the user. Это позволит людям, которые захотят воспользоваться вашим апплетом самим ставить value RSS Feed-а.

image

7) Ниже выбираем action (Add action). И добавляем Pocket.

image

8) В выпадающем списке выбираем единственный пункт — Save for latter.

image

Feed label URL
В данном случае {{EntryUrl}} будет отображаться как 

image


Feed label Tags
Советую убрать IFTTT и FeedTitle и заменить на {{EntryAuthor}}. Т.к FeedTitle итак подтягивается в каждую запись, а вот имя специфичного автора мне пожалуй важно. В конце концов в pocket я смогу фильтровать по авторам, если они мне интересны, а если не интересны, то просто поставить потом фильтр New feed item matches и выбрать только интересных авторов.

image


9) Вводим название, дескрипшен и вперёд (Save).

10) Нас перебрасывает на страницу свежесозданного апплета. Проматываем вниз и находим.

image

11) «Турним апплет он». Вас перебросит на страницу с апплетом, там жмём ту же саму кнопку, что выделена на картинке выше и спустя пару секунд видим надпись — Success, applet turned on.

Сustomize by user

Если вы выбирали в 6 пункте customize by user, здесь вам необходимо подставить будет ссылку на Rss feed в новом меню, если нет, то Success.


12) Чтобы посмотреть активные апплеты перейдите по ссылке ifttt.com/my_applets либо в ifttt.com нажмите my applets.

Habr


Для интеграции с habr нам нужен rss интересующих нас хабов/авторов. Для его получения заходим на интересующий нас хаб, открываем дом дерево в консоли браузера и вбиваем в поиске по dom — rss.

image

Аналогично и с конкретным автором которого читаем.

image

Лично у меня после выкуривания rss из всех хабов и людей которых читаю на хабре скопилось порядком ссылок. Поэтому был найден следующий инструмент — rssmix.com. Скармливаем в него, разделяя знаком переноса каретки, все интересующие нас хабровские rss ленты и генерируем новую, уже всеобъемлющую ленту.

image

Дальше назад к platform.ifttt.com и, лично я — создавал новый апплет, чтобы можно было на каждый ресурс навесить свои теги и красивенько впихнуть в pocket. Но в принципе можете и всё через rssmix добавить к старому rss каналу в предыдущем апплете.

Medium


Честно говоря, с медиумом то же самое, что с habr. Есть вариант через уже готовый апплет на ifttt.com, но я выдирал из всех авторов и интересов rss. И фильтровал в rss→pocket апплете ifttt.com.

Vk.com


Маялся дольше обычного, но как оказалось всё не так страшно. Как такового rss там нету, есть какие-то генераторы rss лент в стиле vkrss.com, но вот с pocket оно плохо дружит и к тому же ещё денег просит. На счастье нашёлся politepol.com.

Интерфейс забавный. Принцип следующий.

1) Скармливаете в инпут ссылку на статьи группы → go.

Где взять ссылку на статьи группы vk
У каждой статьи в vk своя достаточно читабельная ссылка, в стиле vk.com/@mygroup-belarus-i-cvetenie-sakuri. Вот начало ссылки mygroup — это то, что нам нужно. Т.е полная ссылка будет vk.com@mygroup


2) Далее ждём пока отрендерится интересующая нас страница со статьями в вк

3) Видим похожую картину.

image

4) Нажимаем на кнопку title и указываем title на странице (просто клик по любому заголовку статьи), кнопку description и указываем где description. Create → готово.

5) Копируем созданную ссылку и снова делаем апплет vk.com (rss) to pocket.

Telegram


И последнее — телеграмм каналы. По итогу логика будет — как все уже, наверное, догадались — сделать ещё один rss канал. Для этого воспользуемся услугами telegram.me/crssbot. Бот умеет дублировать посты из вашей группы в rss ленту. Его нужно добавить в группу как администратора. Создаём в телеграмме группу с любым названием, добавляем бота как администратора (следуем инструкциям).

Далее rss лента будет доступна по адресу — bots.su/rss/your_channel_name. А общую новостную ленту всех пользователей можно найти по адресу bots.su/rss/all.

Однако неплохо бы ещё заполнить этот канал новостями, а-то читать то нечего. Для этого воспользуемся услугами другого бота, который будет перенаправлять новости из всех наших каналов в свежесозданный «rss-канал».

Вроде как есть классный бот telegram.me/junction_bot, у него есть теги для каждого перенаправления, всякие фильтры в общем всё, что хотите, но перенаправление платное. Не годится.

Зато есть вот такой вот отличный, бесплатный t.me/multifeed_bot (ну или как вариант можете сделать сами github.com/adderou/telegram-forward-bot) бот. Следуем инструкциям бота, добавляем @mirinda_grinder в группу как администратора. Создаём перенаправление из читаемых каналов в нужный нам канал и вуаля. Канал наполняется сам.

Затем привычные шаги по созданию апплета, расстановка тегов, фильтрация и всё, готово. Pocket наполняется сам, без вашего участия, при этом с расстановкой тегов, фильтрацией и синхронизируется на всех устройствах которых пожелаете.

© Habrahabr.ru