zaimanhua: update scanlator assignment logic & fix webview url (#9801)
* zaimanhua: update scanlator assignment logic fix #9794 * zaimanhua: fix webview url
This commit is contained in:
parent
a42f5c0479
commit
7326524050
@ -1,7 +1,7 @@
|
||||
ext {
|
||||
extName = 'Zaimanhua'
|
||||
extClass = '.Zaimanhua'
|
||||
extVersionCode = 8
|
||||
extVersionCode = 9
|
||||
isNsfw = false
|
||||
}
|
||||
|
||||
|
@ -40,6 +40,7 @@ class Zaimanhua : HttpSource(), ConfigurableSource {
|
||||
|
||||
override val name = "再漫画"
|
||||
override val baseUrl = "https://manhua.zaimanhua.com"
|
||||
private val mobileBaseUrl = "https://m.zaimanhua.com"
|
||||
private val apiUrl = "https://v4api.zaimanhua.com/app/v1"
|
||||
private val accountApiUrl = "https://account-api.zaimanhua.com/v1"
|
||||
private val checkTokenRegex = Regex("""$apiUrl/comic/(detail|chapter)""")
|
||||
@ -125,6 +126,10 @@ class Zaimanhua : HttpSource(), ConfigurableSource {
|
||||
}
|
||||
|
||||
// Detail
|
||||
override fun getMangaUrl(manga: SManga): String {
|
||||
return "$mobileBaseUrl/pages/comic/detail?id=${manga.url}"
|
||||
}
|
||||
|
||||
// path: "/comic/detail/mangaId"
|
||||
override fun mangaDetailsRequest(manga: SManga): Request =
|
||||
GET("$apiUrl/comic/detail/${manga.url}?channel=android", apiHeaders)
|
||||
@ -151,6 +156,11 @@ class Zaimanhua : HttpSource(), ConfigurableSource {
|
||||
}
|
||||
|
||||
// PageList
|
||||
override fun getChapterUrl(chapter: SChapter): String {
|
||||
val (mangaId, chapterId) = chapter.url.split("/", limit = 2)
|
||||
return "$mobileBaseUrl/pages/comic/page?comic_id=$mangaId&chapter_id=$chapterId"
|
||||
}
|
||||
|
||||
// path: "/comic/chapter/mangaId/chapterId"
|
||||
private fun pageListApiRequest(path: String): Request =
|
||||
GET("$apiUrl/comic/chapter/$path", apiHeaders, USE_CACHE)
|
||||
|
@ -51,11 +51,10 @@ class ChapterGroupDto(
|
||||
) {
|
||||
fun toSChapterList(mangaId: String, lastUpdateChapter: String, lastUpdateTime: Long): List<SChapter> {
|
||||
val groupName = title
|
||||
val isDefaultGroup = groupName == "连载"
|
||||
val current = System.currentTimeMillis()
|
||||
return data.map {
|
||||
it.toSChapterInternal().apply {
|
||||
if (!isDefaultGroup) scanlator = groupName
|
||||
scanlator = groupName
|
||||
// For some chapters, api will always return current time as upload time
|
||||
// Therefore upload times that differ too little from the current time will be ignored
|
||||
// When the chapter is the latest chapter, use the last update time as the upload time
|
||||
|
Loading…
x
Reference in New Issue
Block a user