Ответить на комментарий

Действие парсера «Загрузить страницу по ссылке»

Параметры действия:

Предназначение действия:

Действие выполняет загрузку страницы по ссылке.
Это одна из основных команд любого парсера, взаимодействующего с сайтом.

Исходным значением является URL страницы.

Доступно 5 вариантов загрузки страницы (параметр «Способ загрузки»). Способ загрузки может влиять на содержимое загруженной страницы. Если способ загрузки не задан, используется значение по умолчанию, заданное в настройках парсера на вкладке Дополнительно (подвкладка Разное).

Возвращаемое значение: HTML код страницы

 


Параметр «Способ загрузки»

Тип параметра: выбор из списка предопределенных значений

Допустимые значения параметра: <не задано>; WinHTTP; WinAPI; WinInet; IE; Browser

Значение по умолчанию: <не задано>

Программа поддерживает несколько способов загрузки страницы:

WinHTTPWinAPI / WinInet — без использования браузера (загружается только html код, скрипты на странице не отрабатывают). Обычно этот вариант намного быстрее и стабильнее, чем вариант с браузером.

IE / Browser — загрузка страницы при помощи браузера (загружается не только страница, но и все картинки и прочие данные, на странице отрабатывают js скрипты). В каких случаях имеет смысл применять браузер

Если значение параметра не задано, используется способ загрузки, заданный в настройках парсера на вкладке «Дополнительно» - «Разное» (по умолчанию это WinHTTP)
 

Параметр «Кеширование»

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

Примеры значений параметра: <не задано>; да; нет; только запись

Значение по умолчанию: <не задано>

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

В большинстве случаев (99%), этот параметр изменять не требуется

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

Параметр «URL (вместо исходного значения)»

Тип параметра: произвольная ссылка

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

Этот параметр обычно указывается только в самом первом действии в парсере, если мы парсим сайт целиком, — когда мы загружаем стартовую страницу каталога, ссылка на которую не изменяется (хотя, как вариант, можно оставить этот параметр пустым, и указать ссылку в поле «Исходное значение» на вкладке «Исходные данные»)
В большинстве случаев этот параметр остаётся пустым, а ссылка берется из результата предыдущего действия (значение на входе действия)

 

Параметр «Дополнительные опции»

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

Примеры значений параметра: encoding:"utf-8"; ie-page-mask: "*SomeText*"; pager: page; pager: "page-#/";
browser-wait: Mask=*SomeText*; browser-wait: Time=8

В большинстве случаев этот параметр изменять не требуется (оставьте это поле пустым).
 

Дополнительные опции имеют синтаксис json вида название:"значение"
Если нужно указать несколько опций одновременно, то запись будет иметь вид {название1:"значение1",название2:"значение2",название3:"значение3"}
 

Поддерживаются следующие опции:

encoding:"кодировка" — позволяет принудительно указать парсеру на кодировку ответа сервера. В 99.8% случаев парсер сам корректно определяет используемую кодировку, основываясь на заголовках ответа сервера, но иногда может потребоваться принудительно указать кодировку utf-8

ie-page-mask:"маска" — применяется только при способе загрузки «IE», и задаёт маску текста, появления которого на странице будет ждать браузер IE. Используется, когда скрипты догружают данные на страницу с задержкой, и парсер должен ожидать, пока все скрипты не закончат работу (например, скрипт подгружает актуальную цену и наличие отдельными запросами уже после того, как страница загрузилась). Маска обычно имеет вид *SomeText*, где SomeText - слово или фраза, которые появляются на странице только после завершения работу скриптов в браузере.

pager: "маска пейджера" — позволяет загрузить по заданному URL не одну эту страницу, а все страницы результатов (программа найдет ссылки пейджера по заданной маске, и прогрузит их все). Результатом действия в этом случае будет МАССИВ значений (сколько страниц пейджера программа найдет, столько элементов и будет в массиве)
Чем полезна эта опция: она позволяет легко прогрузить все страницы пейджера, когда их количество заранее неизвестно (например, видно, что есть есть страницы результатов с 1 по 5, и только когда щелкнешь на пятой странице, пейджер меняется на 1 2 ... 5 ... 7 8, давая понять что есть еще страницы результатов, но сколько их всего - нет возможности узнать, не перебрав их все)
Есть варианты это сделать и другим способом, но данный вариант самый простой.

browser-wait: параметр=значение — используются только при способе загрузки Browser, для указания парсеру, какой из способов ожидания данных на странице нужно использовать.

 

Примеры использования:

 

Исходное значение
Ссылка: (откроется в новой вкладке)
Действие Параметр Значение Результат
Загрузить страницу по ссылке Способ загрузки   Исходный код веб-страницы (длиной 15742 символа)

Кеширование  
URL  
Дополнительные опции  

 

Ответить

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
         _   _                ___                ____  
__ __ | | | | _ __ ___ / _ \ _ __ ___ | __ )
\ \/ / | | | | | '_ ` _ \ | (_) | | '_ ` _ \ | _ \
> < | |_| | | | | | | | \__, | | | | | | | | |_) |
/_/\_\ \___/ |_| |_| |_| /_/ |_| |_| |_| |____/
Введите код, изображенный в стиле ASCII-арт.