Создание и настройка RSS ленты. Как создать свой RSS-канал (ленту новостей)

Даёт возможность оперативно транслировать новости и обновления читателям. Формат этот несколько устаревший, но аудитория пользователей всё ещё большая. Возможность организации RSS-лент заложена во многие популярные движки, такие как WordPress, Joomla, Drupal и многие другие. Где-то эта возможность является штатной, а где-то реализуется с помощью плагинов. Рассматривать процесс установки плагинов не имеет особого смысла, поэтому мы попробуем разобраться, как организовать RSS-ленту своими силами, не используя плагины.

RSS-лента для статического сайта на html

Для начала мы рассмотрим ручной способ, позволяющий реализовать трансляцию новостей на любом сайте, даже на статичном, построенном на голых html-страницах. Данный функционал будем создавать с помощью простого кода, который размещается в файле rss.xml в корне сайта:

- в этой строке указывается кодировка <span>Новости с сайта Site.ru </span> - указываем название новостной ленты http://site.ru/rss.xml - указываем адрес ленты Новостная лента с сайта Site.ru - вводим описание нашей ленты Fri, 03 Jul 2015 17:51:00 +0300 - дата последнего обновления ленты - указываем заголовок новости http://site.ru/news1.html - указываем адрес страницы с полной новостью - вписываем краткое содержание новости

При необходимости, в данном коде можно указать язык ленты, что необходимо при её регистрации в некоторых каталогах RSS-лент, а также добавить дополнительные элементы.

Представленный код обновляется в ручном режиме. То есть, для внесения изменений необходимо открыть файл rss.xml и вписать в него новые данные. Нужно несколько новостей? Тогда редактируемый файл с лентой должен содержать в себе несколько конструкций следующего вида:

<span>На нашем сайте открылся новый раздел </span> http://site.ru/news1.html На нашем сайте открылся новый раздел, приглашаем всех желающих к ознакомлению с новой информацией

Каждая такая конструкция – это отдельная новость, которая располагается между тегами item. По мере добавления новостей, старые записи можно удалять. Количество записей может быть любым, но прописывать больше 10 последних новостей не стоит – вряд ли кому-то понадобятся устаревшие записи.

Автоматизируем создание RSS-ленты

Предположим, что наш сайт создан на самописной CMS, либо на CMS, у которой RSS-лента отсутствует. В этом случае необходимо разобраться в структуре базы MySql, используемой для хранения данных, и выяснить, как производится хранение данных о заголовках страниц, их адресах и содержимом страниц с новостями. Разобравшись со структурой базы, необходимо несколько модернизировать файл с RSS-лентой. Для начала, дадим ему другое расширение, чтобы в нём мог исполняться php-код, необходимый для работы с базой MySql. В противном случае наша RSS-лента не заработает. Необходимо переработать и внутреннее содержимое файла:

  • Реализуем подключение к базе данных;
  • Делаем выборку нужных данных, установив ограничение на 10 последних записей;
  • Выводим в цикле содержимое полученных переменных;

С первым пунктом всё понятно – нам нужно выполнить подключение к базе данных для забора оттуда информации. Второй пункт тоже понятен – нам нужно получить 10 дат, 10 id ссылок на страницы с новостями, 10 заголовков новостей и 10 тел новостей. В третьем тексте мы последовательно выводим всё то, что мы публиковали между тегами item в ручном формате нашей RSS-ленты. Таким образом, разобравшись в структуре базы данных, мы можем организовать RSS-ленту для любого ресурса. Такой подход хорош тем, что мы не касаемся исходного кода CMS и не создаём дополнительных нагрузок на хостинг – этим грешат некоторые плагины, нагружающие сайты километрами ненужного кода. Кроме того, наша методика позволит избавиться от возможных ошибок в функциональности действующего сайта на этапе внедрения RSS-ленты. Максимум, что может произойти, так это получение не тех данных, что нужны для формирования ленты на нашем сайте.

Теперь рассмотрим сам код:

Новости с сайта Site.ru http://site.ru/rss.php Новостная лента с сайта Site.ru"; $result=MYSQL_QUERY("SELECT id, title, text, date, FROM article ORDER BY date DESC LIMIT 10"); while ($row=MYSQL_FETCH_ARRAY($result)) { $id=$row["id"]; $title=$row["title"]; $text=$row["text"]; $date=$row["date"]; echo " $title ссылка на статью с указанием id $text $date "; } echo " "; ?>

