Update AnimeOwl.kt

This commit is contained in:
Arkai1 2025-03-05 10:58:58 +05:30 committed by GitHub
parent 6dc8f5eb83
commit 1f507b3c73
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -128,28 +128,35 @@ class AnimeOwl : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
override fun episodeListParse(response: Response): List<SEpisode> { override fun episodeListParse(response: Response): List<SEpisode> {
val document = response.asJsoup() val document = response.asJsoup()
val sub = document.select("#anime-cover-sub-content .episode-node").mapIndexed { idx, it -> val sub = document.select("#anime-cover-sub-content .episode-node").mapIndexed { idx, it ->
EpisodeResponse.Episode( val episodeText = it.text().trim()
id = it.text().toDouble(), val episodeNumber = episodeText.toDoubleOrNull() ?: (idx + 1).toDouble()
episodeIndex = idx.toString(),
name = it.text(), EpisodeResponse.Episode(
lang = "Sub", id = episodeNumber,
href = it.attr("abs:href"), episodeIndex = idx.toString(),
) name = episodeText,
} lang = "Sub",
href = it.attr("abs:href"),
)
}
val dub = document.select("#anime-cover-dub-content .episode-node").mapIndexed { idx, it -> val dub = document.select("#anime-cover-dub-content .episode-node").mapIndexed { idx, it ->
EpisodeResponse.Episode( val episodeText = it.text().trim()
id = it.text().toDouble(), val episodeNumber = episodeText.toDoubleOrNull() ?: (idx + 1).toDouble()
episodeIndex = idx.toString(),
name = it.text(), EpisodeResponse.Episode(
lang = "Dub", id = episodeNumber,
href = it.attr("abs:href"), episodeIndex = idx.toString(),
) name = episodeText,
} lang = "Dub",
href = it.attr("abs:href"),
)
}
return listOf(sub, dub).flatten().groupBy { it.name }.map { (epNum, epList) -> return listOf(sub, dub).flatten().groupBy { it.name }.map { (epNum, epList) ->
SEpisode.create().apply { SEpisode.create().apply {
url = LinkData(epList.map { ep -> Link(ep.href!!, ep.lang!!) }).toJsonString() url = LinkData(epList.map { ep -> Link(ep.href!!, ep.lang!!) }).toJsonString()
episode_number = epNum.toFloatOrNull() ?: 0F episode_number = epNum.filter { it.isDigit() || it == '.' }.toFloatOrNull() ?: 0F
name = "Episode $epNum" name = "Episode $epNum"
} }
}.sortedByDescending { it.episode_number } }.sortedByDescending { it.episode_number }