MGKomik: Fix Latest, CF workaround (#18519)

* MGKomik: Fix Latest

- using latest instead of new manga for latest

* bypass cloudflare & add ratelimit

- add header to not be blocked by cloudflare
- add ratelimit
- change url request a little to bypass cloudflare check

* Update MadaraGenerator.kt
This commit is contained in:
Luqman 2023-10-14 00:12:46 +07:00 committed by GitHub
parent ae142c6066
commit 4062340bd9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 24 additions and 3 deletions

View File

@ -2,21 +2,42 @@ package eu.kanade.tachiyomi.extension.id.mgkomik
import eu.kanade.tachiyomi.multisrc.madara.Madara import eu.kanade.tachiyomi.multisrc.madara.Madara
import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.interceptor.rateLimit
import okhttp3.CacheControl import okhttp3.CacheControl
import okhttp3.Headers
import okhttp3.OkHttpClient
import okhttp3.Request import okhttp3.Request
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.Locale import java.util.Locale
import java.util.concurrent.TimeUnit
class MGKomik : Madara("MG Komik", "https://mgkomik.id", "id", SimpleDateFormat("dd MMM yy", Locale.US)) { class MGKomik : Madara("MG Komik", "https://mgkomik.id", "id", SimpleDateFormat("dd MMM yy", Locale.US)) {
override val client: OkHttpClient = super.client.newBuilder()
.rateLimit(20, 5, TimeUnit.SECONDS)
.build()
override val chapterUrlSuffix = "" override val chapterUrlSuffix = ""
override fun headersBuilder(): Headers.Builder = super.headersBuilder()
.add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9")
.add("Accept-Language", "en-US,en;q=0.9,id;q=0.8")
.add("DNT", "1")
.add("Referer", "$baseUrl/")
.add("Sec-Fetch-Dest", "document")
.add("Sec-Fetch-Mode", "navigate")
.add("Sec-Fetch-Site", "same-origin")
.add("Sec-Fetch-User", "?1")
.add("Upgrade-Insecure-Requests", "1")
.add("X-Requested-With", "XMLHttpRequest")
override fun searchMangaNextPageSelector() = "a.page.larger" override fun searchMangaNextPageSelector() = "a.page.larger"
override fun popularMangaSelector() = searchMangaSelector() override fun popularMangaSelector() = searchMangaSelector()
override fun popularMangaRequest(page: Int): Request { override fun popularMangaRequest(page: Int): Request {
return GET( return GET(
url = "$baseUrl/${searchPage(page)}?s&post_type=wp-manga&m_orderby=views", url = "$baseUrl/${searchPage(page)}?op&s&post_type=wp-manga&m_orderby=views",
headers = headers, headers = headers,
cache = CacheControl.FORCE_NETWORK, cache = CacheControl.FORCE_NETWORK,
) )
@ -24,7 +45,7 @@ class MGKomik : Madara("MG Komik", "https://mgkomik.id", "id", SimpleDateFormat(
override fun latestUpdatesRequest(page: Int): Request { override fun latestUpdatesRequest(page: Int): Request {
return GET( return GET(
url = "$baseUrl/${searchPage(page)}?s&post_type=wp-manga&m_orderby=new-manga", url = "$baseUrl/${searchPage(page)}?op&s&post_type=wp-manga&m_orderby=latest",
headers = headers, headers = headers,
cache = CacheControl.FORCE_NETWORK, cache = CacheControl.FORCE_NETWORK,
) )

View File

@ -354,7 +354,7 @@ class MadaraGenerator : ThemeSourceGenerator {
SingleLang("ManyToon.me", "https://manytoon.me", "en", isNsfw = true, className = "ManyToonMe", overrideVersionCode = 4), SingleLang("ManyToon.me", "https://manytoon.me", "en", isNsfw = true, className = "ManyToonMe", overrideVersionCode = 4),
SingleLang("ManyToon", "https://manytoon.com", "en", isNsfw = true, overrideVersionCode = 5), SingleLang("ManyToon", "https://manytoon.com", "en", isNsfw = true, overrideVersionCode = 5),
SingleLang("ManyToonClub", "https://manytoon.club", "ko", isNsfw = true, overrideVersionCode = 1), SingleLang("ManyToonClub", "https://manytoon.club", "ko", isNsfw = true, overrideVersionCode = 1),
SingleLang("MG Komik", "https://mgkomik.id", "id", overrideVersionCode = 7), SingleLang("MG Komik", "https://mgkomik.id", "id", overrideVersionCode = 8),
SingleLang("Midnight Mess Scans", "https://midnightmess.org", "en", isNsfw = true, overrideVersionCode = 6), SingleLang("Midnight Mess Scans", "https://midnightmess.org", "en", isNsfw = true, overrideVersionCode = 6),
SingleLang("MidnightManga", "http://midnightmanga.com", "es"), SingleLang("MidnightManga", "http://midnightmanga.com", "es"),
SingleLang("Milftoon", "https://milftoon.xxx", "en", isNsfw = true, overrideVersionCode = 2), SingleLang("Milftoon", "https://milftoon.xxx", "en", isNsfw = true, overrideVersionCode = 2),