Первые строки данного кода схожи с вышеописанным ручным кодом и содержат в себе общую информацию о нашей новостной ленте – это название, описание и полный адрес ленты. Даты последнего обновления ленты нет, но её можно реализовать, модернизировав исходный код. Далее производится выборка необходимых данных из MySql-базы и запускается цикл формирования RSS-ленты.

С датой новости, её текстом и заголовком всё понятно – они выводятся из переменных $title , $text и $date . Что касается ссылки на полную новость, то здесь берётся её id, после чего мы можем сформировать полную ссылку, опираясь на структуру формирования ссылок на нашем сайте. Например, ссылки могут иметь вид http://site.ru/news.php?id=48 . Здесь мы описываем лишь общий принцип формирования ссылок, поэтому при практической реализации в вышеуказанный код необходимо внести соответствующие изменения.

Как только формирование файла rss.php будет готово, мы можем заливать его на хостинг и приступать к тестированию.

Полезные советы
Заходя на некоторые сайты, мы можем видеть в адресной строке браузера прямую ссылку на RSS-ленту этих сайтов. Для того чтобы не отставать от моды, проведём ещё одну модернизацию нашего сайта и добавим в него всего одну строчку кода:

Думаю, что многие слышали такие выражения RSS-канал новостей , RSS-лента новостей . А что такое RSS канал и как сделать RSS канал на своём сайте , уверен знают не все. Между тем сделать RSS ленту новостей у себя на сайте очень просто.

Если у Вас уже есть сайт, но Вы не пользуетесь этой технологией, то обязательно внедрите RSS новости на своём сайте, и уж тем более если об этом слышите впервые, дочитайте эту статью до конца.

Сначала немного теории.

RSS - семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и т. п. Информация из различных источников, представленная в формате RSS, может быть собрана, обработана и представлена пользователю в удобном для него виде специальными программами-агрегаторами.

Проще говоря RSS - это обычные текстовые сообщения, представленные в удобном для пользователя виде, с помощью специального формата XML. Раньше для просмотра таких RSS-лент новостей, требовались специальные программы-агрегаторы. Но в последнее время все современные браузеры позволяют просматривать RSS каналы.

Если Вы заходите на какой либо сайт и видите вот такие (это с моего сайта ):

или подобные значки, знайте, на этом сайте есть RSS-лента новостей и Вы можете запросто на неё подписаться . Кроме того, браузеры поддерживающие RSS, сами подсказывают Вам об этом, если значек активный, значит RSS-лента на этом сайте существует и работает.

Что даёт RSS канал? Точнее: чем он полезен?

Владельцам сайтов (web-мастерам) - быстрое оповещение о новостях сайта всем людям, подписанным на Ваш RSS-канал, это своеобразная рассылка краткого анонса новостей сайта.

Посетителям сайта - соотвественно быстрое оповещение о новостяхи обновлениях сайтов, на RSS-каналы, на которые они подписаны. Например, у Вас есть 20 (50 и т.д. любимых сайтов) и постоянно просматривать эти сайты довольно хлопотно. Но воспользовавшись подпиской на RSS-каналы Вы моментально видите на каких сайтах появились новые статьи, уроки, материалы и т.д., имеете возможность просмотреть анонс каждой новости и перейти на эту новость по прямой ссылке .

Лично мне в этом плане очень нравится браузер Operа . Здесь при соединении с Интернетом, автоматически выкидывается окно с новыми RSS-новостями. Вам остается только кликнуть по этой новости и Вы попадаете на эту новую статью нужного сайта. Хотя неплохо организованы RSS новости и в браузерах Firefox и Internet Explorer последних версий.

Как сделать RSS ленту?

Есть много различных версий RSS, но мы возьмем одну из самых последних и наиболее стабильную версию 2.0 . И еще огорюсь, т.к. мы еще только начали изучать язык программирования PHP и следовательно не готовы к автоматизированному наполнению RSS-канала, то добавлять новости придется в ручную, но это довольно просто.

Итак, создайте новый текстовый файл с именем rss.xml . Скопируйте в этот файл код Листинга 1 .

Листинг 1.




http://www.сайт/
RSS-канал новостей сайта www.сайт
ru-ru
Copyright 2008 - 2010 www.сайт Все для создания сайтов
Андрей Краснокутский


http://www..gif
Как создать свой сайт бесплатно? Как заработать в Интернете?
http://www.сайт/


