Ổ Truyện: Fix no value for _id in getListPage (#2259)

Co-authored-by: Draken <131387159+dragonx943@users.noreply.github.com>
master
Hoàng Phi Hùng 7 months ago committed by GitHub
parent 5882a5d54d
commit a3f384e3b3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -1,6 +1,5 @@
package org.koitharu.kotatsu.parsers.site.vi
import org.jsoup.HttpStatusException
import org.koitharu.kotatsu.parsers.MangaLoaderContext
import org.koitharu.kotatsu.parsers.MangaSourceParser
import org.koitharu.kotatsu.parsers.config.ConfigKey
@ -27,7 +26,6 @@ import org.koitharu.kotatsu.parsers.util.oneOrThrowIfMany
import org.koitharu.kotatsu.parsers.util.parseJson
import org.koitharu.kotatsu.parsers.util.parseSafe
import org.koitharu.kotatsu.parsers.util.urlEncoded
import java.net.HttpURLConnection
import java.text.SimpleDateFormat
import java.util.EnumSet
import java.util.Locale
@ -88,20 +86,20 @@ internal class OTruyenParser(context: MangaLoaderContext) :
}
else -> {
val tag = filter.tags.oneOrThrowIfMany()
if (tag != null) {
if (!filter.tags.isEmpty()) {
filter.tags.oneOrThrowIfMany()?.let {
append("/v1/api/the-loai/")
append(tag.key)
append(it.key)
append("?page=")
append(page)
}
} else if (filter.states.isNotEmpty()) {
filter.states.oneOrThrowIfMany()?.let {
append(
when (it) {
MangaState.ONGOING -> "/v1/api/danh-sach/dang-phat-hanh?page=${page}"
MangaState.FINISHED -> "/v1/api/danh-sach/hoan-thanh?page=${page}"
MangaState.UPCOMING -> "/v1/api/danh-sach/sap-ra-mat?page=${page}"
else -> "/v1/api/danh-sach/dang-phat-hanh?page=${page}" // default
else -> "/v1/api/danh-sach/dang-phat-hanh?page=${page}" // ONGOING
}
)
}
@ -115,20 +113,17 @@ internal class OTruyenParser(context: MangaLoaderContext) :
val json = try {
webClient.httpGet(url).parseJson()
} catch (e: HttpStatusException) {
if (e.statusCode == HttpURLConnection.HTTP_INTERNAL_ERROR) {
} catch (_: Exception) {
return emptyList()
} else {
throw e
}
}
val items = json.getJSONObject("data").getJSONArray("items")
return items.mapJSON { jo ->
val slug = jo.getString("slug")
Manga(
id = generateUid(jo.getString("_id").hashCode().toLong()),
url = jo.getString("slug"),
publicUrl = "https://otruyen.cc/truyen-tranh/${jo.getString("slug")}",
id = generateUid(slug.hashCode().toLong()),
url = slug,
publicUrl = "https://otruyen.cc/truyen-tranh/${slug}",
title = jo.getString("name"),
altTitles = emptySet(),
coverUrl = "https://img.otruyenapi.com/uploads/comics/${jo.getString("thumb_url")}",

Loading…
Cancel
Save