суббота, 24 мая 2008 г.

Yahoo Pipes русский справочник по модулям (Sources). Часть 1

Продолжение темы начатой в этом посте Yahoo pipes - больше чем просто RSS агрегатор.Введение

Yahoo Pipes русский справочник по модулям (Sources). Часть 1

yahoo pipes, yahoopipes, pipes.yahoo.com, sources"Без теоретической базы далеко не уйдешь" - так любил говорить мой не самый любимый препод по матанализу, но был прав. Поэтому изучение yahoo pipes я предлагаю (настойчиво ;)) начать с описания модулей. Этакая русскоязычная документация по модулям yahoo pipes (не путайте с переводом оригинальной документации по модулям yahoo pipes здесь будут приведены мои собственные определения, хотя и без перевода не обойдется;))

Итак, модули класса Source (Источники) - это модули которые должны быть в каждой трубе, потому что нет иточника данных - нет и данных, а нет данных - несчем работать, а тогда зачем вообще нужна труба?


Feed Auto-Discovery Module
Вот представь, надо тебе сдернуть с какого-либо сайта RSS-канал, а ссылку на него ты хоть убей не видишь (но знаешь что она там есть;)), ну не позаботился автор о большой и красочной кнопке с призывом Подпишись на новости этого блога по RSS, или еще бывает такое - ты по быстрому создаешь трубу (yahoo pipes) из многих многих каналов и искать на каждом блоге или сайте ссылку на RSS тебе просто некогда или влом, вот тогда то и приходит на помощь модуль Feed Auto-Discovery, поторый распарсит (разберет) указанный сайт на болтики и найдет на нем ссылку на RSS.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, feed auto-discovery
Итак, Feed Auto-Discovery - модуль который сам находит ссылку на RSS-канале, вам остается только указать адрес интересующего вас сайта. Если на сайте обнаружится более одного канала, то Feed Auto-Discovery найдет их все!!!! После этого каналы можно разбирать модулями для чтения RSS (например, Fetch Feed)

Fetch CSV Module - модуль для разбора файлов, содержащих данные разделенных разделительным символом (, ; | Tab или какой-нибудь другой, например слово "Razdelay" :)), для использования модуля нужно указать - адрес файла CSV (например http://www.aoml.noaa.gov/ocd/gcc/polarstar/Leg4.csv посмотрите его, если не имеете представления о формате CSV файлов), символ-разделитель (Сolumn separated by), а также номер колонки значения которой будут использованы в качестве названия столбцов (Use Rows as column name) или ввести свои названия (Use following column names и вводить имена колонок по порядку). Необязательный элемент - Skip the first X rows (Пропустить первые X колонок).
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch csv
Ну вот и все, теперь на выходе у вас - данные в виде Название столбца -> Значение столбца.

Fetch Data Module - но! нужные вам данные могут хранится не только в виде RSS, но также в xml или скажет JSON документах. yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch data
Вот их то мы и сможем получить с помощью модуля Fetch Data Module. Для этого вводим в поле URL адрес xml или JSON файла (например http://www.weather.gov/data/current_obs/KRIC.xml), а в поле "Path to item list" путь по элемента, то есть название узла (например latitude) и получаем на выходе список значений этого узла (если вы не знакомы с xml форматом, то вам стоит почитать об этом гденибудь в интернете).
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch data module Пример взятый из документации - для извлечения значений place, в поле "Path to item list" вы должны вставить idinfo.keywords.place.

Fetch Feed Module - самый простой модуль, укажи ему адресс RSS канала (или нескольких RSS каналов) и получи на выходе сборную солянку из новостей этих RSS.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch feed
Итак на вход ссылки на RSS, на выходе элементы состоящие из новостей этих самых RSS, их вы уже сможете фильтровать, объединять (для этого используются модули из раздела Операции), но об этом потом...

Fetch Site Feed Module этот модуль очень похож на Feed Auto-Discovery, yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch site feed
но в отличие от него находит только один RSS канал на странице - первый ему попавшийся (сколько бы их там не было) и возвращает не ссылку а содержимое найденного канала.

Flickr Module - (перевод) Flickr это популярный сайт для хранения и обмена фотографиями. Flickr модуль позволяет искать фотографии по ключевому слову и географического местоположения.

Во-первых укажите количество изображений, которое должен вернуть поиск. Затем введите один или несколько ключевых слов, таких как "лошади" или "артишоки". Также вы можете опционально указать географическое местоположение фото, например "Чикаго, штат Иллинойс" или "Гавайи".

Этот модуль возвращает много данных вы не найдете в очередной RSS канал. y:flickr тег показывает URL-адрес для Flickr страницы и ссылку на файл изображения.

В Tags элемента перечислены все Flickr теги привязанные к фото.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, flickr moduleЧастенько вы сможете получать географические-данные в y: location элементов, если конечно эти данные доступна для фото.
Это даст вам возможность отобразить Flickr результаты на карте в "Pipe Preview".



Google Base Module - один из самых нужных модулей в yahoo pipes, который позволяет использовать данные полученные поиском в google base (база знаний, рассортированная по категориям). Вставьте этот модуль себе в трубу, выберите категорию поиска (например: anithing - все категории, jobs - работа), введите строку поиска в keywords.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, google base module
Также можно заполнить поля для географии поиска - within (на растоянии) и location (тут вводится код региона, как получать этот код ума не приложу;)) - и все, теперь на выходе вы получаете данные из базы.

Item Builder Module (перевод) - Модуль создает источник с одним элементом в котором можно задать один и более количество атрибутов. Он присваивает значение (то что распологает справа от знака равенства) аттрибуту (тот что располагается слева от знака равенства). yahoo pipes, yahoopipes, pipes.yahoo.com, sources, item builder moduleТак же если его использовать как суб-модуль в цикле, который обрабатывает уже существующий поток данных, для изменения, переименования и создания новых элементов.

Yahoo! Local Module - модуль для поиска заведений в заданном месте
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, yahoo local module(например рестораны в Гонконге или Пицерию в Токио)

Yahoo! Search Module - модуль использующий поисковую машину yahoo, задается строка для поиска.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, yahoo search module Есть возможность искать по заданным сайтам, для этого надо задать их в поле site restriction.

Fetch Page Module конечно сейчас большинство сайтов и блогов имеет информацию в виде RSS, но не все!!! Для извлечения данных из обычных html страниц используется модуль Fetch Page Module в качестве параметров, он принимает адрес страницы а также начальный и конечный html-тэги между которыми находится интересующая инфа (например от до ). Если на странице имеются повторяющиеся элементы, то укажите в поле "Split using delimiter" строку определяющую его.
yahoo pipes, yahoopipes, pipes.yahoo.com, sources, fetch page
Модуль пока не работает со страницами больше 200К, а также не индексируемыми страницами.

Следующую статью я планирую о модулях пользовательского ввода


На главную страницу
Карта блога

Статьи по теме:



2 комментария:

Анонимный комментирует...

Чувствую надолго задержусь на твоем блоге)

GanGSISoft комментирует...

Никак не пойму, как изменить время публикации?