MangaCrab: Fix images not loading (#10844)
* fix images not loading * apply suggestion
This commit is contained in:
parent
eb6fe726df
commit
233df400f0
@ -3,7 +3,7 @@ ext {
|
|||||||
extClass = '.MangaCrab'
|
extClass = '.MangaCrab'
|
||||||
themePkg = 'madara'
|
themePkg = 'madara'
|
||||||
baseUrl = 'https://mangacrab.org'
|
baseUrl = 'https://mangacrab.org'
|
||||||
overrideVersionCode = 15
|
overrideVersionCode = 16
|
||||||
isNsfw = false
|
isNsfw = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -51,9 +51,26 @@ class MangaCrab :
|
|||||||
override val pageListParseSelector = "div.page-break:not([style*='display:none']) img:not([src])"
|
override val pageListParseSelector = "div.page-break:not([style*='display:none']) img:not([src])"
|
||||||
|
|
||||||
override fun imageFromElement(element: Element): String? {
|
override fun imageFromElement(element: Element): String? {
|
||||||
|
val url = element.attributes()
|
||||||
|
.firstNotNullOfOrNull { attr ->
|
||||||
|
element.absUrl(attr.key).toHttpUrlOrNull()
|
||||||
|
?.takeIf { it.encodedPath == "/validate.php" }
|
||||||
|
}
|
||||||
|
|
||||||
|
val fileUrl = url
|
||||||
|
?.queryParameter("file")
|
||||||
|
?.takeIf { it.isNotBlank() }
|
||||||
|
?.let { file ->
|
||||||
|
url.newBuilder()
|
||||||
|
.encodedPath("/$file")
|
||||||
|
.query(null)
|
||||||
|
.build()
|
||||||
|
}
|
||||||
|
|
||||||
val imageAbsUrl = element.attributes().firstOrNull { it.value.toHttpUrlOrNull() != null }?.value
|
val imageAbsUrl = element.attributes().firstOrNull { it.value.toHttpUrlOrNull() != null }?.value
|
||||||
|
|
||||||
return when {
|
return when {
|
||||||
|
fileUrl != null -> fileUrl.toString()
|
||||||
element.hasAttr("data-src") -> element.attr("abs:data-src")
|
element.hasAttr("data-src") -> element.attr("abs:data-src")
|
||||||
element.hasAttr("data-lazy-src") -> element.attr("abs:data-lazy-src")
|
element.hasAttr("data-lazy-src") -> element.attr("abs:data-lazy-src")
|
||||||
element.hasAttr("srcset") -> element.attr("abs:srcset").getSrcSetImage()
|
element.hasAttr("srcset") -> element.attr("abs:srcset").getSrcSetImage()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user