Такое агресивное название. :)
Да, и действительно инстумент ОЧЕНЬ серьезный.
В марте я столкнулся с необходимостью создать RSS ленту для сайта у которого ее попросту нет "Если гора не идет к Магомеду" .
Спустя 2 месяца почти весь "мой интернет" у меня теперь в Google Reader, и виновник тому разумеется Pipes.
Не скажу, что теперь я "гуру" труб, но на многие грабли уже успел наступить и подметил для себя ряд интересных вещей.
Итак:
- При использованни модуля Fetch Page(загружает в трубу HTML страницу), флаг начала(from) в большинстве случаев простого парсинга, должен быть равен флагу разделителя(delimiter)
- Регулярные выражения, придающие трубам неограниченные возможности, используют синтаксис Perl, для отладки удобно ипользовать RegexBuddy. Поскольку в модуле RegEx используется метод Replase, то для выдергивания какого либо значения, нужно шаблон регулярных выражений, возвращающих значение, помещать между .* (тоесть поглащать весь исходный текст). Так же полезно прочитать про жадный и не жадные алгоритмы.
- Если регулярное выражение, будет возвращать многострочную часть и первая строка в этой многострочной части будет пустая, труба все остальные строки проигнорирует, и в результате вы получите - пустое значение.
- Если вы хотите снабдить свою ленту какими либо скриптами, то тут Pipes немного разочарует... Он автоматически вырезает все теги link и script, не только с исходной HTML страницы, но и при непосредственной вставке внутри трубы. Видимо в целях безопасности все это.
- Время обновления трубы 7 часов :(, ну да, труб то много
- Линк полчившейся трубы будет всегда ссылaтся на yahoo pipes, что при парсинге html будет не всегда корректно. Ну это все наверно в целях пиара. :)
На всякий случай закидываю удочку, для тех кому с трубами разбираться неохото(или нет времени), а канал для сайта хочется поиметь.
Делаю каналы от 500р. для url.
Канал будет содержать 3 обязательных элемента:
- Link
- Title
- Description
P.S. Прочие навороты канала обсуждаются индивидуально.
Комментариев нет:
Отправить комментарий