Kotlin:
HTML:n jäsentäminen

How to:

Kotlin-kehittäjät käyttävät usein jsoup-kirjastoa HTML-dokumenttien jäsentämiseen. Alla on yksinkertainen esimerkki:

import org.jsoup.Jsoup

fun main() {
    val html = "<html><head><title>Otsikko</title></head><body><p>Hei maailma!</p></body></html>"
    val doc = Jsoup.parse(html)
    
    val title = doc.title()
    val bodyText = doc.body().text()

    println("Otsikko: $title")
    println("Leipäteksti: $bodyText")
}

Tuloste:

Otsikko: Otsikko
Leipäteksti: Hei maailma!

Deep Dive

HTML-jäsentämisen tarpeellisuus nousi 1990-luvulla, kun internet alkoi yleistyä. Historiallisesti jäsentäminen on ollut hankalaa kielen löyhän syntaksin vuoksi. Nykyään kirjastoja kuten jsoup on kehitetty helpottamaan prosessia ja parantamaan luotettavuutta.

Vaihtoehtoja jsoupille ovat esimerkiksi HtmlCleaner ja Jericho HTML Parser. Nämä kirjastot eroavat toisistaan niin suorituskyvyn, joustavuuden kuin API:nkin osalta.

Jäsennettäessä HTML:ää on tärkeää muistaa dokumentin rakennetta koskevat oletukset. Esimerkiksi jsoup käsittelee HTML-dokumentit käyttäen DOM-mallia (Document Object Model), joka muuntaa dokkarin puurakenteeksi (node tree).

See Also