Урок №5. Парсинг с авторизацией

В этом видео я покажу, как собирать данные, для получения которых необходимо авторизоваться на сайте. Мы настроим кампанию Datacol, которая соберет заголовки тем из закрытого для незалогиненных пользователей раздела форума. Для лучшего понимания вопроса, рекомендую предварительно посмотреть видео о настройке сбора анонсов блога.

Изучив данное видео вы сможете собирать информацию, которая доступна только авторизованным пользователям сайта. Теперь вы с легкостью соберете данные с закрытого раздела форума или с закрытого сайта вашего поставщика.


Напомним, что в Datacol Вы так-же найдете уже готовые парсера:

Текст видео (если Вам проще воспринимать информацию после прочтения) »

Авторизацию мы будем реализовать с помощью встроенного браузера Datacol. Для этого воспользуемся продвинутым мастером создания новой кампании.

В данном случае нам понадобиться использовать Браузер для загрузки страницы.

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

Для создания сценария задействуем Datacol Picker.

Обратите внимание на панель Запись действий, расположенную в правой части окна. Эта панель позволяет создавать различные сценарии, которые имитируют такие действия пользователя как: клик мышкой, ввод текста, скрол и тому подобное. Сценарий состоит из блоков. Блок представляет собой набор действий.

Для создания сценария авторизации нам понадобится всего лишь один блок. Добавляем его.

При добавлении сразу укажем название блока, чтобы в будущем было проще ориентироваться в созданном сценарии.

Теперь добавим сами действия.

Сначала определимся какие действия выполняет пользователь для авторизации на сайте.Он вводит логин, пароль и кликает на кнопку «Вход».

Чтобы имитировать ввод логина, добавим действие SET_VALUE. Для этого воспользуемся контекстным меню. Оно вызывается при клике правой кнопкой мыши на вэбэлементе, для которого создаем действие.

Теперь пропишем текст для ввода. В нашем случае это логин.

Аналогично вводу логина создадим действие для ввода пароля.

Далее добавим действие-клик по кнопке Вход.

После этого добавим действие ожидания WAIT, чтобы однозначно дождаться момента, когда сайт авторизует пользователя. Длительность задержки по умолчанию составляет 1000 миллисекунд со случайным отклонение в 500 миллисекунд в большую или меньшую сторону. Другими словами — долго ждать не придется.

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

Заметим, что действия WAIT и NAVIGATE необязательны, однако они гарантируют надежную работу сценария авторизации в большинстве случаев.

Вот и все! Сценарий записан. Осталось его протестировать. Запускаем тест всего сценария.

Видим, что он быстро и успешно отрабатывает.

Нажимаем кнопку Сохранить.

Дальнейшая настройка достаточно проста. Похожие примеры подробно описаны в других видео.

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

Настраиваем диапазоны для сбора данных.

Настраиваем сбор данных.

Остается нажать кнопку Сохранить.

Таким образом мы завершили настройку сбора данных. Теперь закрываем мастер и переходим к тестированию.

Нажимаем кнопку “Запуск”.

Через некоторое время мы видим как появляются браузеры-загрузчики. В них происходит загрузка страниц. При этом выполняется сценарий авторизации.

Вскоре начинают появляться результаты.

После завершении работы кампании все выгруженные данные будут сохранены в Excel файл. По умолчанию он генерируется в папке Мои документы.