Screaming Frog Seo Spider для парсинга сайта: подробная инструкция для новичков
Парсинг — один из самых эффективных способов автоматизировать сбор данных с сайтов. Он экономит десятки часов ручной работы, позволяя в несколько кликов получить нужную информацию: цены конкурентов, характеристики товаров, фотографии, отзывы, структуру разделов и многое другое. Современные инструменты, такие как Screaming Frog SEO Spider, делают этот процесс доступным даже для пользователей без навыков программирования — достаточно понимать принципы построения XPath-запросов.
Если вам нужно собрать только метаданные — например, title, description, h1 или проверить индексацию страниц, — можно воспользоваться бесплатным парсером PromoPult. Он работает прямо в браузере, без установки и лицензии, и идеально подходит для быстрых SEO-задач. А вот если требуется собрать более сложные данные (например, фотографии, характеристики или динамически подгружаемый контент), тогда стоит использовать Screaming Frog — профессиональный инструмент с гибкой настройкой и поддержкой XPath.
В этом материале вы узнаете, как на практике собирать данные с сайтов разных типов: интернет-магазинов, каталогов, маркетплейсов и досок объявлений. Мы рассмотрим реальные примеры — от простого извлечения цен до парсинга отзывов и скрытых телефонов — и покажем, как обойти типичные ограничения, чтобы получить максимально точную и полную информацию.
Что такое парсинг и зачем он используется
Парсинг — это процесс автоматического сбора данных с веб-страниц и их преобразования в удобный формат для анализа или дальнейшего использования. Проще говоря, это инструмент, который помогает быстро получить нужную информацию из разных источников — без ручного копирования.
Например, бизнес может использовать парсинг, чтобы отслеживать цены конкурентов, анализировать ассортимент или собирать данные для наполнения каталога интернет-магазина. Вместо того чтобы вручную просматривать десятки сайтов, программа делает это автоматически — за несколько минут.
Собранные сведения обычно представляются в виде таблицы: названия товаров, цены, описания, характеристики, ссылки и другие параметры. Это уже структурированные данные, готовые к обработке и использованию в аналитике, рекламе или SEO.
Инструмент, который выполняет такую задачу, называется парсером. Он «обходит» указанные страницы по URL-адресам, извлекает нужные элементы и сохраняет результаты, например, в формате Excel или CSV.
Технически парсинг основан на XPath-запросах — специальном языке, который позволяет находить на странице конкретные блоки кода и извлекать из них нужную информацию. Благодаря этому процесс становится точным и гибким: можно собирать не весь контент, а только нужные данные — например, только цены или отзывы.
Программы для парсинга: какие бывают и как выбрать
Когда вы ищете в интернете «заказать парсинг» или «написать парсер под ключ», чаще всего попадаются предложения от разработчиков, готовых создать индивидуальное решение под конкретную задачу. Такие услуги стоят довольно дорого: программисты пишут скрипт на Python или другом языке, который собирает нужные данные с определенного сайта. Проблема в том, что подобная программа обычно узкоспециализирована — она заточена под один ресурс и без знаний кода её сложно адаптировать для новых целей.
К счастью, есть альтернативный вариант — готовые программы для парсинга, которые можно самостоятельно настроить под любые нужды. Они позволяют выбирать, какие данные собирать, с каких страниц и в каком формате сохранять результаты. Даже без технических знаний пользователь может получить гибкий инструмент для SEO-аналитики, мониторинга цен или сбора контента.
Многие SEO-специалисты уже используют такие программы, даже не всегда осознавая, что в них есть функции парсинга. Например, знакомый большинству Screaming Frog SEO Spider — это не только инструмент для анализа сайта, но и мощный парсер. Он может собирать заголовки, метатеги, описания, статусы страниц и любые другие элементы, которые вы зададите вручную.
Помимо Screaming Frog, широкие возможности предлагают и инструменты платформы PromoPult. В них есть всё для комплексной работы с данными:
- съём позиций и кластеризация запросов;
- парсер Wordstat и сбор поисковых подсказок;
- анализ индексации страниц и парсер метатегов;
- генератор данных из YML-файлов;
- парсер ИКС Яндекса;
- нормализатор и комбинатор фраз;
- сбор сообществ и пользователей ВКонтакте;
- AI-генератор изображений.
Такой набор инструментов позволяет решать задачи намного быстрее, чем при ручной обработке, и значительно дешевле, чем при заказе кастомных скриптов.
Теперь разберёмся, как всё это работает на практике.
Как быстро начать работу с Screaming Frog
Screaming Frog SEO Spider — один из самых популярных и удобных инструментов для парсинга сайтов. Он совмещает простоту интерфейса с широкими возможностями анализа. Программа подходит и для небольших сайтов, и для крупных проектов с тысячами страниц. Доступна на Windows, macOS и Linux, интерфейс — на английском языке.
Загрузка и лицензия
Скачать Screaming Frog можно с официального сайта разработчика. Бесплатная версия ограничена 500 URL-адресами за один запуск — этого вполне достаточно, чтобы протестировать функционал или проанализировать небольшой проект.
Для крупных сайтов и продвинутых задач понадобится платная лицензия — $279 в год на одного пользователя. После покупки ключ активируется через меню Licence → Enter Licence, где нужно ввести имя и лицензионный код.
Основные режимы работы
Инструмент поддерживает несколько форматов парсинга — в зависимости от задач:
- Spider — базовый режим. Программа сканирует весь сайт, переходя по внутренним ссылкам и собирая данные о страницах, метаинформации, заголовках, кодах ответов, перелинковке и структуре. Подходит для SEO-аудитов, поиска битых ссылок и анализа архитектуры сайта.
- List — анализ выбранного списка URL. Можно загрузить файл с адресами (.txt, .csv, .xlsx) или указать ссылки вручную. Поддерживается импорт XML-карт сайта через пункт Upload → Download Sitemap.
- Compare — сравнение двух сканирований. Помогает отследить изменения между версиями сайта: появление или удаление страниц, корректировку мета-тегов, изменение кодов ответов. Удобно при проверке тестовой и продакшн-версии или мобильной и десктопной.
- SERP — визуализация сниппетов. Позволяет загрузить список URL в формате CSV или XLS и посмотреть, как страницы будут отображаться в поисковой выдаче. Полезно при оптимизации мета-тегов.
- APIs — интеграция с внешними сервисами. Screaming Frog может подключаться к Google Analytics, Search Console, PageSpeed Insights, Ahrefs и другим источникам. При этом к стандартным данным добавляются метрики по трафику, ссылкам и скорости загрузки страниц.
Настройка Screaming Frog для быстрого старта
1. Активируйте загрузку JavaScript. Это позволит парсеру видеть контент так же, как и обычный пользователь. Без этой опции инструмент может не распознать динамически подгружаемые элементы — например, цены или отзывы. → Configuration → Spider → Rendering → JavaScript Rendering
2. Установите лимиты и глубину сканирования. Чтобы контролировать объем обрабатываемых страниц, откройте: Configuration → Spider → Limits. Здесь можно задать:
- Limit Crawl Total — общее количество страниц;
- Limit Crawl Depth — глубину переходов по ссылкам.
3. Выберите User-Agent. По умолчанию Screaming Frog «представляется» как свой бот, но для корректности данных можно указать, например, Googlebot или YandexBot: Configuration → User-Agent.
4. Отключите ненужные элементы. Чтобы ускорить сканирование, можно не собирать изображения, CSS или внешние ссылки: → Configuration → Spider. Снимите галочки с Images, CSS, External Links.
5. Отрегулируйте скорость работы. В меню Configuration → Speed задайте количество одновременных соединений и задержку между запросами, чтобы снизить нагрузку на сервер и избежать блокировок.
6. Настройте автосохранение проекта. Чтобы не потерять результаты при сбое, включите автосохранение: Configuration → Save → Auto Save
Screaming Frog позволяет быстро начать парсинг без навыков программирования — всё настраивается через интерфейс. После первичной конфигурации вы сможете за считанные минуты собрать нужные данные для SEO, аудита или конкурентного анализа.
Пример 1. Извлекаем цену товара с карточки
Допустим, вам нужно быстро снять цены у конкурента и сверить их со своими. Возьмём для демонстрации карточку товара на mosdommebel.ru: на странице есть заголовок товара и его стоимость — именно её мы и хотим собрать с множества страниц.
Как понять, где «живёт» цена в коде страницы
- Откройте карточку товара и кликните правой кнопкой мыши именно по цене.
- Выберите Inspect / Исследовать элемент — браузер откроет панель разработчика и подсветит соответствующий фрагмент HTML.
- В нашем примере стоимость расположена внутри тега <span> с классом totalPrice2. Запомним: есть элемент span, у которого class="totalPrice2".
Два подхода к получению XPath (и почему один из них лучше)
Подход 1. «Скопировать как есть» (ненадёжно). В панели разработчика можно нажать на найденный , выбрать Copy → Copy XPath и получить длинный абсолютный путь вроде:
/html/body/div[1]/div[2]/div[4]/table/tbody/tr/td/div[1]/div/table[2]/tbody/tr/td[2]/form/table/tbody/tr[1]/td/table/tbody/tr[1]/td/div[1]/span[1]
Минус: малейшее отличие в вёрстке другой карточки (иного блока не будет, изменится порядок таблиц и т.п.) — и такой XPath «сломается».
Подход 2 — написать «умный» XPath вручную (рекомендуется). Мы обращаемся не к позиции в дереве, а к семантическому признаку элемента (тег + атрибут). Примеры:
- Получить текст заголовка товара: //h1/text()
- Получить текст заголовка h1 с конкретным классом: //h1[@class="productName"]/text()
- Получить цену из нужного span по классу: //span[@class="totalPrice2"]/text()
- Сделать запрос чуть устойчивее к вариациям классов://span[contains(@class, "totalPrice")]/text()
Такие запросы обычно работают стабильно на всей группе карточек, даже если структура страниц слегка расходится.
Как вписать XPath-запрос и собрать данные в Screaming Frog
Теперь, когда вы знаете, какой XPath-запрос нужен для извлечения данных (например, цены), разберем, куда его вносить в Screaming Frog SEO Spider и как правильно запустить сбор.
Если вы используете полную версию Screaming Frog, откройте меню Configuration → Custom → Extraction.
Этот раздел позволяет добавлять собственные правила парсинга — то есть извлекать с выбранных страниц не только стандартные элементы вроде заголовков и метаописаний, но и любые данные, присутствующие в коде.
В нашем случае нам нужно собрать цены с сайта Московский дом мебели, где стоимость товара находится в теге с классом totalPrice2.
В поле для XPath-запроса вводим:
//span[@class="totalPrice2"]/span
В правой части окна можно задать имя колонки, например — Стоимость. Это название появится в итоговой таблице результатов.
Также нужно выбрать формат данных:
- Text — чтобы получить только текстовое значение (например, «18 900»);
- HTML — если требуется сохранить разметку (например, с тегами <b>, <br> и т.д.).
Для цен логичнее выбрать Text, чтобы результат можно было сразу обработать в Excel.
Нажимаем ОК — и кастомный парсер готов.
Как подобрать страницы для парсинга
Если просто ввести домен сайта, Screaming Frog начнёт обходить весь ресурс подряд, включая новости, статьи и разделы без цен. Чтобы сэкономить время, лучше сразу загрузить список карточек товаров.
Проще всего взять его из карты сайта (Sitemap.xml), которая обычно находится по адресу site.ru/sitemap.xml или упоминается в файле robots.txt (в самом низу).
Например, у mosdommebel.ru карта доступна по ссылке: https://www.mosdommebel.ru/sitemap.xml.
Открыв её, можно увидеть, что сайт использует несколько отдельных карт — для статей, категорий, продуктов и новостей.
Нас интересует именно карта с товарами (product sitemap).
Как загрузить список URL
Чтобы проанализировать только нужные страницы:
1. Перейдите в меню Mode → List.
2. Нажмите Upload → Download Sitemap.
3. Вставьте ссылку на файл sitemap с карточками товаров и подтвердите.
Программа автоматически скачает все URL из карты (например, 40 000 ссылок) и подготовит их к сканированию.
Запуск парсинга и просмотр результатов
После загрузки адресов запустите процесс анализа. Когда Screaming Frog завершит обход, на вкладке Internal появятся все стандартные параметры страниц — коды ответов, теги, метаописания и т.д.
Но чтобы увидеть цены, нужно перейти во вкладку Custom. Если она не отображается в панели, нажмите стрелочку справа от вкладок и выберите Custom → Extraction.
Здесь вы увидите таблицу со списком страниц и новой колонкой Стоимость (или любым другим названием, которое задали). В ней будут выгружены все цены в рублях.
Полученные данные можно экспортировать в Excel (XLSX) или CSV, чтобы далее очистить значения — например, убрать пробелы и символ «р».
Если вы хотите дополнительно спарсить, скажем, названия товаров, достаточно добавить ещё один XPath-запрос:
//h1/text()
и повторно запустить анализ.
Тогда итоговая таблица будет включать три колонки: URL, Название, Цена.
Для других элементов, например описаний, алгоритм такой же:
1. Снова открываем Inspect Element на странице товара.
Смотрим, в каком теге размещён нужный текст. Например, описание находится в
2. Формируем запрос: //table[@class="product_description"]
3. Если нужен чистый текст — выбираем режим Text, если вместе с HTML-разметкой — HTML.
После того как вы собрали все нужные данные (цену, название, описание и т.д.), Screaming Frog создаст структурированную таблицу, готовую к анализу.
Такой парсинг можно автоматизировать и повторять регулярно, например раз в неделю, чтобы отслеживать изменения цен у конкурентов, выявлять динамику и быстро реагировать на колебания рынка.
Пример 2. Как собрать ссылки на фотографии товаров
Теперь рассмотрим сбор фотографий с карточек товаров. На примере сайта Эльдорадо покажем, как получить список всех изображений без скачивания самих файлов — только их URL-адреса. Это удобно, если вы хотите загрузить те же фотографии на свой сайт или в каталог.
Большинство CMS, включая Битрикс, Shop-Script и OpenCart, позволяют импортировать изображения по ссылкам: достаточно, чтобы в CSV-файле для импорта был столбец со ссылками на фото — движок сам подгрузит их при обновлении каталога.
Определяем расположение изображений в коде
Открываем карточку любого товара, кликаем правой кнопкой мыши по фотографии и выбираем Inspect Element (Исследовать элемент).
В панели разработчика видно, что фото находится внутри тега <span> с атрибутом id="firstFotoForma".
Изображения хранятся в этом блоке и имеют тег , где в атрибуте src прописан путь к файлу.
Чтобы извлечь эти ссылки, используется XPath-запрос:
//*[@id="firstFotoForma"]/*/img/@src
Разберем его:
- //*[@id="firstFotoForma"] — обращаемся к элементу с заданным идентификатором;
- /*/img — выбираем все вложенные теги <img>;
- @src — получаем значение атрибута, то есть адрес изображения.
Переходим в меню Configuration → Custom → Extraction, вставляем XPath-запрос и называем колонку, например Фото товара. Сохраняем настройки (ОК).
Проверяем работу на одной карточке
Перед массовым запуском стоит протестировать парсинг на одной странице.
1. В режиме List выберите Upload → Paste.
2. Вставьте URL карточки товара.
3. Нажмите ОК и запустите сканирование.
После завершения на вкладке Custom → Extraction появится таблица:
- в первом столбце — адрес страницы,
- в последующих — ссылки на изображения товара.
Если в одной карточке несколько фото, Screaming Frog автоматически создаст несколько строк или столбцов (например, 9 ссылок для одной карточки).
Чтобы убедиться, что парсинг сработал правильно, скопируйте любую ссылку и вставьте в адресную строку браузера — изображение должно открыться.
После теста переключаем программу в режим Spider: → Mode → Spider
Указываем основной адрес сайта, например https://www.eldorado.ru, и запускаем процесс.
Программа начнёт обходить весь ресурс, собирая данные только с карточек товаров. Информационные разделы и страницы без фотографий будут просто пропущены.
После завершения сканирования у вас будет таблица со всеми ссылками на изображения товаров — ее можно выгрузить в Excel или CSV.
Как собрать дополнительные данные
Чтобы одновременно получить названия товаров или артикулы, добавьте дополнительные XPath-запросы в том же разделе Extraction:
- Название (<h1>): //h1/text()
- Артикул (если в коде есть, например, <span class="product-code">): //span[@class="product-code"]/text()
После перезапуска анализа Screaming Frog создаст таблицу со связкой: Название товара + Артикул + Ссылки на фото.
Пример 3. Как собрать характеристики товаров с карточек
Иногда для наполнения каталога не хватает данных о товарах — например, у вас в магазине указаны только автор и год издания книг, а на Ozon есть подробные характеристики: формат, издательство, количество страниц, возрастное ограничение и т. д.
Такую техническую информацию можно легально спарсить и использовать для улучшения описаний в собственном интернет-магазине.
Определяем, где находятся характеристики
Откройте карточку товара на Ozon, кликните правой кнопкой мыши по одной из характеристик и выберите Inspect Element (Исследовать элемент).
В коде страницы видно, что каждая строка характеристики находится внутри элемента div с классом eItemProperties_line.
То есть структура повторяется для всех пунктов: в одном <div> указано название параметра (например, «Автор»), а рядом — его значение («Игорь Ашманов»).
Чтобы извлечь эти данные, используем простой XPath:
//*[@class="eItemProperties_line"]
Он обращается ко всем элементам с этим классом и собирает их содержимое.
Если в разных карточках может встречаться несколько классов с похожими именами, можно уточнить выражение:
//div[contains(@class, "eItemProperties_line")]
Настраиваем Screaming Frog
Откройте Configuration → Custom → Extraction, вставьте ваш XPath-запрос и в настройках выберите Extract Text, чтобы получать только текст без HTML-разметки.
Назовите колонку, например, Характеристики.Нажмите ОК, чтобы сохранить настройки.
Проверяем на одной карточке
Перейдите в Mode → List, нажмите Upload → Paste, вставьте ссылку на карточку товара и запустите сканирование.
После завершения откройте вкладку Custom, выберите фильтр Extraction — и вы увидите таблицу со всеми извлеченными характеристиками. В каждой строке будет пара «название — значение», например:
- Автор — Игорь Ашманов.
- Издательство — Питер.
- Год издания — 2023.
- Количество страниц — 320.
Когда убедились, что запрос работает корректно, можно собрать данные по целой категории товаров:
- Загрузите список URL карточек (например, из sitemap-файла Ozon или вашего экспорта).
- Перейдите в режим List и запустите процесс.
Screaming Frog пройдёт по всем карточкам и создаст таблицу, где для каждой страницы будут собраны все указанные характеристики.
Готовый файл можно выгрузить в Excel или CSV, а затем:
- дополнить ваши карточки недостающими характеристиками;
- использовать данные для сравнительного анализа ассортимента;
- улучшить фильтры и поиск на сайте, добавив больше атрибутов.
Таким образом, всего один XPath-запрос и базовые настройки Screaming Frog позволяют автоматически собрать технические характеристики с любого интернет-магазина — быстро и без ручного копирования.
Пример 4. Как спарсить отзывы с сайтов, где контент подгружается JavaScript
Сбор отзывов — одна из самых сложных задач для парсинга, особенно если сайт использует динамическую подгрузку данных. Рассмотрим это на примере Ozon — платформа подгружает отзывы только после прокрутки страницы пользователем. Поэтому простой HTML-парсинг здесь не сработает.
На странице карточки товара открываем отзывы, кликаем правой кнопкой мыши по тексту отзыва и выбираем Inspect Element (Исследовать элемент).
В коде видно, что каждый отзыв расположен в элементе div
с классом jsCommentContent.
Для извлечения этих данных подойдёт XPath-запрос:
//*[@class="jsCommentContent"]
Добавляем его в Screaming Frog через меню Configuration → Custom → Extraction и называем колонку, например Отзывы.
Почему парсер не видит отзывы сразу
Если после запуска вы видите пустые строки в таблице, дело не в XPath — просто текст отзывов отсутствует в исходном HTML.
Ozon подгружает отзывы асинхронно через JavaScript, когда пользователь прокручивает страницу до соответствующего блока.
Чтобы программа «увидела» эти данные, нужно активировать рендеринг JavaScript — чтобы Screaming Frog имитировал поведение браузера и подождал, пока страница полностью отрисуется.
Для этого:
Для этого:
1. Перейдите в меню Configuration → Spider → Rendering
2. В параметре Rendering выберите JavaScript (по умолчанию стоит HTML Only).
3. В разделе Device укажите тип устройства — обычно Desktop.
4. Установите задержку рендеринга — например, 1 секунду, чтобы страница успела полностью подгрузить отзывы перед съемом данных.
5. Нажмите ОК, чтобы сохранить настройки.
Теперь Screaming Frog будет загружать страницу так же, как обычный браузер, исполняя весь JS-код и формируя полноценную версию DOM.
Запускаем парсинг
Так как нас интересует конкретный раздел с отзывами, удобно сразу перейти к нему через якорную ссылку. Например, указываем в адресе:
https://www.ozon.ru/product/12345/#comments
Чтобы добавить URL вручную: Upload → Enter Manually → вставляем ссылку → ОК
Далее программа загружает страницу, отрисовывает её и делает снимок содержимого (скриншот можно посмотреть во вкладке Rendered Page).
Проверяем результат
После завершения сканирования переходим во вкладку Custom → Extraction. Теперь в таблице появятся собранные тексты отзывов — каждый в отдельной ячейке. В нашем примере удалось извлечь 20 отзывов с одной карточки.
В нижней части интерфейса Screaming Frog можно открыть вкладку Rendered Page и визуально убедиться, что программа действительно «увидела» всю страницу так, как ее видит пользователь.
На что обратить внимание
- Скорость обработки. При включенном рендеринге JavaScript парсер работает значительно медленнее — особенно если обрабатывает десятки или сотни страниц.
- Ограничения сайтов. Некоторые ресурсы могут блокировать частые запросы. Чтобы избежать этого, можно увеличить задержку между запросами в настройках Configuration → Speed.
- Этика и законность. Сбор отзывов разрешён только в технических целях (например, анализа пользовательского опыта). Публиковать их на своём сайте без согласия правообладателя нельзя.
Пример 5. Как собрать скрытые телефоны с сайта ЦИАН
Теперь разберём более «нестандартную» задачу — парсинг телефонных номеров с сайта cian.ru, где контакты владельцев скрыты за кнопкой «Показать телефон». На первый взгляд кажется, что эти данные недоступны без клика, однако на самом деле номера можно извлечь и без нажатия — при внимательном анализе исходного кода страницы.
В карточке объявления контакт продавца скрыт: до нажатия на кнопку отображается только надпись «Показать телефон». После клика на кнопку номер становится видимым — например, +7 980…
Однако если обновить страницу и открыть её исходный код (Ctrl+U или через Просмотреть код страницы), можно заметить, что номер телефона всё равно присутствует в HTML — просто не отображается пользователю.
Чтобы убедиться, найдите знакомый фрагмент номера (например, 980) через поиск по странице (Ctrl+F).
Вы увидите, что телефон скрыт внутри ссылки с классом вроде:
a10a3f92e9--phone--3XYRR
Это и есть нужный нам элемент. Все телефоны в объявлениях ЦИАН размечаются аналогичным образом — с уникальным классом, где неизменная часть --phone--.
Формируем XPath-запрос
Чтобы извлечь телефоны, используем выражение:
//*[@class="a10a3f92e9--phone--3XYRR"]
Если структура сайта со временем немного изменится, запрос можно сделать более универсальным:
//*[contains(@class, "--phone--")]/text()
Такой вариант будет искать все элементы, содержащие в названии класса подстроку --phone--.
Настраиваем Screaming Frog
- Перейдите в меню Configuration → Custom → Extraction.
- Вставьте XPath-запрос.
- Назовите колонку, например Телефон.
- В параметрах извлечения выберите Extract Text — чтобы парсер сохранил только номер без HTML-разметки.
- Нажмите ОК.
Теперь подготовьте список URL — например, несколько ссылок на конкретные объявления ЦИАН.
В Screaming Frog откройте Mode → List → Upload → Paste, вставьте адреса страниц и нажмите Start.
После завершения сканирования откройте вкладку Custom → Extraction. Вы увидите таблицу, где в одной колонке — адрес объявления, а в другой — номер телефона.
Таким образом, получается удобная связка:
URL объявления → номер телефона продавца
Расширение сбора: другие данные
На этом этапе можно дополнительно извлечь и другие параметры — например, этаж, общую площадь или цену. Алгоритм тот же:
- На странице объявления кликните правой кнопкой по нужному элементу (например, этажу).
- Выберите Inspect Element.
- Скопируйте класс или id, в котором хранится значение.
- Составьте соответствующий XPath-запрос.
- Добавьте его в Configuration → Custom → Extraction.
После повторного запуска парсер соберёт сразу несколько наборов данных — например:
- URL;
- номер телефона;
- этаж;
- общая площадь;
- цена.
Хотя технически эти данные открыты в исходном коде, использовать телефоны для коммерческих рассылок или контактов без согласия владельцев запрещено. Такие сборы допустимы только для анализа рынка недвижимости (например, статистики предложений или динамики цен).
Пример 6. Как спарсить структуру сайта на примере DNS-Shop
Иногда нужно быстро восстановить карту разделов большого интернет-магазина: понять иерархию категорий и подкатегорий, чтобы перенести её к себе или проанализировать навигацию конкурента. У dns-shop.ru это удобно делать по «хлебным крошкам» — там уже зашита готовая логика структуры.
Откройте любую категорию/товар, кликните по элементу навигации правой кнопкой → Inspect.
В разметке видно, что названия уровней крошек выводятся в span с микроразметкой — атрибут itemprop="name".
XPath для извлечения названий разделов
Базового выражения достаточно, чтобы получить текст всех уровней крошек на странице:
//span[@itemprop="name"]/text()
Чтобы избежать «шума», если на странице встречаются другие элементы с таким же itemprop, можно уточнить селектор, привязавшись к схеме крошек (например, к контейнеру с itemscope/itemtype BreadcrumbList):
//*[@itemscope and @itemtype="https://schema.org/BreadcrumbList"]//span[@itemprop="name"]/text«»
Откройте Configuration → Custom → Extraction, добавьте XPath и задайте имя колонки, например Крошки (названия). Тип извлечения — Text. Нажмите OK.
Включите Mode → List, Upload → Paste, вставьте URL тестовой страницы и запустите.
После выполнения откройте Custom → Extraction — вы увидите последовательность названий уровней крошек (Главная → Категория → Подкатегория → …).
Дальше загрузите список адресов (категории/товары) и запустите сбор по всему сайту — так вы восстановите полную структуру.
Лайфхак: сразу собирать и URL уровней
Если помимо названий нужны и ссылки каждого уровня, добавьте второй XPath на атрибут href у itemprop="item":
//*[@itemscope and @itemtype="https://schema.org/BreadcrumbList"]//*[@itemprop="item"]/@href
В результате получите две параллельные колонки — названия и URL уровней — что упростит сбор древовидной структуры в Excel (через Power Query или текст-to-columns).
Возможности и ограничения парсинга с использованием XPath
Что можно собирать с сайтов
XPath позволяет извлекать практически любые элементы со страниц, если они доступны в HTML-коде. Возможности парсинга практически безграничны — все зависит от структуры сайта и уровня защиты.
1. Любая открытая информация. С помощью XPath можно извлечь данные почти с любого ресурса. Исключение составляют сайты, где стоит защита от парсеров (например, проекты Яндекса или Авито). Но подавляющее большинство сайтов технически доступны для сбора данных.
2. Товары и коммерческие данные:
- цены и наличие;
- характеристики и описания;
- ссылки на фото и даже 3D-модели.
3. Контент и структура:
- тексты описаний, обзоры и отзывы;
- названия разделов, хлебные крошки, навигация;
- метатеги, заголовки, атрибуты микроразметки.
4. Контактная и вспомогательная информация. Телефоны, адреса, ссылки на соцсети, ID товаров и пользователей — всё, что отображается на странице, можно выгрузить в таблицу и проанализировать.
Иными словами, любой элемент HTML можно превратить в строку Excel-файла, если вы знаете его селектор или XPath-путь.
Ограничения при парсинге и способы обхода
Даже самый мощный парсер может столкнуться с техническими барьерами. Вот что стоит учитывать.
1. Блокировка по user-agent
Когда парсер обращается к сайту, он сообщает о себе через user-agent. Некоторые сайты блокируют обращения от подозрительных клиентов (например, тех, что явно идентифицируются как «ScreamingFrog»).
Решение: В Screaming Frog откройте Configuration → User-Agent и выберите, например, Googlebot или YandexBot.
Сайт будет воспринимать ваш запрос как обращение поискового робота, и доступ откроется.
2. Запрет в файле robots.txt
Если в robots.txt прописан запрет на обход определённых разделов для выбранного бота (например, Googlebot), вы не сможете собрать оттуда данные.
Решение: Перейдите в Configuration → Robots.txt → Settings и включите опцию Ignore robots.txt — тогда ограничения будут проигнорированы.
3. Блокировка по IP
При слишком частом обращении к сайту ваш IP-адрес могут временно или навсегда заблокировать.
Решения:
- снизьте интенсивность запросов через Configuration → Speed, уменьшите количество одновременных соединений и задайте паузу между запросами;
- используйте прокси, чтобы периодически менять IP-адрес.
4. Капча и антибот-анализаторы
Некоторые сайты используют анализаторы активности — они проверяют, есть ли движение курсора, выполняется ли JavaScript и т. п. Если поведение не похоже на человеческое, система может показать капчу.
Технически это можно обойти с помощью headless-браузеров и прокси-ротации, но это требует отдельных инструментов, времени и бюджета.
Итог
Парсинг на основе XPath — это мощный инструмент аналитики и конкурентного мониторинга. С его помощью можно:
- автоматизировать сбор информации о товарах, ценах, отзывах и контенте;
- анализировать SEO-структуру сайтов;
- наполнять собственные каталоги и базы данных.
И хотя часть ресурсов ограничивает доступ к данным, в большинстве случаев нужную информацию всё же можно собрать — достаточно знать структуру сайта, грамотно настроить XPath-запросы и оптимизировать скорость обхода.
Реклама. ООО «Клик.ру», ИНН:7743771327, ERID: 2VtzqwWS3ma