fix(pt/animeplayer): Fixed video list for pt/AnimePlayer
This commit is contained in:
parent
cdbfbdca30
commit
7eab6dae20
2 changed files with 27 additions and 23 deletions
|
@ -3,7 +3,7 @@ ext {
|
||||||
extClass = '.AnimePlayer'
|
extClass = '.AnimePlayer'
|
||||||
themePkg = 'dooplay'
|
themePkg = 'dooplay'
|
||||||
baseUrl = 'https://animeplayer.com.br'
|
baseUrl = 'https://animeplayer.com.br'
|
||||||
overrideVersionCode = 3
|
overrideVersionCode = 4
|
||||||
isNsfw = true
|
isNsfw = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,29 +47,14 @@ class AnimePlayer : DooPlay(
|
||||||
}
|
}
|
||||||
|
|
||||||
// ============================== Episodes ==============================
|
// ============================== Episodes ==============================
|
||||||
override fun episodeListParse(response: Response): List<SEpisode> {
|
override fun episodeListParse(response: Response) = super.episodeListParse(response).reversed()
|
||||||
val doc = getRealAnimeDoc(response.asJsoup())
|
|
||||||
val seasonList = doc.select(seasonListSelector)
|
|
||||||
return if (seasonList.size < 1) {
|
|
||||||
SEpisode.create().apply {
|
|
||||||
setUrlWithoutDomain(doc.location())
|
|
||||||
episode_number = 1F
|
|
||||||
name = episodeMovieText
|
|
||||||
}.let(::listOf)
|
|
||||||
} else {
|
|
||||||
seasonList.flatMap(::getSeasonEpisodes)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun getSeasonEpisodes(season: Element): List<SEpisode> {
|
override fun getSeasonEpisodes(season: Element): List<SEpisode> {
|
||||||
val seasonName = season.selectFirst("span.title")!!.text()
|
val seasonName = season.selectFirst("span.title")!!.text()
|
||||||
return season.select(episodeListSelector()).mapNotNull { element ->
|
return season.select(episodeListSelector()).mapNotNull { element ->
|
||||||
try {
|
runCatching {
|
||||||
episodeFromElement(element, seasonName)
|
episodeFromElement(element, seasonName)
|
||||||
} catch (e: Throwable) {
|
}.onFailure { it.printStackTrace() }.getOrNull()
|
||||||
e.printStackTrace()
|
|
||||||
null
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,17 +76,36 @@ class AnimePlayer : DooPlay(
|
||||||
override val prefQualityValues = arrayOf("360p", "720p")
|
override val prefQualityValues = arrayOf("360p", "720p")
|
||||||
override val prefQualityEntries = prefQualityValues
|
override val prefQualityEntries = prefQualityValues
|
||||||
|
|
||||||
private val bloggerExtractor by lazy { BloggerExtractor(client) }
|
|
||||||
|
|
||||||
override fun videoListParse(response: Response): List<Video> {
|
override fun videoListParse(response: Response): List<Video> {
|
||||||
val playerUrl = response.asJsoup()
|
val document = response.asJsoup()
|
||||||
|
val playerUrl = document
|
||||||
.selectFirst("div.playex iframe")
|
.selectFirst("div.playex iframe")
|
||||||
?.absUrl("src")
|
?.absUrl("src")
|
||||||
?.toHttpUrlOrNull()
|
?.toHttpUrlOrNull()
|
||||||
?: return emptyList()
|
?: return emptyList()
|
||||||
|
|
||||||
|
val quality = document
|
||||||
|
.selectFirst("span.qualityx")
|
||||||
|
?.text()
|
||||||
|
?.substringAfterLast(" ")
|
||||||
|
?: "Default"
|
||||||
|
|
||||||
val url = playerUrl.queryParameter("link") ?: playerUrl.toString()
|
val url = playerUrl.queryParameter("link") ?: playerUrl.toString()
|
||||||
return bloggerExtractor.videosFromUrl(url, headers)
|
return getVideosFromURL(url, quality)
|
||||||
|
}
|
||||||
|
|
||||||
|
private val bloggerExtractor by lazy { BloggerExtractor(client) }
|
||||||
|
private fun getVideosFromURL(url: String, quality: String): List<Video> {
|
||||||
|
return when {
|
||||||
|
"cdn.animeson.com.br" in url -> {
|
||||||
|
listOf(
|
||||||
|
Video(url, quality, url, headers),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
"blogger.com" in url -> bloggerExtractor.videosFromUrl(url, headers)
|
||||||
|
else -> emptyList()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ============================== Filters ===============================
|
// ============================== Filters ===============================
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue