Качать торренты с Google Reader

Введение Я активно пользуюсь сервисом Google Reader для чтения RSS-каналов в общем и для отслеживания появления интересующих меня раздач на torrent-трекерах в частности. А также частенько качаю с торрентов любимые сериалы. В некоторый момент захотелось избавиться от промежуточных шагов между просмотром записи канала и скачиванием торрента и немного автоматизировать процесс вылавливания из сети интересной и нужной информации. Вряд ли для кого-то окажется откровением то, что если не все, то почти все современные torrent-клиенты поддерживают загрузку RSS-каналов и даже автоматическую загрузку торрентов из этих каналов. Но, как правило, большая часть выдаваемых определенным каналом раздач мне просто не нужна. Да и дисковое пространство далеко не резиновое и выкачивать все возможные раздачи любимого, например, сериала не представляется возможным. Я не настолько большой фанат, чтобы держать на дисках одновременно несколько версий одной и той же серии или фильма. На этом месте внимательный читатель непременно заметит: так ведь можно на каждый RSS-канал средствами torrent-клиента настроить фильтры и выкачивать только те раздачи, которые представляют реальный интерес. Заметит и получит резонный, по-моему, ответ: на все случаи жизни фильтры не настроишь. Нужен более универсальный вариант. Таким вариантом для меня стала автоматическая закачка раздач, отмеченных в Google Reader. О том, как это реализовать подручными средствами, рассказано под катом. Детали конструктора Для успешного решения задачи нам нужны: — установленный и работоспособный rtorrent с rutorrent в качестве front-end и следующими плагинами: RSS, RSSURLRewrite и LoginMgr (последний служит для скачивания раздач с torrent-трекеров, требующих авторизации и в общем случае необязателен, но для моего примера нужен). — подписка в Google Reader на нужные RSS-каналы с раздачами — чудо-юдо рыба-сервис Yahoo Pipes — немного времени Шаг первый — настраиваем вывод всех отмеченных в Google Reader записей в отдельный канал Для того чтобы список отмеченных записей был доступен извне Google Reader необходимо сделать такие записи общими. Для этого открываем настройки Google Reader и в меню «Папки и теги» одним кликом мыши превращаем личные записи в общедоступные

Если у вас по какой-то причине нет желания делать общими именно «Ваши отмеченные записи», все дальнейшие операции можно проделывать и с записями которые находятся в списке «Ваши общие записи».

Далее открываем страницу с отмеченными записями, пройдя по ссылке «посмотреть открытую страницу» напротив соответствующей общедоступной папки и копируем URL канала с отмеченными записями:

Он имеет следующий вид:

http://www.google.com/reader/public/atom/user/%googleuserid%/state/com.google/starred

И все бы хорошо, только вот Reader умеет отдавать результат только в формате Atom-канала, а существующие плагины для rutorrent успешно работают только с RSS. Здесь мы и воспользуемся Yahoo Pipes.

Шаг второй — преобразование atom в RSS

Yahoo Pipes требует регистрации, но это не станет большой загвоздкой, так как авторизация возможна при помощи существующей учетной записи Google и понадобится нам всего один раз для создания соответствующего пайпа.

Данный и последующие этапы рассмотрим на примере RuTracker.org.

Дабы не углубляться в изучение этого, прямо скажем, очень мощного сервиса, мы клонируем созданный для этой цели простой пайп-полуфабрикат. В нем необходимо будет указать ссылку на atom-канал и настроить фильтр, которым будут отсеиваться заведомо ненужные записи (в данном случае — не содержащие в себе ссылки на раздачу), но обо всем по порядку:

— открываем http://pipes.yahoo.com/pipes/
— Sign In -> Sign in with Google (безусловно, можно выбрать любой другой доступный вариант аутентификации)
— открываем заготовленный пайп-полуфабрикат

— жмем Clone

— редактируем поля с именем, описанием и ссылкой на пайп по вкусу

— открываем редактор, нажав на кнопку Edit Source

— вводим полученный на предыдущем шаге URL в одноименное поле блока Fetch Feed

В блоке Filter можно настроить гибкую фильтрацию сообщений исходного канала при помощи солидного количества предлагаемых фильтров. Обратите внимание на область Debugger внизу экрана. В ней можно оценить вывод любого из блоков пайпа.

Сохраняем наш пайп кнопкой Save, запускаем его (Run Pipe…).