Случайная сортировка RSS в Yahoo Pipes с помощью AppJet

Опубликовано в (Yahoo Pipes) | автор splogmaster | 24-12-2008

Тэги: , , ,

О проблеме случайностей в Yahoo Pipes знают все, кто работает с трубами. Примитивные узконаправленные аналоги генератора случайных чисел в Yahoo Pipes можно сделать с помощью "времени". Поскольку главным объектом в Yahoo Pipes является фид, то отсутствие возможности отсортировать его случайным образом является большим минусом труб - хотя никакие другие сервисы так же не могут выполнить задачу по случайной сортировке RSS.

Поскольку своими силами Yahoo Pipes справиться с такой задачей не может, нам придется обратиться к сторонним сервисам, и в этом нам поможет некий AppJet - Instant web programming . Что такое AppJet с картинками и примерами можете почитать в Блоге о программировании . В общем, взяли этот AppJet, сделали в нем веб-приложение, которое работает с текстовым форматом обмена данных JSON , связали трубу с этим веб-приложением через модуль Web Service группы Operators и получили случайным образом отсортированную RSS-ленту:

random_sort_RSS

Исходник трубы для сортировки RSS-ленты

Но не все так хорошо. Теперь я поведаю об ограничениях  такого способа случайной сортирвки RSS:

  1. Поскольку обмен данными со сторонним веб-приложением происходит в текстовом формате, то для сортировки RSS с HTML-кодом придется немного подкорректировать возвращаемый веб-приложением HTML-код, ибо возвращаемый код кривой до ужаса из-за не менее кривого html encoding внутри AppJet;
  2. Такой способ сортировки не работает с русским языком, снова какие-то глюки с кодировками внутри AppJet, и эта проблема мной пока не решилась (рассматривается вариант создания впомогательной трубы для перекодирования каждого символа русского алфавита, пока нет нужны браться за это).




Комментарии:

Оставить комментарий