Kotlin:
Verkkosivun lataaminen
How to:
Kotlinissa verkkosivun voi ladata käyttäen URL
-luokkaa ja readText
-metodia. Tässä helppo esimerkki:
import java.net.URL
fun downloadWebPage(pageUrl: String): String {
return URL(pageUrl).readText(Charsets.UTF_8)
}
fun main() {
val webContent = downloadWebPage("http://example.com")
println(webContent)
}
Jos kokeilet koodia ja sivusto on kunnossa, saat tulosteena sivun HTML-sisältöä.
Deep Dive
Verkkosivun lataaminen on vanha käytäntö, joka alkoi, kun web ensi kerran keksittiin. Alkujaan tehdyt käsityönä, mutta nykyisin prosessit ovat automatisoituja ja integroituja.
Vaihtoehtoina yksinkertaiselle URL
-luokan käytölle on erilaisia kirjastoja, kuten OkHttp ja kjsoup. OkHttp tarjoaa täyden HTTP-clientin, kun taas jsoup soveltuu HTML:n jäsentämiseen ja käsittelyyn.
readText
toimii hyvin pienille sivuille, mutta suuriin datajoukkoihin tai monimutkaisiin pyyntöihin kannattaa käyttää välineitä, jotka käsittelevät virheet ja striimauksen paremmin.
See Also
- OkHttp: https://square.github.io/okhttp/
- jsoup: https://jsoup.org/
- Kotlin Networking Tutorial: https://kotlinlang.org/docs/networking.html