Перейти к содержимому
PD
Browser Automation Studio

Парсинг страниц с XPath в BAS

Модуль «XPath» в Browser Automation Studio - быстро извлекать элементы и текст из HTML и XML, костяк большинства парсеров и скраперов на BAS.

Все статьи гида Browser Automation Studio · 48

Когда боту нужно вытащить данные из страницы, инструмент выбора в BAS - XPath. Это один из самых используемых модулей во всём продукте, потому что парсинг - сердце очень многих ботов, а XPath - самый быстрый способ его делать.

Что такое XPath

XPath - это язык запросов к HTML и XML страницам. Вы пишете выражение, указывающее на нужную часть документа, и XPath её возвращает. Он создан для парсинга: вместо рытья в сыром HTML вы адресуете элементы напрямую и вытаскиваете их содержимое.

Действия

  • XPath получить html - вернуть HTML найденного элемента.
  • XPath получить каждый html - вернуть HTML всех совпавших элементов, для перебора набора.
  • XPath получить текст - вернуть текстовое содержимое найденного элемента.
  • XPath получить каждый текст - вернуть текст всех совпадений, идеально для списка строк.
  • XPath получить атрибут - прочитать атрибут вроде href или src.
  • XPath проверить существование - проверить наличие совпадения, чтобы ветвиться при отсутствующем поле.

Конкретный пример

Сборка парсера объявлений - скрапера в стиле Avito - классический случай. Вы открываете объявления в браузере, затем для каждой карточки товара модулем XPath вытаскиваете характеристики, описание и фото. «XPath получить каждый текст» проходит по карточкам, «XPath получить атрибут» забирает URL картинок, а «XPath проверить существование» держит поток живым, когда у карточки нет поля.

XPath в инструментарии парсинга

XPath - для отрисованного HTML/XML, страницы такой, как её видит браузер. Он естественно сочетается с остальным инструментарием данных: находите и кликайте элементы селекторами, парсите ответы API через JSON, очищайте извлечённый текст операциями со строками. Но для большинства задач скрапинга именно в XPath происходит реальное извлечение - освойте его, и парсинг перестанет быть сложной частью.

Вопросы и ответы

Для чего нужен XPath в BAS?

XPath - это язык запросов к HTML и XML страницам. В BAS это один из самых используемых модулей для парсинга - быстро извлекать элементы и их текст со страницы, например заголовок, описание и фото карточки товара на доске объявлений.

Как собрать парсер в стиле Avito в BAS?

Откройте объявления в браузере, затем модулем «XPath» вытащите каждое поле карточки - заголовок, описание, цену, фото. «XPath получить текст» и «XPath получить html» возвращают данные; «XPath проверить существование» страхует от отсутствующих полей.

Ещё по теме

Видео по теме

Все видео на YouTube-канале

Сделаю под ключ

Не хотите собирать сами? Соберу бота на BAS под вашу задачу

Многопоточность, прокси, антидетект-профили и запуск по расписанию. Весь проект и доступы остаются у вас.

от 300 $ · 3-7 дней