Keyoapp: filter hidden images (#2980)
* Keyoapp: filter hidden images * unused imports
This commit is contained in:
parent
dc225dba18
commit
5a229cd8cf
|
@ -2,4 +2,4 @@ plugins {
|
||||||
id("lib-multisrc")
|
id("lib-multisrc")
|
||||||
}
|
}
|
||||||
|
|
||||||
baseVersionCode = 2
|
baseVersionCode = 3
|
||||||
|
|
|
@ -223,9 +223,8 @@ abstract class Keyoapp(
|
||||||
// Image list
|
// Image list
|
||||||
|
|
||||||
override fun pageListParse(document: Document): List<Page> {
|
override fun pageListParse(document: Document): List<Page> {
|
||||||
return document.select("#pages > img").map {
|
return document.select("#pages > img:not(.hidden)").mapIndexed { index, img ->
|
||||||
val index = it.attr("count").toInt()
|
Page(index, document.location(), img.imgAttr())
|
||||||
Page(index, document.location(), it.imgAttr("150"))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -234,31 +233,23 @@ abstract class Keyoapp(
|
||||||
// Utilities
|
// Utilities
|
||||||
|
|
||||||
// From mangathemesia
|
// From mangathemesia
|
||||||
protected fun Element.imgAttr(width: String): String {
|
private fun Element.imgAttr(): String {
|
||||||
val url = when {
|
val url = when {
|
||||||
hasAttr("data-lazy-src") -> attr("abs:data-lazy-src")
|
hasAttr("data-lazy-src") -> attr("abs:data-lazy-src")
|
||||||
hasAttr("data-src") -> attr("abs:data-src")
|
hasAttr("data-src") -> attr("abs:data-src")
|
||||||
else -> attr("abs:src")
|
else -> attr("abs:src")
|
||||||
}
|
}
|
||||||
return url.toHttpUrl()
|
return url
|
||||||
.newBuilder()
|
|
||||||
.addQueryParameter("w", width)
|
|
||||||
.build()
|
|
||||||
.toString()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun Element.getImageUrl(selector: String): String? {
|
private fun Element.getImageUrl(selector: String): String? {
|
||||||
return this.selectFirst(selector)?.let {
|
return this.selectFirst(selector)?.let { element ->
|
||||||
it.attr("style")
|
element.attr("style")
|
||||||
.substringAfter(":url(", "")
|
.substringAfter(":url(", "")
|
||||||
.substringBefore(")", "")
|
.substringBefore(")", "")
|
||||||
.takeIf { it.isNotEmpty() }
|
.takeIf { it.isNotEmpty() }
|
||||||
?.toHttpUrlOrNull()?.let {
|
?.toHttpUrlOrNull()?.newBuilder()?.setQueryParameter("w", "480")?.build()
|
||||||
it.newBuilder()
|
?.toString()
|
||||||
.setQueryParameter("w", "480")
|
|
||||||
.build()
|
|
||||||
.toString()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,14 +1,5 @@
|
||||||
package eu.kanade.tachiyomi.extension.en.kewnscans
|
package eu.kanade.tachiyomi.extension.en.kewnscans
|
||||||
|
|
||||||
import eu.kanade.tachiyomi.multisrc.keyoapp.Keyoapp
|
import eu.kanade.tachiyomi.multisrc.keyoapp.Keyoapp
|
||||||
import eu.kanade.tachiyomi.source.model.Page
|
|
||||||
import org.jsoup.nodes.Document
|
|
||||||
|
|
||||||
class KewnScans : Keyoapp("Kewn Scans", "https://kewnscans.org", "en") {
|
class KewnScans : Keyoapp("Kewn Scans", "https://kewnscans.org", "en")
|
||||||
override fun pageListParse(document: Document): List<Page> {
|
|
||||||
return document.select("#pages > img:not(.hidden)").map {
|
|
||||||
val index = it.attr("count").toInt()
|
|
||||||
Page(index, document.location(), it.imgAttr("150"))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue