Загрузка страницы с товарами с Яндекс маркета
Наш пример состоит из двух этапов:
1) Создём приложение InternetExplorer, воспользовавшись функцией — ПолучитьAppIE().
2) Используя приложение InternetExplorer, грузим страницу по URL, применив функцию — ПолучитьHtmlDoc().
Таким образом, мы получим объектную модель (DOM), загруженного документа из глобальной сети. Полученный объект (COM) теперь можно использовать по своему усмотрению — парсить, обрабатывать и многое другое.
К примеру, для работы с этим объектом (COM), можно использовать всё многообразие встроенных методов таких приложений как, IE или JavaScript или библиотеки jQuery.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
// Создаем новый пустой процесс приложения IE // Возвращаем указатель на процесс Функция ПолучитьAppIE() Попытка // Создаем новый процесс приложения IE appIE = Новый COMОбъект("InternetExplorer.Application"); appIE.Visible = Ложь; // не отображаем его (браузер) на экране Исключение Сообщить("Ошибка при создании приложения InternetExplorer.Application..."); КонецПопытки; Возврат appIE; // Возвращаем указатель на процесс КонецФункции // Получаем объект DOMDocument при помощи приложения InternetExplorer.Application Функция ПолучитьHtmlDoc(appIE,url) Попытка // Загружаем страницу из интернета appIE.Navigate(url); pr = 0; // Ожидаем, пока загрузится страница по url Пока appIE.Busy цикл pr =pr + 1; сообщить(pr); КонецЦикла; // Получаем html-страницу как DOM (объектная модель документа) htmlDoc = appIE.Document; //body = appIE.Document.getElementsByTagName("body"); Исключение Сообщить("Ошибка при создании документа html"); КонецПопытки; Возврат htmlDoc; КонецФункции // Загружаем страницу с товарами с яндекс маркет Функция main() // запрос на market . yandex . ru про кроссовки url = "h t t p: //market . yandex . ru/search.xml?text=%A1%80%A0%D5%B0%E4%A0%D8%A1%81%A0%DA%A0%D0&cvredirect=2"; // создаем новый процесс приложения IE appIE = ПолучитьAppIE(); //DOMDocument с помощью приложения InternetExplorer.Application htmlDoc = ПолучитьHtmlDoc(appIE,url) ; КонецФункции |