Как парсить контент, которого нет в коде страницы (контент подгружается скриптами в браузере)

Парсинг данных, которые подгружаюся POST запросом (парсинг с помощью макроса PHP_SCRIPT)

Когда вы открываете веб-страницу в браузере, например http://www.yandex.ru/, то происходит GET-запрос к этому адресу. Далее браузер получает текстовый контент по этому GET-запросу и начинает его обрабатывать (например, выполняет из кода документа скрипты, которые догружают WEB-страницу производя другие GET или POST запросы (для подгрузки дополнительного контента).

Если в Content Downloader использовать библиотеку Indy или Clever Internet Suite (ctrl+h для выбора библиотеки), то парсер не будет обрабатывать скрипты (произойдет обычный GET-запрос к URL-адресу). Но на некоторых интернет-сайтах такими скриптами могут подгружаться нужные нам данные, например, цены, описания товаров, ссылки и прочее. Зная url-адреса (ссылки), по которым происходят GET или POST Запросы для подгрузки нужных данных, мы можем подгружать эти данные при парсинге, используя макрос шаблона вывода GETMORECONTENT (либо можно просто добавить эти адреса в список ссылок и производить парсинг с них).

Следует отметить, что при выборе библиотеки Internet Explorer (DOM) (WBApp) (включается в окне ctrl+h), код WEB-документов будет загружаться с использованием браузера Internet Explorer, который будет сам автоматически выполнять скрипты и подгружать дополнительный контент. Но выбор Internet Explorer снижает скорость парсинга и далее мы будем рассматривать варианты подгрузки данных без него. Также, этот метод позволяет запускать списки событий приложения WBApp, которые могут имитировать прокрутки WEB-страниц вниз, клики по различным элементам страниц и так далее… Подробнее о WBApp вы можете почитать тут.

Для того, чтобы узнать URL-адреса запросов подгрузки данных, мы будем использовать монитор сети браузера Firefox (shift+ctrl+e в браузере Firefox). Монитор сети будет отображать все GET и POST запросы, происходящие в браузере в реальном времени.

Как получать адреса запросов и их параметры

После получения данных о нужном запросе переходим к его воссозданию в Content Downloader.

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

Если это запрос, по которому вы берете основной контент, например, страницы с выдачей товаров заскриптованного сайта, то вставляйте адрес(а) запроса(ов) в список ссылок Content Downloader.

Если же это подгрузка дополнительных данных, например, описания товара или контактных данных, используйте для воссоздания запроса макрос шаблона вывода <GETMORECONTENT>

Загрузка основного контента (парсинг по списку ссылок)
Старое видео и примеры
1 Star2 Stars3 Stars4 Stars5 Stars (оценок: 5, средний балл: 5,00)
Загрузка...
Автор: admin, 2 декабря 2012
Рубрики: Парсинг
Метки: , ,
2 комментария к сообщению: “Как парсить контент, которого нет в коде страницы (контент подгружается скриптами в браузере)”
  1. Доброго вечера. Подскажите куда копать по поводу этого сайта, у меня версия ULTIMATE . Я бы сказал на 30% удается загрузить с помощью WBApp — мне необходимо спарсить все возможные значения , особенно на странице #explain.
    Заранее благодарю.

Написать комментарий

Вы должны войти чтобы добавить комментарий.

Последние статьи

css.php