Ruby:
HTML:n jäsennys

Kuinka:

Jäsentääksesi HTML:ää Rubylla, asenna ‘Nokogiri’-gem komennolla gem install nokogiri. Nokogiri on kuin Sveitsin armeijan linkkuveitsi HTML:n ja XML:n käsittelyyn Rubyssa. Tässä nopea esimerkki:

require 'nokogiri'
require 'open-uri'

# Lataa HTML-sisältö verkkosivulta
html_content = URI.open('http://example.com').read

# Jäsennä HTML
doc = Nokogiri::HTML(html_content)

# Poimi otsikko
title = doc.xpath('//title').text
puts "Sivun otsikko on: #{title}"

Tämä tuottaa jotain tällaista: Sivun otsikko on: Esimerkkidomain.

Syväsukellus

Ruby-maailmassa alkuaikoina HTML:n jäsentämisen vaihtoehdot olivat rajalliset. REXML oli sisäänrakennettu mutta hidas. Sitten tuli Hpricot, mutta se hiipui pois. Nokogiri debytoi vuonna 2008, yhdistäen Hpricotin helppokäyttöisyyden libxml:n nopeuden ja tehon, todistetusti tehokkaan XML-työkalupakin.

Jäsentämismaailmassa on aina vaihtoehtoja. Jotkut vannovat sisäänrakennetun ‘rexml’-kirjaston tai ‘oga’, toisen Rubyyn tarkoitetun XML/HTML-jäsentäjän nimeen. Mutta Nokogiri pysyy suosikkina sen kestävyyden ja nopeuden vuoksi, puhumattakaan sen laajasta ominaisuusvalikoimasta.

Kulissien takana Nokogiri muuntaa HTML:n Document Object Model (DOM) -puurakenteeksi. Tämä tekee elementtien navigoinnista ja muokkaamisesta helppoa. XPath- ja CSS-valitsimien avulla voit tarkasti löytää tarvitsemasi tiedon.

Katso myös