Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #76, АПРЕЛЬ 2005 г.

Препарируем RSS

Никита Кислицин

Хакер, номер #076, стр. 076-120-2


Уровнем ниже от <rss> лежит элемент <channel>, который встречается однажды и содержит всю основную информацию об RSS-канале и о его содержимом.

Элемент <channel> обязательно имеет в себе троих потомков: title – заголовок блога, link – ссылка на соответствующий ленте web-ресурс и description – описание ленты.

Внутри этого элемента может присутствовать еще куча тэгов, однако основной интерес для нас будут представлять элементы <item>, в которых будет находится информация о публикациях. Внутри <item> может содержаться большое число элементов: title, link, description, category, comments, enclosure, guid, pubDate и source. Назначение каждого из этих полей, в общем-то, ясно из названий, однако, чтобы тебе было понятнее, я просто приведу пример небольшого RSS-документа:

Пример RSS-документа

<?xml version="1.0" encoding="windows-1251" ?>

<rss version="2.0">

<channel>

  <title>Мои крутые новости</title>

  <link>http://www.coolnews.ru</link>

  <description>Офигенные новости из жизни заводчика уругвайских тушканов.</description>

<image>

  <url>http://www.coolnews.ru/mylogo.gif</url>

  <link>http://www.coolnews.ru</link>

  <title>Мои крутые новости</title>

  </image>

  <lastBuildDate>10 Mar 2005 15:25:46 +0300</lastBuildDate>

<item>

  <title>У тушкана Кики родилась двойня!</title>

  <link>http://www.coolnews.ru/news.php?nid=4312</link>

  <description>Сегодня в пять часов утра у Кики родилась прекрасная двойня – мальчик и девочка. Вес новорожденных составляет, соответственно, 120 и 95 граммов.</description>

  <pubDate>09 Mar 2005 20:10:09 +0300</pubDate>

  <guid>http://www.coolnews.ru/news.php?nid=4312</guid>

 </item>

</channel>

</rss>

Вот такой вот формат. Обрати внимание, элемент <image> позволяет указать соответствующую твоему каналу картинку. Что касается остальных неизвестных тебе тэгов, то знай, что <pubDate> определяет время публикации, а <guid> - уникальный идентификатор записи, например, соответствующий ей web-адрес.

И что здесь красивого?

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

Назад на стр. 076-120-1  Содержание  Вперед на стр. 076-120-3