Книга знаний

1С:Предприятие

Лента новостей в 1с

Просмотр новостей со всего мира в 1сАвтор статьи:
Последняя редакция №1 от 16.11.07
URL: http://kb.mista.ru/article.php?id=607

Ключевые слова: лента новостей, rss


Для начала определим сервер от которого будем получать новости в формате rss 2.0, например http://lenta.ru. Далее, создадим внешнюю обработку и разместим на ее форме ПолеHTMLДокумента и кнопку по котрой будем обновлять новости. В событие Нажатие кнопки поместим следующий код:    // формируем HTML документ новостей    ТекстHTML =    "";        Соединение = Новый HTTPСоединение("lenta.ru");        ИмяФайла = ПолучитьИмяВременногоФайла(".rss");        Соединение.Получить("/r/EX/import.rss", ИмяФайла);        ПараметрыЧтенияXML = Новый ПараметрыЧтенияXML(,,,, Истина, Истина,Истина,Истина,Истина);        ЧтениеXML = Новый ЧтениеXML;    ЧтениеXML.ОткрытьФайл(ИмяФайла, ПараметрыЧтенияXML);        ЧтениеXML.Прочитать();    Если ЧтениеXML.Имя = "rss" Тогда                 ЧтениеXML.Прочитать();         Если ЧтениеXML.Имя = "channel" И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда                          // Выводим заголовок новостей              title = ПрочитатьЗначениеТега(ЧтениеXML, "title");                                          ТекстHTML = ТекстHTML + "              |<TITLE> " + title + "</TITLE>              |<BODY>";                                                                      link        = ПрочитатьЗначениеТега(ЧтениеXML, "link");              description = ПрочитатьЗначениеТега(ЧтениеXML, "description");                                          // Выводим link              ТекстHTML = ТекстHTML + "              |

<a href = """ + link + """> "+ description +"</a>

";                                          // выводим новости в таблице              ТекстHTML = ТекстHTML + "              |";                            НомерНовости = 0;              // читаем собственно сами новости              Пока ЧтениеXML.Прочитать() Цикл                                    Если ЧтениеXML.Имя = "item" и ЧтениеXML.ТипУзла=ТипУзлаXML.НачалоЭлемента Тогда                                             НомерНовости = НомерНовости + 1;                                             title       = ПрочитатьЗначениеТега(ЧтениеXML, "title");                       link        = ПрочитатьЗначениеТега(ЧтениеXML, "link");                       description = ПрочитатьЗначениеТега(ЧтениеXML, "description");                       pubDate     = ПрочитатьЗначениеТега(ЧтениеXML, "pubDate");                       category    = ПрочитатьЗначениеТега(ЧтениеXML, "category");                                                                   // выводим новости в таблице                             ТекстHTML = ТекстHTML + "                       |<tr>                       |    <td> " + Строка(НомерНовости) + ".</td>                       |    <td><a href="""+link+"""a>" + title + "</a></td>                       |</tr>";                                        КонецЕсли;                                      КонецЦикла;                                          // закрываем вывод новостей              ТекстHTML = ТекстHTML + "              |
";                       КонецЕсли;            КонецЕсли;            ТекстHTML = ТекстHTML + "    |</BODY>    |</HTML>";            ЭлементыФормы.ПолеHTMLДокумента.УстановитьТекст(ТекстHTML); И видим на форме обработки новости!


Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика