BabelWuxia: fix 403 due to domain change (#19258)

This commit is contained in:
AwkwardPeak7 2023-12-11 19:40:22 +05:00 committed by GitHub
parent 74cb5ba984
commit f950ccce3c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 24 additions and 43 deletions

View File

@ -1,56 +1,37 @@
package eu.kanade.tachiyomi.extension.en.babelwuxia package eu.kanade.tachiyomi.extension.en.babelwuxia
import eu.kanade.tachiyomi.multisrc.madara.Madara import eu.kanade.tachiyomi.multisrc.madara.Madara
import eu.kanade.tachiyomi.network.POST import eu.kanade.tachiyomi.source.model.MangasPage
import okhttp3.FormBody import okhttp3.Response
import okhttp3.Request
class BabelWuxia : Madara("Babel Wuxia", "https://read.babelwuxia.com", "en") { class BabelWuxia : Madara("Babel Wuxia", "https://babelwuxia.com", "en") {
// moved from MangaThemesia // moved from MangaThemesia
override val versionId = 2 override val versionId = 2
override val useNewChapterEndpoint = true override val useNewChapterEndpoint = true
override fun popularMangaNextPageSelector() = "body:not(:has(.no-posts))" override fun searchPage(page: Int): String {
return if (page > 1) {
private fun madaraLoadMoreRequest(page: Int, metaKey: String): Request { "page/$page/"
val formBody = FormBody.Builder().apply { } else {
add("action", "madara_load_more") ""
add("page", page.toString()) }
add("template", "madara-core/content/content-archive") }
add("vars[paged]", "1")
add("vars[orderby]", "meta_value_num") override fun popularMangaParse(response: Response) =
add("vars[template]", "archive") super.popularMangaParse(response).fixNextPage()
add("vars[sidebar]", "right")
add("vars[post_type]", "wp-manga") override fun latestUpdatesParse(response: Response) =
add("vars[post_status]", "publish") super.latestUpdatesParse(response).fixNextPage()
add("vars[meta_key]", metaKey)
add("vars[meta_query][0][paged]", "1") override fun searchMangaParse(response: Response) =
add("vars[meta_query][0][orderby]", "meta_value_num") super.searchMangaParse(response).fixNextPage()
add("vars[meta_query][0][template]", "archive")
add("vars[meta_query][0][sidebar]", "right") private fun MangasPage.fixNextPage(): MangasPage {
add("vars[meta_query][0][post_type]", "wp-manga") return if (mangas.size < 12) {
add("vars[meta_query][0][post_status]", "publish") MangasPage(mangas, false)
add("vars[meta_query][0][meta_key]", metaKey) } else {
add("vars[meta_query][relation]", "AND") this
add("vars[manga_archives_item_layout]", "default") }
}.build()
val xhrHeaders = headersBuilder()
.add("Content-Length", formBody.contentLength().toString())
.add("Content-Type", formBody.contentType().toString())
.add("X-Requested-With", "XMLHttpRequest")
.build()
return POST("$baseUrl/wp-admin/admin-ajax.php", xhrHeaders, formBody)
}
override fun popularMangaRequest(page: Int): Request {
return madaraLoadMoreRequest(page - 1, "_wp_manga_views")
}
override fun latestUpdatesRequest(page: Int): Request {
return madaraLoadMoreRequest(page - 1, "_latest_update")
} }
} }

View File

@ -48,7 +48,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("Asura Scans.us (unoriginal)", "https://asurascans.us", "en", isNsfw = false, className = "AsuraScansUs"), SingleLang("Asura Scans.us (unoriginal)", "https://asurascans.us", "en", isNsfw = false, className = "AsuraScansUs"),
SingleLang("AZManhwa", "https://azmanhwa.net", "en"), SingleLang("AZManhwa", "https://azmanhwa.net", "en"),
SingleLang("Azora", "https://azoranov.com", "ar", overrideVersionCode = 6), SingleLang("Azora", "https://azoranov.com", "ar", overrideVersionCode = 6),
SingleLang("Babel Wuxia", "https://read.babelwuxia.com", "en"), SingleLang("Babel Wuxia", "https://babelwuxia.com", "en", overrideVersionCode = 1),
SingleLang("Bakaman", "https://bakaman.net", "th", overrideVersionCode = 1), SingleLang("Bakaman", "https://bakaman.net", "th", overrideVersionCode = 1),
SingleLang("Banana Cítrica", "https://bananacitrica.com", "pt-BR", isNsfw = true, pkgName = "bananamecanica", className = "BananaCitrica", overrideVersionCode = 4), SingleLang("Banana Cítrica", "https://bananacitrica.com", "pt-BR", isNsfw = true, pkgName = "bananamecanica", className = "BananaCitrica", overrideVersionCode = 4),
SingleLang("Banana Manga", "https://bananamanga.net", "en", isNsfw = true), SingleLang("Banana Manga", "https://bananamanga.net", "en", isNsfw = true),