FlashGet 3.5ru - менеджер загрузок. Скачать бесплатно.
http://www..php?id=219
FlashGet - менеджер загрузок, программа специально разработанная для увеличения скорости загрузки файлов и легкого управления файлами во время и после загрузки.
http://www..php?id=219


>

Это краткий (фрагмент) листинг RSS канала новостей с моего сайта, естественно Вы его должны поправить файл rss.xml под свой сайт и под свои новости.

Текстовый файл с именем rss.xml Вы можете назвать как угодно, например luksweb_rss.xml или как то по другому, только помните, что нужно будет сделать видимую ссылку на Вашем сайте на этот файл . Ссылка может быть двух видов: или . Я использую и те и другие ссылки.

Всё, теперь считайте что RSS канал на Вашем сайте уже есть. Когда человек кликнет по такой ссылке, браузер откроет RSS-канал Вашего свайта и предложит подписаться на получение новостей. Вам остается только согласиться.


Здравствуйте, уважаемые читатели блога сайт. Сегодня хочу поговорить про относительно новое детище Яндекса под названием Дзен. Вообще все это появилось еще в прошлом году, но активно про эту систему заговорили только сейчас. Идея у Яндекса была довольно простой — дать пользователю ту ленту новостей, которую он хочет видеть, основываясь на его предпочтениях.

Уж поисковой ли системе не знать что в любите, что предпочитаете и что не прочь почитать. А раз такие знания есть, то их нужно использовать. Сервис для пользователей получился проще некуда — просто смотришь ленту и все. Никаких тебе рубрик, тегов и прочей навигации. Наверное, это в большей степени удобно мобильным пользователям, ибо одним свободным пальцем что-то выбирать сложно, а вот листать единую ленту новостей вполне удобно.

Где живет ? Ну, во-первых, по приведенной ссылке, но туда наверняка мало кто ходит, а тем не менее эта система собирает огромный трафик. Поэтому очевидно, что его куда-то встроили. И не просто куда-то, а на главную страницу этого поисковика и на «новую вкладку» . Мобильных пользователей тоже не обделили — Дзен уже буквально везде. У многих уже возникает другой вопрос — как его отключить, ибо...

Ну, а вебмастеров и издателей (так буржуи обзывают тех, кто может генерировать контент) в этой системе последние пару месяцев привлекает совсем другое — возможность получать дополнительный трафик и зарабатывать . Дело в том, что Yandex Zen тем, кто наберет более 10 тыс. просмотров за неделю, позволяет включить монетизацию, и первые выплаты показали средний чек выше 40 тыс. рублей за месяц. Вот отсюда и растут ноги возникшего ажиотажа. С этого места попробую поподробнее...

Где можно смотреть и читать новостную ленту Дзена

Как я уже упомянул, новости из Дзена можно смотреть во многих местах (в том числе и на странице этого сервиса — zen.yandex.ru).

Основной «косяк» читателей она, наверное, все же собирает с главной страницы Яндекса . Там лента отображается в самом низу (довольно ненавязчиво, но как я понял, техподдержку уже завалили запросами как ее отключить). Пока она не отключаемая (в я такой опции не нашел) — можно лишь закрыть спойлер, под который она спрячется, с помощью крестика в правом углу ленты:

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

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

Ну и, конечно же, Yandex Zen вы найдете и в браузере выпускаемом этой компанией. Тут Дзен опять же довольно ненавязчив (в десктопной версии уж точно) и появляется когда вы открываете новую (пустую) вкладку.

Раньше там были только форма поиска и , а сейчас при прокрутке вниз можно почитать ленту из подобранных специально для вас новостей (хотя, это не обязательно будут новости — рецепты, анекдоты, новости на самые разные темы, подборки картинок, и прочий бред по вашему вкусу).

Кстати, можно включить синхронизацию в Яндекс браузере (если еще не включили) и читать одну и ту же (тщательно настроенную — читайте об этом ниже) новостную ленту. До чего дошел прогресс...

Как включить или отключить показ новостей из Дзена

Еще одно кстати. В Браузере можно включить отображение Дзена (если он не виден) или отключить (если уже замучил) в настройках (пиктограммка с тремя полосками в правом верхнем углу — пункт «Настройки»):

Просто снимите или поставьте галочку в нужной строчке. В мобильной версии браузера тоже можно октлючить\включить эту панель. Только опция эта там зарыта в самом конце списка (в области «Дополнительно»):

В общем, если постараться, то найти можно. Двигаемся дальше.

Как настроить Яндекс Дзен?

