Снова о Yahoo Pipes: как сделать счетчик символов и фильтровать статьи по длине?
26th Июль 2008. Рубрики: RSS, Yahoo Pipes, Веб, Регулярные выражения. 7 коммент..
Продолжаем мучать любимую тему… в комментариях к предыдущим постам один из комментаторов задал вопрос: «Как сделать счетчик символов заграбленой статьи в Yahoo Pipes? как сделать чтобы статьи менее 1000 символов не грабились и не вставлялись в выходную rss-ленту (собственно из-за чего и нужен был счетчик)?»
А на самом деле всё очень и очень просто: для этого воспользуемся модулем Filter, который позволяет задать несколько правил для фильтрации и очень гибко её настроить… возможна фильтрация например по признаку наличия в содержимом предмета фильтрации какого-либо выражения или его отсутствия. Но в контексте заданного вопроса важно что при фильтрации в качестве правила можно задать регулярное выражение (да-да! я знаю вы их очень любите
).

Что делает этот фильтр? Он делает следующее: пропускает дальше в ленту только элементы ленты item.description которых описывается регулярным выражение «.{275,}«, где «.» — это любой символ, а то что находится в фигурных скобках {} — это квантификатор, который определяет сколько раз выражение (в данном случае «. » — любой символ) может встречаться.
Квантификатор задается следующим образом:
- {m,n}
- общее выражение, повторений может быть
от m до n включительно - {m,}
- общее выражение,
m и более повторений - {,n}
- общее выражение,
не более n повторений - ?
- Знак вопроса означает
0 или 1 раз (то же самое, что и {0,1}) - *
- Звёздочка означает
0, 1 или любое число раз (то же самое, что и {0,}) - +
- Плюс означает
хотя бы 1 раз (то же самое, что и {1,}).
Таким образом, в показанном на рисунке примере фильтр пропускает в ленту только элементы в описании которых 275 и более символов.
Аналогично можно сделать что-нибудь подобное……..
Мой блог находят по следующим фразам:
• префикс таблицы вы не имеете достаточно прав для доступа к данной странице. wordpress
• ВИДЕОПЛЕЕРЫ с ТВ тюнером
• pipes fetch page utf8
• сpanel установить wp вручную
• как работать с Yahoo Pipes
• как работать с Yahoo Pipes
7 коммент.
Makc_Rudy | 26th Февраль 2009
Привет!
Просьба подсказать, как можно обрезать статью в ленте после N знаков, и совсем шикарно — после N знаков найти точку (или !,?) и обрезать/вставить код после них.
Заранее спасибо
Р_Джинс | 1st Март 2009
Нет ничего проще ![]()
Вот так
| 20th Февраль 2010
А как отправить те линки, в которых дескрипшен после обработки пустой на повторную обработку, чтоб гарантированно извлечь содержимое? Мне важно получить все новости с сайта 43region.com, а в части из них pipe выдает пустое содержимое (ошибка 404). C описанным фильтром легко отсортировать полные ленты, а я хочу отсортировать пустые и снова запустить их по циклу, но видимо что-то не то делаю.
Р_Джинс | 24th Февраль 2010
Pipes не всегда хорошо обрабатывает большие объемы…
Поэтому я предварительно до pipes обрабатываю всё своим парсером чтобы убрать всё лишнее со страниц с которых идет граббинг и давать pipes только нужное.
| 7th Октябрь 2010
привет. во первых ссылочку надо поправить на http://delirium.vrjj.ru/wp-content/uploads/2009/03/n.png
второе — какую роль выполняет точка (2 по счету символ). и предпоследняя точка
спасибо
Р_Джинс | 7th Октябрь 2010
Точка обозначает в регулярном выражении любой символ, включая символ перевода строки.


Peter | 27th Июль 2008
спасибо за ответ!!!..) честно говоря не ожидал что так оперативно и развернуто ответите.. сейчас буду пробывать))