mihon/app/src/main/java/eu/kanade/tachiyomi/util/JsoupExtensions.kt

26 lines
801 B
Kotlin
Raw Normal View History

package eu.kanade.tachiyomi.util
2016-06-18 11:37:41 -04:00
import okhttp3.Response
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import org.jsoup.nodes.Element
fun Element.selectText(css: String, defaultValue: String? = null): String? {
return select(css).first()?.text() ?: defaultValue
}
fun Element.selectInt(css: String, defaultValue: Int = 0): Int {
return select(css).first()?.text()?.toInt() ?: defaultValue
}
2016-06-19 18:57:29 -04:00
fun Element.attrOrText(css: String): String {
return if (css != "text") attr(css) else text()
}
2016-06-18 11:37:41 -04:00
/**
* Returns a Jsoup document for this response.
* @param html the body of the response. Use only if the body was read before calling this method.
*/
fun Response.asJsoup(html: String? = null): Document {
return Jsoup.parse(html ?: body()!!.string(), request().url().toString())
2016-06-18 11:37:41 -04:00
}