Если не касаться вопросов включения или отключения показа Дзен-блока в различных местах (браузере, приложениях, главной страницы Яндекса), то под настройкам, наверное, стоит понимать состав вашей индивидуальной новостной ленты. Конечно же, алгоритм должен сам идеально попадать в ваши запросы, но это в далеком будущем. А пока как в анекдоте — «необработанные детали нужно обработать напильником».

В Дзене для настройки предпочтений у пользователя есть по сути только один инструмент (точнее два, но как один) — лайк и дизлайк , которые можно выставить каждому предлагаемому сообщению в вашей новостной ленте. Несколько дизлайков запретят показ в вашей ленте материалы с этого канала (что это такое, читайте чуть ниже) или с этого сайта.

Хотя, в мобильном приложении «Яндекс» можно будет добавлять интересные вам сайты (вне списка Топа) и удалять ранее заблокированные.

Так, например, можно будет включить свой собственный канал (когда его создадите) или сайт (когда его подключите к Дзену) в свою новостную ленту, чтобы контролировать отправляемые в этот сервис материалы.

В общем, настроек минимум, что и требует современный юзер (особливо мобильного девайса). Хочу чтобы было и все. Дзен это и реализует — просто крути ленту и ставь лайк\дизлайк. Лепота.

Яндекс Дзен как бесплатная блог-платформа и RSS-агрегатор

Чуть выше мы посмотрели, как этот сервис выглядит снаружи (для тех, кто его использует по прямому назначению — просмотр и чтение ленты). Это довольно важно для понимания того, насколько перспективен данный сервис и где именно он собирает свою немалую аудиторию.

Дело в том, что контент отображаемой в ленте Дзена сам Яндекс не производит (он лишь осуществляет подборку по интересам конкретного пользователя). Каким же образом и откуда он контент берет? С одной стороны, это здорово похоже на Яндекс.Новости, где информация берется с сайтов через RSS, а с другой — похоже на ЖЖ (живой журнал), где лента формируется из материалов написанных его участниками.

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

Итак, Yandex Zen двулик и включает в формируемую ленту два типа материалов :


У Вас нет сайта, но есть желание писать и незамедлительно получать отдачу, т.е. зарабатывать (а не спустя годы, как с созданием сайта)? Тогда Яндекс Дзен для Вас!

Может быть не так бравурно, но что-то подобное можно было бы создать в качестве слогана для пиара этого сервиса.

Вообще, основной плюс бесплатной блог-платформы состоит в сообществе там формирующемся. Например, в том же Живом Журнале, в эпоху его популярности, стоило только добавить пару кульных статей, прокомментировать несколько топовых блогов по теме и все, у тебя уже сотни читателей. Надеюсь, что тут будет так же.

Конечно же, все не так просто, но на начальном этапе развития сервиса есть шанс зацепиться. Советую почитать эту ветку Серча , чтобы понять — есть ли смысл «начинать пахать на этого дядю». Кстати, можете взглянуть на график роста числа посетителей этого сервиса (если это не фейк, то весьма и весьма впечатляет):

Естественно, что вариант с подключением сайта (через RSS) отрицательных сторон (кроме возни с RSS и ее валиадцией) не имеет — пойдет дополнительный трафик, может быть даже в Дзен что-то заработаете и никаких минусов. Максимально плохой результат — это просто его отсутствие. Материалы будут поститься автоматом — достаточно один раз настроить. И если трафика не будет сразу, то он может появиться потом.

Как создать свой канал в Яндекс Дзене

Все очень просто. Заходите на страницу для авторов , жмете на кнопку «Войти»:

Если вы были в этом браузере уже авторизованы в Яндексе, то сразу попадете на страницу своего нового канала (в противном случае придется авторизоваться или даже зарегистрироваться). Кстати, на одном аккаунте можно пока создать только один канал.

Тут вы найдете три демо-материала, которые имеют весьма познавательное значение — советую вам с ними ознакомиться. А так же имеет смысл сразу дать название, описание и добавить логотип для вашего канала, нажав на букву «Я», расположенную справа вверху:

Справа от буквы «Я» можно ввести название канала, а при клике по ней самой вам предложат загрузить логотип с вашего компьютера. Описание и Емайл добавьте тоже.

Все, а теперь бегом писать новую заметку, нажав на кнопку с зелеными плюсом:

Встроенный редактор простой — возможность добавления ссылок или форматирования появляется после выделения слова или фразы.

