Кастомные HTTP-заголовки

Изменено Mon, 09 Oct 2023 на 07:38 PM

В Netpeak Spider 3.6 появилась возможность указывать пользовательские HTTP-заголовки для более гибкой настройки программы и выполнения более широкого спектра задач. 

1. Зачем нужна эта функция

1.1. Сканирование сайтов, закрытых авторизацией

Кастомные HTTP-заголовки позволят спарсить сайт, контент которого доступен после прохождения авторизации.

1.2. Обход защиты сайта

Данная функция будет полезна, если на сайте есть защита от краулинга (парсинга). Благодаря настройке заголовков при обращении сервер будет считать запрос пользовательским, а не автоматическим.

1.3. Получение динамических версий страниц

Функция пригодится, когда нужно спарсить сайт, отдающий различные модификации исходного кода в зависимости от параметров, передаваемых в HTTP-заголовках. Например, идентификатор устройства, клиента, региона, языковой версии, разрешение экрана. 

Важно:

Отнеситесь к этой функции со всей серьёзностью. Если вы не до конца понимаете принцип работы функции, не используйте её. Когда вы отправите краулер сканировать сайт в обход авторизации, ему будут доступны кнопки (ссылки), которые недоступны простому пользователю. Например, ссылки, которые удаляют страницы. Таким образом вы можете уничтожить сайт. 

2. Как настроить HTTP-заголовки 

Внести пользовательские заголовки вы можете на вкладке настроек «HTTP-заголовки».

2.1. Поля «User-Agent», «Accept», «Accept-Encoding», являются встроенными, их нельзя изменить или удалить. В случае создания другого заголовка с аналогичным названием, программа проигнорирует его во избежание появления ошибок.

Обратите внимание: 

User Agent настраивается на вкладке настроек «User Agent». 


2.2. Кнопка «Добавить заголовок» выводит новую строку с полями «Название», «Значение» и кнопкой «Удалить». В строке вы можете самостоятельно задать значение и название заголовка, а также добавить неограниченное количество заголовков.

Добавить заголовок


2.3. Кнопка «Сбросить все» удаляет все заголовки, кроме первых трёх. Кнопка «Восстановить настройки по умолчанию» очищает все добавленные заголовки, восстанавливая стандартный набор заголовков.

Сбросить всё


2.4 Вы можете сохранить набор заголовков как шаблон, нажав на кнопку с соответствующим названием.

Шаблон


Обратите внимание: 

  • Если чекбокс «Разрешить cookies» на вкладке настроек «Продвинутые» НЕ включён, программа НЕ отправляет куки-файлы. Если чекбокс отмечен, программа отправляет заданные в настройках куки и корректно обрабатывает куки, которые получила от сервера.
  • Чтобы кастомные HTTP-заголовки учитывались во время сканирования, в поле «Начальный URL» добавьте URL сайта.
  • Заголовок Authorization на вкладке «Аутентификация», который используется для получения доступа к сайту, закрытому базовой аутентификацией, будет проигнорирован, если используется такой же заголовок на вкладке «HTTP-заголовки».
  • Некоторые заголовки нельзя объединять через запятую, например, Authorization или Referer. В случае добавления данных значений в один заголовок, в запросе будет передано только последнее указанное значение.
  • Netpeak Spider обрабатывает только первые 20 куки-файлов. Удалите ненужные куки, если необходимые не попали в первые 20.

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

3.1 Проверка изменений на сайте с помощью If-Modified-Since

1. На вкладке настроек «HTTP-заголовки» прописываем новый заголовок по схеме: If-Modified-Since: , :: GMT.

Пример заголовка: If-Modified-Since: Wed, 1 Jan 2020 07:28:00 GMT 

2. Устанавливаем агента, с помощью которого мы будем отправлять запросы к серверу, где расположен сайт, на вкладке настроек «User Agent». 

3. В поле «Начальный URL» вставляем URL сайта и нажимаем «Старт».

Для чего это необходимо?

Если во время сканирования страница отдала код ответа сервера 200, это значит, что она подвергалась изменениям в промежуток времени, указанный в заголовке  If-Modified-Since. Если сервер вернул для страницы 304 код ответа, значит она не менялась.

3.2 Проверка контента, адаптированного для разных регионов

Вы можете задать любое значение языка и региона, начиная с заголовков Accept-Language, Cookie, Referer и заканчивая любым заголовком с уникальным именем. Этот позволит проанализировать контент страниц, адаптированный под разные регионы. 

Статья помогла?

Отлично!

Спасибо за ваш отзыв

Извините, что не удалось помочь!

Спасибо за ваш отзыв

Расскажите, как мы можем улучшить эту статью!

Выберите хотя бы одну причину
Требуется проверка CAPTCHA.

Комментарий отправлен

Мы ценим вашу помощь и постараемся исправить статью