fix(en/hahomoe): Fix episode list in some entries (#2507)
This commit is contained in:
parent
e2df506b94
commit
ac39c57c50
@ -7,7 +7,7 @@ ext {
|
|||||||
extName = 'haho.moe'
|
extName = 'haho.moe'
|
||||||
pkgNameSuffix = 'en.hahomoe'
|
pkgNameSuffix = 'en.hahomoe'
|
||||||
extClass = '.HahoMoe'
|
extClass = '.HahoMoe'
|
||||||
extVersionCode = 9
|
extVersionCode = 10
|
||||||
libVersion = '13'
|
libVersion = '13'
|
||||||
containsNsfw = true
|
containsNsfw = true
|
||||||
}
|
}
|
||||||
|
@ -99,7 +99,7 @@ class HahoMoe : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
setUrlWithoutDomain(document.location())
|
setUrlWithoutDomain(document.location())
|
||||||
thumbnail_url = document.selectFirst("img.cover-image.img-thumbnail")?.absUrl("src")
|
thumbnail_url = document.selectFirst("img.cover-image.img-thumbnail")?.absUrl("src")
|
||||||
title = document.selectFirst("li.breadcrumb-item.active")!!.text()
|
title = document.selectFirst("li.breadcrumb-item.active")!!.text()
|
||||||
genre = document.select("li.genre span.value").joinToString { it.text() }
|
genre = document.select("li.genre span.value, div.genre-tree ul > li > a").joinToString { it.text() }
|
||||||
description = document.selectFirst("div.card-body")?.text()
|
description = document.selectFirst("div.card-body")?.text()
|
||||||
author = document.select("li.production span.value").joinToString { it.text() }
|
author = document.select("li.production span.value").joinToString { it.text() }
|
||||||
artist = document.selectFirst("li.group span.value")?.text()
|
artist = document.selectFirst("li.group span.value")?.text()
|
||||||
@ -115,7 +115,7 @@ class HahoMoe : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ============================== Episodes ==============================
|
// ============================== Episodes ==============================
|
||||||
override fun episodeListSelector() = "ul.episode-loop li a"
|
override fun episodeListSelector() = "ul.episode-loop > li > a"
|
||||||
|
|
||||||
private fun episodeNextPageSelector() = popularAnimeNextPageSelector()
|
private fun episodeNextPageSelector() = popularAnimeNextPageSelector()
|
||||||
|
|
||||||
@ -132,15 +132,21 @@ class HahoMoe : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
.map(::episodeFromElement)
|
.map(::episodeFromElement)
|
||||||
.also(::addAll)
|
.also(::addAll)
|
||||||
} while (doc.selectFirst(episodeNextPageSelector()) != null)
|
} while (doc.selectFirst(episodeNextPageSelector()) != null)
|
||||||
|
|
||||||
|
sortByDescending { it.episode_number }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun episodeFromElement(element: Element) = SEpisode.create().apply {
|
override fun episodeFromElement(element: Element) = SEpisode.create().apply {
|
||||||
setUrlWithoutDomain(element.attr("href"))
|
setUrlWithoutDomain(element.attr("href"))
|
||||||
|
|
||||||
val episodeNumberString = element.selectFirst("div.episode-number")!!.text()
|
val episodeNumberString = element.selectFirst("div.episode-number, div.episode-slug")?.text() ?: "Episode"
|
||||||
episode_number = episodeNumberString.removePrefix("Episode ").toFloatOrNull() ?: 1F
|
episode_number = episodeNumberString.removePrefix("Episode ").toFloatOrNull() ?: 1F
|
||||||
name = "$episodeNumberString: " + element.selectFirst("div.episode-label")?.text().orEmpty()
|
val title = element.selectFirst("div.episode-label, div.episode-title")?.text()
|
||||||
|
?.takeUnless { it.equals("No Title", true) }
|
||||||
|
?.let { ": $it" }
|
||||||
|
.orEmpty()
|
||||||
|
name = episodeNumberString + title
|
||||||
date_upload = element.selectFirst("div.date")?.text().orEmpty().toDate()
|
date_upload = element.selectFirst("div.date")?.text().orEmpty().toDate()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user