Лично мне не хватает отмены действия в виде кнопки, хотя традиционное Контрол+Z (шаг назад) тут работает, но попробуй догадайся. А так ничего — жить можно.

Чтобы вставить фото, видео с ютуба или код сообщения с соцсети, нужно перейти на новую строку (энтер нажать) и воспользоваться появившимися кнопочками.

Опять же без изысков, но главное что работает справно.

Вверху имеется не очевидный переключатель, где можно будет активировать монетизацию вашего канала в Дзен. Правда сначала нужно будет набрать 10 тыс. просмотров в неделю (еще недавно порог составлял 30 тыс.):

Варианты заработка довольно ожидаемые — либо рекламная сеть Яндекса (ну, не Гугла же), либо АдФокс, который Яндекс тоже не так давно «под себя подмял». Про возможные доходы я уже упоминал (около 40 тыс. рублей в месяц), но это было при пороге в 30 тыс. просмотров за неделю. Так что делайте выводы.

Как добавить RSS ленту своего сайта в Yandex Zen

Тут на самом деле два вопроса — как создать и как добавить. Первый несомненно реализовать сложнее. Но обо все по порядку. В хелпе Дзена довольно подробно описано то, как должна выглядеть дополнительная RSS лента вашего сайта , чтобы ее принял этот сервис и сумел вычленить из нее анонсы ваших новых постов.

И тут же (в самом начале) вы найдете форму, для отправки созданной RSS на проверку службой техподдержки сервиса.

Осталось только создать такой RSS канал у себя на сайте , учитывая все приведенные на указанной странице требования. Непрофессионалу сделать это будет не просто. Для Вордпресса подходящего плагина я пока не нашел (кто-то переделывал под эти задачи плагин Yandex.News Feed by Teplitsa предназначенный для отправки постов в Яндекс.Новости).

Так же в сети я нашел пару вариантов самостоятельной настройки нужного RSS канала для блога на WordPress. Пока руки не дошли попробовать, но может быть вы окажетесь попроворнее:


По требованиям Яндекса в ленте должно быть не менее 50 страниц, причем в нее должны отдавать полные тексты. Общий ее размер может получиться приличным.

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

После добавления фида, проверки его валидности и признания его техподдержкой сервиса уже можно будет начинать ждать трафика с zen.yandex.ru. Выглядеть это может примерно так в вашей системы сбора статистики посещаемости сайта:

Как пишут в хелпе к этому сервису, посты с фида автоматом попадают в ленту пользователей минуя ваш канал. Но в статистике будут учитываться их просмотры и будет за них капать денежка, если вы преодолеете барьер в 10 тыс. просмотров за неделю.

Если вдруг захотите увидеть, как в Yandex Zen отображаются посты взятые с вашего сайта , то можно сделать финт ушами, упомянутый чуть выше. Можно зайти на мобильное приложение «Яндекс» (так и называется в одно слово) и прокрутить его ленту до появления блока с нашим сервисом. После этого кликаете по слову «Дзен»:

И в открывшейся вкладке кликаете по пиктограмке с тремя точками в правом верхнем углу:

Из выпадающего списка выбираете вариант «Интересные вам источники» и в появившемся окне вводите Урл своего сайта (или канал). После этого в вашей ленте Дзена должны начать появляться посты с вашего сайта, чтобы вы смогли их лицезреть и оценить.

Имеет ли смысл использовать Дзен

Если вы обычный пользователь этого сервиса, то его использование определяется только вашими личными симпатиями или антипатиями. Пока сервис сыроват, но это ему не мешает выдавать на гора довольно-таки неплохую подборку (для меня, во всяком случае), которую можно еще вручную подрихтовать лайками и дизлайками.

Если вы издатель (уже состоявшийся или только задумывающийся об этом), то у вас есть два пути выгодного использования данного сервиса и каждый из них нужно рассматривать в отдельности:

  1. Начну с подключения уже существующего сайта подходящей для этого сервиса тематики (перспективного). Тут вы абсолютно ничего не теряете и не вкладываете (анонсы постов будут публиковаться в Дзене на автомате параллельно с публикацией на сайте). А при хорошем стечении обстоятельств можете получить халявный трафик и даже дополнительную порцию денег от Яндекса.
  2. Если же вы задумываетесь о том, чтобы начать вести свой канал на Дзене и на этом зарабатывать, то тут уже ситуация сложнее, ибо есть риск прилично потратить времени и сил на все это, но не получить должной отдачи. Но ведь может и выгореть. Не узнаете, пока не попробуете!

