UHDMovies: Fix search empty entry and list collection movies as episodes (#1187)
This commit is contained in:
@ -6,7 +6,7 @@ ext {
|
|||||||
extName = 'UHD Movies (Experimental)'
|
extName = 'UHD Movies (Experimental)'
|
||||||
pkgNameSuffix = 'en.uhdmovies'
|
pkgNameSuffix = 'en.uhdmovies'
|
||||||
extClass = '.UHDMovies'
|
extClass = '.UHDMovies'
|
||||||
extVersionCode = 1
|
extVersionCode = 2
|
||||||
libVersion = '13'
|
libVersion = '13'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ class UHDMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
|
|
||||||
override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/page/$page/")
|
override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/page/$page/")
|
||||||
|
|
||||||
override fun popularAnimeSelector(): String = "div#content div.gridlove-posts > div"
|
override fun popularAnimeSelector(): String = "div#content div.gridlove-posts > div.layout-masonry"
|
||||||
|
|
||||||
override fun popularAnimeNextPageSelector(): String =
|
override fun popularAnimeNextPageSelector(): String =
|
||||||
"div#content > nav.gridlove-pagination > a.next"
|
"div#content > nav.gridlove-pagination > a.next"
|
||||||
@ -97,7 +97,11 @@ class UHDMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
// =========================== Anime Details ============================
|
// =========================== Anime Details ============================
|
||||||
|
|
||||||
override fun animeDetailsParse(document: Document): SAnime {
|
override fun animeDetailsParse(document: Document): SAnime {
|
||||||
return SAnime.create()
|
return SAnime.create().apply {
|
||||||
|
title = document.selectFirst("h2").text()
|
||||||
|
.replace("Download", "", true).trim()
|
||||||
|
status = SAnime.COMPLETED
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ============================== Episodes ==============================
|
// ============================== Episodes ==============================
|
||||||
@ -157,6 +161,7 @@ class UHDMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
var collectionIdx = 0F
|
||||||
episodeElements.filter {
|
episodeElements.filter {
|
||||||
!it.text().contains("Zip", true) &&
|
!it.text().contains("Zip", true) &&
|
||||||
!it.text().contains("Pack", true)
|
!it.text().contains("Pack", true)
|
||||||
@ -165,19 +170,23 @@ class UHDMovies : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
val qualityMatch = qualityRegex.find(prevP.text())
|
val qualityMatch = qualityRegex.find(prevP.text())
|
||||||
val quality = qualityMatch?.value ?: "HD"
|
val quality = qualityMatch?.value ?: "HD"
|
||||||
|
|
||||||
|
val collectionName = row.previousElementSiblings().prev("h2").first().text()
|
||||||
|
.replace("Download", "", true).trim()
|
||||||
|
|
||||||
row.select("a").map { linkElement ->
|
row.select("a").map { linkElement ->
|
||||||
Pair(linkElement.attr("href")!!.substringAfter("?id="), quality)
|
Triple(linkElement.attr("href")!!.substringAfter("?id="), quality, collectionName)
|
||||||
}
|
}
|
||||||
}.flatten().let { link ->
|
}.flatten().groupBy { it.third }.map { group ->
|
||||||
|
collectionIdx++
|
||||||
episodeList.add(
|
episodeList.add(
|
||||||
SEpisode.create().apply {
|
SEpisode.create().apply {
|
||||||
url = EpLinks(
|
url = EpLinks(
|
||||||
urls = link.map {
|
urls = group.value.map {
|
||||||
EpUrl(url = it.first, quality = it.second)
|
EpUrl(url = it.first, quality = it.second)
|
||||||
}
|
}
|
||||||
).toJson()
|
).toJson()
|
||||||
name = "Movie"
|
name = group.key
|
||||||
episode_number = 0F
|
episode_number = collectionIdx
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user