Ruby:
Разбор HTML

Как это сделать:

Чтобы разобрать HTML в Ruby, установите гем ‘Nokogiri’ с помощью gem install nokogiri. Nokogiri похож на швейцарский армейский нож для работы с HTML и XML в Ruby. Вот быстрый пример:

require 'nokogiri'
require 'open-uri'

# Загрузка содержимого HTML с веб-сайта
html_content = URI.open('http://example.com').read

# Разбор HTML
doc = Nokogiri::HTML(html_content)

# Извлечение заголовка
title = doc.xpath('//title').text
puts "Заголовок страницы: #{title}"

Это выведет что-то вроде: Заголовок страницы: Example Domain.

Глубокое погружение

В ранние дни Ruby варианты для разбора HTML были ограничены. Встроенный REXML был медленным. Потом появился Hpricot, но он исчез. Nokogiri дебютировал в 2008 году, сочетая в себе простоту Hpricot с скоростью и мощью libxml, проверенного инструментария XML.

В мире разбора всегда есть альтернативы. Некоторые предпочитают встроенную библиотеку ‘rexml’ или ‘oga’, другой парсер XML/HTML для Ruby. Но Nokogiri остается фаворитом за его надежность и скорость, не говоря уже о широком ассортименте функций.

Под капотом Nokogiri преобразует HTML в модель объекта документа (DOM) — структуру дерева. Это упрощает навигацию и манипуляцию элементами. Используя XPath и CSS-селекторы, вы можете точно найти любую необходимую информацию.

Смотрите также