From e72bb09d1a6f253f9ed0627ef00d0305227065b2 Mon Sep 17 00:00:00 2001 From: Alessandro Jean Date: Sun, 21 Feb 2021 15:02:00 -0300 Subject: [PATCH] =?UTF-8?q?Update=20Mang=C3=A1Host=20url.=20(#5952)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pt/mangahost/build.gradle | 6 +++++- .../extension/pt/mangahost/MangaHost.kt | 17 +++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/pt/mangahost/build.gradle b/src/pt/mangahost/build.gradle index 4a19dc6db..addeaa483 100644 --- a/src/pt/mangahost/build.gradle +++ b/src/pt/mangahost/build.gradle @@ -5,8 +5,12 @@ ext { extName = 'MangaHost' pkgNameSuffix = 'pt.mangahost' extClass = '.MangaHost' - extVersionCode = 16 + extVersionCode = 17 libVersion = '1.2' } +dependencies { + implementation project(':lib-ratelimit') +} + apply from: "$rootDir/common.gradle" diff --git a/src/pt/mangahost/src/eu/kanade/tachiyomi/extension/pt/mangahost/MangaHost.kt b/src/pt/mangahost/src/eu/kanade/tachiyomi/extension/pt/mangahost/MangaHost.kt index 87a2bcb38..22d552bc4 100644 --- a/src/pt/mangahost/src/eu/kanade/tachiyomi/extension/pt/mangahost/MangaHost.kt +++ b/src/pt/mangahost/src/eu/kanade/tachiyomi/extension/pt/mangahost/MangaHost.kt @@ -1,5 +1,6 @@ package eu.kanade.tachiyomi.extension.pt.mangahost +import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.network.asObservable import eu.kanade.tachiyomi.source.model.FilterList @@ -20,6 +21,7 @@ import rx.Observable import java.text.ParseException import java.text.SimpleDateFormat import java.util.Locale +import java.util.concurrent.TimeUnit class MangaHost : ParsedHttpSource() { @@ -28,17 +30,21 @@ class MangaHost : ParsedHttpSource() { override val name = "Mangá Host" - override val baseUrl = "https://mangahosted.com" + override val baseUrl = "https://mangahostz.com" override val lang = "pt-BR" override val supportsLatest = true - override val client: OkHttpClient = network.cloudflareClient + override val client: OkHttpClient = network.cloudflareClient.newBuilder() + .addInterceptor(RateLimitInterceptor(3, 1, TimeUnit.SECONDS)) + .build() override fun headersBuilder(): Headers.Builder = Headers.Builder() - .add("User-Agent", USER_AGENT) + .add("Accept", ACCEPT) + .add("Accept-Language", ACCEPT_LANGUAGE) .add("Referer", baseUrl) + .add("User-Agent", USER_AGENT) private fun genericMangaFromElement(element: Element): SManga = SManga.create().apply { @@ -212,8 +218,11 @@ class MangaHost : ParsedHttpSource() { private fun Elements.textWithoutLabel(): String = text()!!.substringAfter(":").trim() companion object { + private const val 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" + private const val ACCEPT_LANGUAGE = "pt-BR,pt;q=0.9,en-US;q=0.8,en;q=0.7,es;q=0.6,gl;q=0.5" private const val USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) " + - "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36" + "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36" private val LANG_REGEX = "( )?\\((PT-)?BR\\)".toRegex() private val IMAGE_REGEX = "_(small|medium|xmedium)\\.".toRegex()