Если захотите таки вести свой канал в Yandex Zen, то так же учтите, что Яндекс может пессимизировать ваш канал за нарушения правил (и еще вот этих тоже). (заголовки, провоцирующие нажатие на них, с текстами им несоответствующими или слабо кореллирующимся), и спам, и копипаст (стыренный у кого-то контент).

Последнее очень четко отслеживается (хоть и не быстро) и почти всегда пресекается. Тем более, что имеется даже стучалка на случай нарушения авторских прав владельцем канала на этом сервисе. Тут не забалуешь, и перенесенные откуда-то материалы не долго будут вас радовать просмотрами. А если видите свои статьи на чужих каналах, то незамедлительно пишите жалобу (механизм отлажен и отлично работает).

Так же организаторы не приветствуют, когда вы в своем канале публикуете анонсы, отправляя читать полную версию на свой сайт. Для этого есть вариант с подключением РСС ленты. Так же не стоит дублировать материалы из РСС ленты в своем канале — могут пессимизировать.

Да, еще владельцы сервиса грозятся потратить миллион долларов на поддержку перспективных каналов:

Интересно, правда? Кому дадут? И на что?

Удачи вам! До скорых встреч на страницах блога сайт

посмотреть еще ролики можно перейдя на
");">

Вам может быть интересно

Апометр - бесплатный сервис по отслеживанию изменений выдачи и апдейтов поисковых систем
Виджеты Яндекса - как настроить и сделать главную страницу более информативной и удобной именно вам

Есть у этого ресурса RSS лента последних изменений. Но вот беда - лента изменений самая минимальная. Там указано только кем, когда и какая страница редактировалась. Нет полных изменений и нет GUID у элементов ленты, поэтому некоторые RSS клиенты (например, Google Reader) не показывают большую часть новостей, считая их одинаковыми.

Для преобразования ленты в свой, удобный формат, выбор пал на такой специализированный инструмент, как Yahoo Pipes . Но тут постигла неудача. Для получения изменений странички, wiki строго требовала наличия cookie с именем «wikit_e» в http запросе, а научить Yahoo Pipes отсылать куки не получилось. Фокус с HTTP запросом GET и параметром в виде "?COOKIE=" так же не проходил.
В итоге, выбор пал на более гибкий инструмент - Google Apps Script . В итоге получился вот такой скрипт:
// Эта функция будет выполняться автоматически, при вызова скрипта как веб-приложения function doGet() { // Задаем URL исходной RSS ленты var feed = "http://wiki.tcl.tk/rss.xml"; // Определяем ID для доступа к кэшу var id = Utilities.base64Encode(feed); // Определяем кэш и пробуем забрать уже собранную ленту из него var cache = CacheService.getPublicCache(); var rss = cache.get(id); // Если в кэше лента не сохранена - переходим к ее созданию if (rss == null) { // Получаем данные RSS ленты в виде XML var data = UrlFetchApp.fetch(feed).getContentText(); var doc = Xml.parse(data); // Выбираем канал var channel = doc.getElement().getElement("channel"); // Выбираем название канала, ссылку, описание ленты var title = channel.getElement("title").getText(); var link = channel.getElement("link").getText(); var desc = channel.getElement("description").getText(); var guid, date; // Начинаем создавать свою RSS ленту, заполняем название, ссылку и описание rss = ""; rss += "" rss += "" + title + "\n"; rss += "" + link + "\n"; rss += "" + desc + "\n"; // Выбираем все элементы ленты и последовательно проходим по каждому var items = channel.getElements("item"); for (var i in items) { item = items[i]; // Выбираем из ленты заголовок, ссылку, дату новости, описание title = item.getElement("title").getText(); link = item.getElement("link").getText(); // Ссылка должна указывать на diff странички link = link.replace(/\/(\d+)$/, "/_/diff?N=$1#diff0"); date = item.getElement("pubDate").getText(); desc = item.getElement("description").getText(); // Формируем GUID для элемента ленты guid = Utilities.base64Encode(link + date); // Скачиваем diff страницы, используя при этом Cookie "wikit_e" как "rss" var fullpage = UrlFetchApp.fetch(link, {"headers":{"Cookie":"wikit_e=rss"}}).getContentText(); // Вырезаем из страницы только body var matched = fullpage.match(/]*>([\w\W]*)<\/body>/i); // Вырезаем заголовки и подвал страницы matched = matched.replace(/

Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: