feat(es/mundodonghua): Implement latest anime page (#2298)
This commit is contained in:
@ -5,7 +5,7 @@ ext {
|
|||||||
extName = 'MundoDonghua'
|
extName = 'MundoDonghua'
|
||||||
pkgNameSuffix = 'es.mundodonghua'
|
pkgNameSuffix = 'es.mundodonghua'
|
||||||
extClass = '.MundoDonghua'
|
extClass = '.MundoDonghua'
|
||||||
extVersionCode = 11
|
extVersionCode = 12
|
||||||
libVersion = '13'
|
libVersion = '13'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package eu.kanade.tachiyomi.animeextension.es.mundodonghua
|
package eu.kanade.tachiyomi.animeextension.es.mundodonghua
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import android.content.SharedPreferences
|
|
||||||
import androidx.preference.ListPreference
|
import androidx.preference.ListPreference
|
||||||
import androidx.preference.PreferenceScreen
|
import androidx.preference.PreferenceScreen
|
||||||
import eu.kanade.tachiyomi.animeextension.es.mundodonghua.extractors.JsUnpacker
|
import eu.kanade.tachiyomi.animeextension.es.mundodonghua.extractors.JsUnpacker
|
||||||
@ -19,7 +18,6 @@ import eu.kanade.tachiyomi.lib.voeextractor.VoeExtractor
|
|||||||
import eu.kanade.tachiyomi.network.GET
|
import eu.kanade.tachiyomi.network.GET
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||||
import okhttp3.OkHttpClient
|
|
||||||
import okhttp3.Request
|
import okhttp3.Request
|
||||||
import okhttp3.Response
|
import okhttp3.Response
|
||||||
import org.jsoup.nodes.Document
|
import org.jsoup.nodes.Document
|
||||||
@ -34,27 +32,36 @@ class MundoDonghua : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
|
|
||||||
override val lang = "es"
|
override val lang = "es"
|
||||||
|
|
||||||
override val supportsLatest = false
|
override val supportsLatest = true
|
||||||
|
|
||||||
override val client: OkHttpClient = network.cloudflareClient
|
override val client = network.cloudflareClient
|
||||||
|
|
||||||
private val preferences: SharedPreferences by lazy {
|
private val preferences by lazy {
|
||||||
Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun popularAnimeSelector(): String = "div.container.new-donghua-grid.sm-row div.col-md-9 div.sm-row.bg-white.pt-20.pr-20.pb-15.pl-20.br-8.of-a div.row div.item"
|
override fun popularAnimeSelector() = "div > div.row > div.item > a"
|
||||||
|
|
||||||
override fun popularAnimeRequest(page: Int): Request = GET("$baseUrl/lista-donghuas/$page")
|
override fun popularAnimeRequest(page: Int) = GET("$baseUrl/lista-donghuas/$page")
|
||||||
|
|
||||||
override fun popularAnimeFromElement(element: Element): SAnime {
|
override fun popularAnimeFromElement(element: Element) = SAnime.create().apply {
|
||||||
val anime = SAnime.create()
|
setUrlWithoutDomain(element.attr("href"))
|
||||||
anime.setUrlWithoutDomain(element.select("a.angled-img").attr("href"))
|
title = element.selectFirst("h5")!!.text().removeSurrounding("\"")
|
||||||
anime.title = element.select("a.angled-img div.bottom-info.white h5").text().removeSurrounding("\"")
|
thumbnail_url = element.selectFirst("img")?.attr("abs:src")
|
||||||
anime.thumbnail_url = element.select("a.angled-img div.img img").attr("abs:src")
|
|
||||||
return anime
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun popularAnimeNextPageSelector(): String = "ul.pagination li:last-child a"
|
override fun popularAnimeNextPageSelector() = "ul.pagination li:last-child a"
|
||||||
|
|
||||||
|
override fun latestUpdatesNextPageSelector() = popularAnimeNextPageSelector()
|
||||||
|
|
||||||
|
override fun latestUpdatesFromElement(element: Element) =
|
||||||
|
popularAnimeFromElement(element).apply {
|
||||||
|
url = url.replace("/ver/", "/donghua/").substringBeforeLast("/")
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/lista-episodios/$page")
|
||||||
|
|
||||||
|
override fun latestUpdatesSelector() = popularAnimeSelector()
|
||||||
|
|
||||||
override fun animeDetailsParse(document: Document): SAnime {
|
override fun animeDetailsParse(document: Document): SAnime {
|
||||||
val anime = SAnime.create()
|
val anime = SAnime.create()
|
||||||
@ -270,14 +277,6 @@ class MundoDonghua : ConfigurableAnimeSource, ParsedAnimeHttpSource() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun latestUpdatesNextPageSelector() = popularAnimeNextPageSelector()
|
|
||||||
|
|
||||||
override fun latestUpdatesFromElement(element: Element) = popularAnimeFromElement(element)
|
|
||||||
|
|
||||||
override fun latestUpdatesRequest(page: Int) = popularAnimeRequest(page)
|
|
||||||
|
|
||||||
override fun latestUpdatesSelector() = popularAnimeSelector()
|
|
||||||
|
|
||||||
override fun setupPreferenceScreen(screen: PreferenceScreen) {
|
override fun setupPreferenceScreen(screen: PreferenceScreen) {
|
||||||
val qualities = arrayOf(
|
val qualities = arrayOf(
|
||||||
"VoeCDN",
|
"VoeCDN",
|
||||||
|
Reference in New Issue
Block a user