Kotlin:
Разбор HTML

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

Kotlin упрощает разбор HTML с помощью библиотек, таких как Jsoup. Вот как это делается:

import org.jsoup.Jsoup

fun main() {
    val html = "<html><head><title>Пример страницы</title></head><body><p>Это тест.</p></body></html>"
    val doc = Jsoup.parse(html)

    val title = doc.title()
    println("Заголовок: $title")  // Вывод: Заголовок: Пример страницы

    val pText = doc.select("p").first()?.text()
    println("Параграф: $pText")  // Вывод: Параграф: Это тест.
}

Мы извлекаем заголовок и текст параграфа, лишь затрагивая верхушку айсберга того, что может Jsoup. Но это хорошее начало.

Погружение:

До Kotlin, Java был предпочтительным языком для этого, зачастую неуклюже. Jsoup изменил ситуацию, предлагая подход, похожий на jQuery. Однако разбор HTML не ограничивается только Jsoup; существуют и другие библиотеки, такие как HtmlUnit, или даже регулярные выражения (хотя это не рекомендуется). С Jsoup вы можете быть уверены, что ваш разбор учитывает структуру документа. Он использует модель DOM, что позволяет выбирать и манипулировать элементами. К тому же он устойчив - может разбирать даже самый запутанный HTML.

См. также:

Подробнее о Jsoup:

Для более широких дискуссий и уроков о веб-скрапинге и анализе: