Set desktop UA and update URL for some Chinese sources (#880)
* Set desktop UA and update URL for some Chinese sources * Update linked websites
This commit is contained in:
parent
879efc332f
commit
4b309832d3
src/zh
@ -21,6 +21,10 @@
|
|||||||
android:host="xmanhua.com"
|
android:host="xmanhua.com"
|
||||||
android:pathPattern="/..*"
|
android:pathPattern="/..*"
|
||||||
android:scheme="https" />
|
android:scheme="https" />
|
||||||
|
<data
|
||||||
|
android:host="yymanhua.com"
|
||||||
|
android:pathPattern="/..*"
|
||||||
|
android:scheme="https" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
</application>
|
</application>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'Mangabz'
|
extName = 'Mangabz'
|
||||||
extClass = '.Mangabz'
|
extClass = '.Mangabz'
|
||||||
extVersionCode = 7
|
extVersionCode = 8
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "$rootDir/common.gradle"
|
apply from: "$rootDir/common.gradle"
|
||||||
|
@ -13,6 +13,7 @@ import eu.kanade.tachiyomi.source.model.MangasPage
|
|||||||
import eu.kanade.tachiyomi.source.model.Page
|
import eu.kanade.tachiyomi.source.model.Page
|
||||||
import eu.kanade.tachiyomi.source.model.SChapter
|
import eu.kanade.tachiyomi.source.model.SChapter
|
||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
|
import okhttp3.Headers
|
||||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||||
import okhttp3.OkHttpClient
|
import okhttp3.OkHttpClient
|
||||||
import okhttp3.Response
|
import okhttp3.Response
|
||||||
@ -26,7 +27,7 @@ import uy.kohesive.injekt.api.get
|
|||||||
|
|
||||||
class Mangabz : MangabzTheme("Mangabz"), ConfigurableSource {
|
class Mangabz : MangabzTheme("Mangabz"), ConfigurableSource {
|
||||||
|
|
||||||
override val baseUrl: String
|
private val _baseUrl: String
|
||||||
override val client: OkHttpClient
|
override val client: OkHttpClient
|
||||||
|
|
||||||
private val urlSuffix: String
|
private val urlSuffix: String
|
||||||
@ -34,7 +35,7 @@ class Mangabz : MangabzTheme("Mangabz"), ConfigurableSource {
|
|||||||
init {
|
init {
|
||||||
val preferences = Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
val preferences = Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
||||||
val mirror = preferences.mirror
|
val mirror = preferences.mirror
|
||||||
baseUrl = "https://" + mirror.domain
|
_baseUrl = "https://" + mirror.domain
|
||||||
urlSuffix = mirror.urlSuffix
|
urlSuffix = mirror.urlSuffix
|
||||||
|
|
||||||
val cookieInterceptor = CookieInterceptor(mirror.domain, mirror.langCookie, preferences.lang)
|
val cookieInterceptor = CookieInterceptor(mirror.domain, mirror.langCookie, preferences.lang)
|
||||||
@ -44,6 +45,16 @@ class Mangabz : MangabzTheme("Mangabz"), ConfigurableSource {
|
|||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private val isCi = System.getenv("CI") == "true"
|
||||||
|
override val baseUrl get() = when {
|
||||||
|
isCi -> MIRRORS.joinToString("#, ") { "https://$it" }
|
||||||
|
else -> _baseUrl
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun headersBuilder() = Headers.Builder()
|
||||||
|
.add("Referer", _baseUrl)
|
||||||
|
.add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/121.0")
|
||||||
|
|
||||||
private fun SManga.stripMirror() = apply {
|
private fun SManga.stripMirror() = apply {
|
||||||
val old = url
|
val old = url
|
||||||
url = buildString(old.length) {
|
url = buildString(old.length) {
|
||||||
|
@ -24,8 +24,6 @@ abstract class MangabzTheme(
|
|||||||
|
|
||||||
override val supportsLatest = true
|
override val supportsLatest = true
|
||||||
|
|
||||||
override fun headersBuilder() = super.headersBuilder().add("Referer", baseUrl)
|
|
||||||
|
|
||||||
override fun popularMangaRequest(page: Int) = GET("$baseUrl/manga-list-p$page/", headers)
|
override fun popularMangaRequest(page: Int) = GET("$baseUrl/manga-list-p$page/", headers)
|
||||||
|
|
||||||
override fun popularMangaParse(response: Response) = searchMangaParse(response)
|
override fun popularMangaParse(response: Response) = searchMangaParse(response)
|
||||||
|
@ -47,6 +47,7 @@ val MIRRORS
|
|||||||
get() = arrayOf(
|
get() = arrayOf(
|
||||||
Mirror("mangabz.com", "bz/", "mangabz_lang"),
|
Mirror("mangabz.com", "bz/", "mangabz_lang"),
|
||||||
Mirror("xmanhua.com", "xm/", "xmanhua_lang"),
|
Mirror("xmanhua.com", "xm/", "xmanhua_lang"),
|
||||||
|
Mirror("yymanhua.com", "yy/", "yymanhua_lang"),
|
||||||
)
|
)
|
||||||
|
|
||||||
class Mirror(
|
class Mirror(
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'WNACG'
|
extName = 'WNACG'
|
||||||
extClass = '.wnacg'
|
extClass = '.wnacg'
|
||||||
extVersionCode = 14
|
extVersionCode = 15
|
||||||
isNsfw = true
|
isNsfw = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,6 @@ import org.jsoup.nodes.Document
|
|||||||
import org.jsoup.nodes.Element
|
import org.jsoup.nodes.Element
|
||||||
import rx.Observable
|
import rx.Observable
|
||||||
|
|
||||||
// URL can be found at https://www.wnacglink.top/
|
|
||||||
class wnacg : ParsedHttpSource(), ConfigurableSource {
|
class wnacg : ParsedHttpSource(), ConfigurableSource {
|
||||||
override val name = "紳士漫畫"
|
override val name = "紳士漫畫"
|
||||||
override val lang = "zh"
|
override val lang = "zh"
|
||||||
@ -67,7 +66,8 @@ class wnacg : ParsedHttpSource(), ConfigurableSource {
|
|||||||
return GET(builder.build(), headers)
|
return GET(builder.build(), headers)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun headersBuilder(): Headers.Builder = super.headersBuilder()
|
override fun headersBuilder() = Headers.Builder()
|
||||||
|
.add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/121.0")
|
||||||
.set("referer", baseUrl)
|
.set("referer", baseUrl)
|
||||||
.set("sec-fetch-mode", "no-cors")
|
.set("sec-fetch-mode", "no-cors")
|
||||||
.set("sec-fetch-site", "cross-site")
|
.set("sec-fetch-site", "cross-site")
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ext {
|
ext {
|
||||||
extName = 'Zerobyw'
|
extName = 'Zerobyw'
|
||||||
extClass = '.Zerobyw'
|
extClass = '.Zerobyw'
|
||||||
extVersionCode = 17
|
extVersionCode = 18
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "$rootDir/common.gradle"
|
apply from: "$rootDir/common.gradle"
|
||||||
|
@ -11,7 +11,7 @@ import okhttp3.OkHttpClient
|
|||||||
import okhttp3.Response
|
import okhttp3.Response
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
private const val DEFAULT_BASE_URL = "http://www.zerobyw007.com"
|
private const val DEFAULT_BASE_URL = "http://www.zerobywgbo2.com"
|
||||||
|
|
||||||
private const val BASE_URL_PREF = "ZEROBYW_BASEURL"
|
private const val BASE_URL_PREF = "ZEROBYW_BASEURL"
|
||||||
private const val DEFAULT_BASE_URL_PREF = "defaultBaseUrl"
|
private const val DEFAULT_BASE_URL_PREF = "defaultBaseUrl"
|
||||||
@ -34,7 +34,7 @@ fun getBaseUrlPreference(context: Context) = EditTextPreference(context).apply {
|
|||||||
key = BASE_URL_PREF
|
key = BASE_URL_PREF
|
||||||
title = "网址"
|
title = "网址"
|
||||||
summary = "正常情况下会自动更新。" +
|
summary = "正常情况下会自动更新。" +
|
||||||
"如果出现错误,请在 GitHub 上报告,并且可以在 GitHub 仓库 zerozzz123456/1 找到最新网址手动填写。" +
|
"如果出现错误,请在 GitHub 上报告,并且可以在 https://zerobyw.github.io/ 找到最新网址手动填写。" +
|
||||||
"填写时按照 $DEFAULT_BASE_URL 格式。"
|
"填写时按照 $DEFAULT_BASE_URL 格式。"
|
||||||
setDefaultValue(DEFAULT_BASE_URL)
|
setDefaultValue(DEFAULT_BASE_URL)
|
||||||
|
|
||||||
|
@ -11,6 +11,7 @@ import eu.kanade.tachiyomi.source.model.Page
|
|||||||
import eu.kanade.tachiyomi.source.model.SChapter
|
import eu.kanade.tachiyomi.source.model.SChapter
|
||||||
import eu.kanade.tachiyomi.source.model.SManga
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
|
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
|
||||||
|
import okhttp3.Headers
|
||||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||||
import okhttp3.Request
|
import okhttp3.Request
|
||||||
import okhttp3.Response
|
import okhttp3.Response
|
||||||
@ -38,6 +39,9 @@ class Zerobyw : ParsedHttpSource(), ConfigurableSource {
|
|||||||
|
|
||||||
private val isCi = System.getenv("CI") == "true"
|
private val isCi = System.getenv("CI") == "true"
|
||||||
|
|
||||||
|
override fun headersBuilder() = Headers.Builder()
|
||||||
|
.add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/121.0")
|
||||||
|
|
||||||
// Popular
|
// Popular
|
||||||
// Website does not provide popular manga, this is actually latest manga
|
// Website does not provide popular manga, this is actually latest manga
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user