Чтение онлайн

на главную - закладки

Жанры

Яндекс для всех
Шрифт:

3.3.2. Что такое RSS-рассылки

RSS-рассылка — это файл, созданный в формате RSS, еще он называется фид (feed). Именно этот файл "вбирают" в себя программы-агрегаторы, когда вы, подписавшись на рассылку, подключаетесь к новостному каналу. Тем, кто знаком с XML, понять формат рассылки будет не сложно. Фид "строится" из предопределенных строительных элементов — тегов, располагаемых опять же в предопределенной последовательности.

Когда RSS-файл создается компанией, в него обычно заносится следующая информация:

название компании, создавшей RSS-файл;

дата и время генерации файла;

темы новостей;

адрес баннера сайта;

заголовки (анонсы) новостей;

дата и время новостей;

краткое изложение новостей;

HTML-адреса до полных текстов новостей (обычно адреса ведут на страницы сайта, создавшего RSS-файл);

HTML-адреса до рисунков, используемых в анонсах новостей.

Разберем вкратце, какие теги используются для создания фидов, а в качестве примера возьмем любую из рассылок Яндекс. Новостей.

Листинг 3.1. Начало RSS-рассылки

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

<rss xmlns: yandex="http://news.yandex.ru" version="2.0">

Первые две строки (листинг 3.1) — служебные. В одной описывается стандарт XML, во второй — стандарт RSS, используемые для создания фида. Кроме того, в описании версии RSS указаны источники пространства имен, применяемые в данном стандарте. Больше в фиде никакой служебной информации нет, все остальное относится непосредственно к рассылке.

В стандарте 2.0 (именно этот формат используется на Яндексе) вся рассылка обрамляется тегом <channel>, а сами новости вложены внутрь этого тега. (В версии 1.0 новости не входят в состав тега <channel>.)

Листинг 3.2. Основная часть фида по версии 2.0:_|

<channel>

<title>Яндекс. Новости: MHTepHeT</title>

<link>http://news.yandex.ru/Russia/internet.html</link>

<description>Первая в России служба автоматической обработки и систематизации новостей. Сообщения ведущих российских и мировых СМИ. Обновление в режиме реального времени 24 часа в сутки.</description>

В описании фида (рассылки) — три обязательных параметра (листинг 3.2):

title — название канала либо название ресурса. По нему будут ссылаться на ресурс;

link — ссылка на источник, соответствующий данному каналу;

description — краткое описание канала.

Кроме обязательных, в состав описания могут входить и необязательные элементы. К ним относятся:

Language — язык, на котором вы пишете свои новости;

copyright — авторские права, ваши, но — на английском;

managingEditor — электронный адрес издателя;

webMaster — электронный адрес веб-мастера;

pubDate — дата публикации. Требование к формату описано в RFC 822;

generator — может использоваться, если канал формируется с помощью какой-либо программ;

image — описывает картинку, которая может показываться агрегаторами для данного канала. Формат изображения — GIF, JPEG или PNG. В свою очередь состоит также из нескольких тегов, описывающих ссылку на картинку, ее описание и некоторые иные параметры;

skipHours и skipDays предназначены для агрегаторов. В этих тегах указывается, в какое время и какие дни "появление" агрегаторов нежелательно.

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

Следующий блок канала — сами сообщения. Каждое сообщение обрамляется элементом item. Все остальные элементы, относящиеся к новости, содержатся внутри него. Элементов item в вашем фиде будет столько, сколько новостей вы будете в нем размещать. Все элементы, входящие в item, являются необязательными, тем не менее, желательно, чтобы присутствовал хотя бы один элемент title или description. Итак, какие элементы могут включаться в описание новости?

Как только что говорилось, в состав описания новости могут включаться элементы:

title — заголовок записи;

link — ссылка на запись;

Description — аннотация либо полная публикация;

category — описывает категорию, к которой можно отнести новость;

pubDate — дата публикации документа. Может содержать будущую дату, по отношению к текущей. В этом случае агрегаторы должны такую новость пропускать.

Есть еще ряд элементов, которые могут входить в описание новости, но на них мы останавливаться не будем. Зато посмотрим, как все, что было описано ранее, выглядит в реальном фиде, точнее, его небольшой части (листинг 3.3).

Листинг 3.3. Пример RSS-фида Яндекс. Новостей_|

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

<rss xmlns: yandex="http://news.yandex.ru" version="2.0">

<channel>

<title>Яндекс. Новости: Интернет</title>

<link>http://news.yandex.ru/Russia/internet.html</link>

<description>Первая в России служба автоматической обработки и систематизации новостей. Сообщения ведущих российских и мировых СМИ. Обновление в режиме реального времени 24 часа в сутки.</description>

<image>

<url>http://company.yandex.ru/i/50x23.gif</url>

<link>http://news.yandex.ru</link>

<title>Яндекс. Новости</title>

</image>

<lastBuildDate>Tue, 20 Feb 2007 23:25:00 +0300</lastBuildDate>

<item>

<title>Компенсация за порно — $5 млн</title>

<link>http://news.yandex.ru/yandsearch?cl4url=bybanner.com/article/4181.ht

ml&country=Russia</link>

<description>Именно столько требует в суде от компании IBM бывший сотрудник, уволенный в 2003 году за посещение порночатов.<br>58-летний Джеймс Пьяченца (James Pacenza) из города Монтгомери утверждает, что увлечение порно помогало ему справиться с тяжелым стрессом, вызванным гибелью на его глазах… <br></description>

<pubDate>Tue, 20 Feb 2007 17:30:17 +0300</pubDate>

<guid>http://news.yandex.ru/yandsearch?cl4url=bybanner.com/article/4181.ht

ml&country=Russia</guid>

</item>

</channel>

</rss>

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

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

Поделиться:
Популярные книги

Древесный маг Орловского княжества 5

Павлов Игорь Васильевич
5. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 5

Я уже граф. Книга VII

Дрейк Сириус
7. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я уже граф. Книга VII

Газлайтер. Том 18

Володин Григорий Григорьевич
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Газлайтер. Том 18

Последний реанорец. Том I и Том II

Павлов Вел
1. Высшая Речь
Фантастика:
фэнтези
7.62
рейтинг книги
Последний реанорец. Том I и Том II

Кодекс Охотника. Книга XIV

Винокуров Юрий
14. Кодекс Охотника
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XIV

Черный маг императора

Герда Александр
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора

Третий. Том 5

INDIGO
5. Отпуск
Фантастика:
космическая фантастика
фантастика: прочее
5.00
рейтинг книги
Третий. Том 5

Хозяин Стужи 7

Петров Максим Николаевич
7. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Хозяин Стужи 7

Рассвет русского царства

Грехов Тимофей
1. Новая Русь
Документальная литература:
историческая литература
5.00
рейтинг книги
Рассвет русского царства

Выйду замуж за спасателя

Рам Янка
1. Спасатели
Любовные романы:
современные любовные романы
7.00
рейтинг книги
Выйду замуж за спасателя

Воин-Врач

Дмитриев Олег
1. Воин-Врач
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
6.00
рейтинг книги
Воин-Врач

Чехов. Книга 2

Гоблин (MeXXanik)
2. Адвокат Чехов
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Чехов. Книга 2

Имперец. Том 3

Романов Михаил Яковлевич
2. Имперец
Фантастика:
боевая фантастика
попаданцы
альтернативная история
7.43
рейтинг книги
Имперец. Том 3

Эволюционер из трущоб. Том 10

Панарин Антон
10. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Эволюционер из трущоб. Том 10