From c3330537fb8a553d9c0aef34d6dacc443ed317b6 Mon Sep 17 00:00:00 2001 From: Gordon Date: Tue, 23 Oct 2018 19:43:36 +0800 Subject: [PATCH] Add manhuaren source (#582) Add manhuaren source --- src/zh/manhuaren/build.gradle | 12 + .../manhuaren/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5470 bytes .../manhuaren/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 3365 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7999 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 13060 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 19181 bytes src/zh/manhuaren/res/web_hi_res_512.png | Bin 0 -> 19181 bytes .../extension/zh/manhuaren/Manhuaren.kt | 336 ++++++++++++++++++ 8 files changed, 348 insertions(+) create mode 100644 src/zh/manhuaren/build.gradle create mode 100644 src/zh/manhuaren/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/zh/manhuaren/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/zh/manhuaren/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/zh/manhuaren/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/zh/manhuaren/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/zh/manhuaren/res/web_hi_res_512.png create mode 100644 src/zh/manhuaren/src/eu/kanade/tachiyomi/extension/zh/manhuaren/Manhuaren.kt diff --git a/src/zh/manhuaren/build.gradle b/src/zh/manhuaren/build.gradle new file mode 100644 index 000000000..9214c9766 --- /dev/null +++ b/src/zh/manhuaren/build.gradle @@ -0,0 +1,12 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' + +ext { + appName = 'Tachiyomi: Manhuaren' + pkgNameSuffix = 'zh.manhuaren' + extClass = '.Manhuaren' + extVersionCode = 1 + libVersion = '1.2' +} + +apply from: "$rootDir/common.gradle" diff --git a/src/zh/manhuaren/res/mipmap-hdpi/ic_launcher.png b/src/zh/manhuaren/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..ab01d0392609978ccb74ec49d33eb782eda60878 GIT binary patch literal 5470 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 literal 0 HcmV?d00001 diff --git a/src/zh/manhuaren/res/mipmap-xhdpi/ic_launcher.png b/src/zh/manhuaren/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..8eb837787458ef287f6fe42b7427f341f9eee48b GIT binary patch literal 7999 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 literal 0 HcmV?d00001 diff --git a/src/zh/manhuaren/res/web_hi_res_512.png b/src/zh/manhuaren/res/web_hi_res_512.png new file mode 100644 index 0000000000000000000000000000000000000000..3a9f4d88410393b8a8d9a96e371a01bdf75b6649 GIT binary patch literal 19181 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 literal 0 HcmV?d00001 diff --git a/src/zh/manhuaren/src/eu/kanade/tachiyomi/extension/zh/manhuaren/Manhuaren.kt b/src/zh/manhuaren/src/eu/kanade/tachiyomi/extension/zh/manhuaren/Manhuaren.kt new file mode 100644 index 000000000..10baf6524 --- /dev/null +++ b/src/zh/manhuaren/src/eu/kanade/tachiyomi/extension/zh/manhuaren/Manhuaren.kt @@ -0,0 +1,336 @@ +package eu.kanade.tachiyomi.extension.zh.manhuaren + +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.source.model.Filter +import eu.kanade.tachiyomi.source.model.FilterList +import eu.kanade.tachiyomi.source.model.Page +import eu.kanade.tachiyomi.source.model.MangasPage +import eu.kanade.tachiyomi.source.model.SChapter +import eu.kanade.tachiyomi.source.model.SManga +import eu.kanade.tachiyomi.source.online.HttpSource +import kotlin.collections.mutableMapOf +import kotlin.collections.MutableMap +import okhttp3.Request +import okhttp3.Response +import org.json.JSONArray +import org.json.JSONObject +import java.net.URLEncoder +import java.security.MessageDigest +import java.text.SimpleDateFormat +import java.time.LocalDateTime +import java.time.format.DateTimeFormatter + +class Manhuaren : HttpSource() { + override val lang = "zh" + override val supportsLatest = true + override val name = "漫画人" + override val baseUrl = "http://mangaapi.manhuaren.com" + + private val pageSize = 20 + + private val c = "4e0a48e1c0b54041bce9c8f0e036124d" + + private fun myGet(url: String): Request { + return GET(url, headers) + } + + override fun headersBuilder() = super.headersBuilder().add("X-Yq-Yqci", "{\"le\": \"zh\"}") + + private fun hashString(type: String, input: String): String { + val HEX_CHARS = "0123456789abcdef" + val bytes = MessageDigest + .getInstance(type) + .digest(input.toByteArray()) + val result = StringBuilder(bytes.size * 2) + + bytes.forEach { + val i = it.toInt() + result.append(HEX_CHARS[i shr 4 and 0x0f]) + result.append(HEX_CHARS[i and 0x0f]) + } + + return result.toString() + } + + private fun urlEncode(str: String?): String { + return URLEncoder.encode(str, "UTF-8") + .replace("+", "%20") + .replace("%7E", "~") + .replace("*", "%2A") + } + + private fun generateGSNHash(params: MutableMap): String { + var s = c + "GET" + val keys = params.toSortedMap().keys + keys.forEach { + s += it + s += urlEncode(params[it]) + } + s += c + return hashString("MD5", s) + } + + private fun generateApiRequestUrl(path: String, params: MutableMap): String { + val dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd+HH:mm:ss") + val now = LocalDateTime.now().format(dateFormatter) + + params["gsm"] = "md5" + params["gft"] = "json" + params["gts"] = now + params["gak"] = "android_manhuaren2" + params["gat"] = "" + params["gaui"] = "191909801" + params["gui"] = "191909801" + params["gut"] = "0" + params["gsn"] = generateGSNHash(params) + val queryString = params.map { (key, value) -> "$key=${urlEncode(value)}" }.joinToString("&") + return "$path?$queryString" + } + + private fun mangasFromJSONArray(arr: JSONArray): MangasPage { + val ret = ArrayList(arr.length()) + for (i in 0 until arr.length()) { + var obj = arr.getJSONObject(i) + var id = obj.getInt("mangaId") + ret.add(SManga.create().apply { + title = obj.getString("mangaName") + thumbnail_url = obj.getString("mangaCoverimageUrl") + author = obj.optString("mangaAuthor") + status = when (obj.getInt("mangaIsOver")) { + 1 -> SManga.COMPLETED + 0 -> SManga.ONGOING + else -> SManga.UNKNOWN + } + url = generateApiRequestUrl( + "/v1/manga/getDetail", + mutableMapOf("mangaId" to id.toString()) + ) + }) + } + return MangasPage(ret, arr.length() != 0) + } + + private fun mangasPageParse(response: Response): MangasPage { + val res = response.body()!!.string() + val arr = JSONObject(res).getJSONObject("response").getJSONArray("mangas") + return mangasFromJSONArray(arr) + } + + override fun popularMangaRequest(page: Int): Request { + val params = mutableMapOf( + "subCategoryType" to "0", + "subCategoryId" to "0", + "start" to (pageSize * (page - 1)).toString(), + "limit" to pageSize.toString(), + "sort" to "0" + ) + return myGet(baseUrl + generateApiRequestUrl("/v2/manga/getCategoryMangas", params)) + } + + override fun latestUpdatesRequest(page: Int): Request { + val params = mutableMapOf( + "subCategoryType" to "0", + "subCategoryId" to "0", + "start" to (pageSize * (page - 1)).toString(), + "limit" to pageSize.toString(), + "sort" to "1" + ) + return myGet(baseUrl + generateApiRequestUrl("/v2/manga/getCategoryMangas", params)) + } + + override fun popularMangaParse(response: Response): MangasPage { + return mangasPageParse(response) + } + + override fun latestUpdatesParse(response: Response): MangasPage { + return mangasPageParse(response) + } + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + if (query != "") { + return myGet(baseUrl + generateApiRequestUrl( + "/v1/search/getSearchManga", + mutableMapOf( + "keywords" to query, + "start" to (pageSize * (page - 1)).toString(), + "limit" to pageSize.toString() + ) + )) + } + val params = mutableMapOf( + "start" to (pageSize * (page - 1)).toString(), + "limit" to pageSize.toString() + ) + filters.forEach { filter -> + when (filter) { + is SortFilter -> params["sort"] = filter.getId() + is CategoryFilter -> { + params["subCategoryId"] = filter.getId() + params["subCategoryType"] = filter.getType() + } + } + } + return myGet(baseUrl + generateApiRequestUrl("/v2/manga/getCategoryMangas", params)) + } + + override fun searchMangaParse(response: Response): MangasPage { + val res = response.body()!!.string() + val obj = JSONObject(res).getJSONObject("response") + if (obj.has("result")) { + return mangasFromJSONArray(obj.getJSONArray("result")) + } + return mangasFromJSONArray(obj.getJSONArray("mangas")) + } + + override fun mangaDetailsParse(response: Response) = SManga.create().apply { + val res = response.body()!!.string() + val obj = JSONObject(res).getJSONObject("response") + title = obj.getString("mangaName") + thumbnail_url = obj.getString("mangaCoverimageUrl") + + var arr = obj.getJSONArray("mangaAuthors") + var tmparr = ArrayList(arr.length()) + for (i in 0 until arr.length()) { + tmparr.add(arr.getString(i)) + } + author = tmparr.joinToString(", ") + + genre = obj.getString("mangaTheme").replace(" ", ", ") + + status = when (obj.getInt("mangaIsOver")) { + 1 -> SManga.COMPLETED + 0 -> SManga.ONGOING + else -> SManga.UNKNOWN + } + + description = obj.getString("mangaIntro") + } + + private fun getChapterName(type: String, name: String, title: String): String { + return (if (type == "mangaEpisode") "[番外] " else "") + name + (if (title == "") "" else ": $title") + } + + private fun chaptersFromJSONArray(type: String, arr: JSONArray): List { + val ret = ArrayList() + for (i in 0 until arr.length()) { + val obj = arr.getJSONObject(i) + ret.add(SChapter.create().apply { + val dateFormat = SimpleDateFormat("yyyy-MM-dd") + name = getChapterName(type, obj.getString("sectionName"), obj.getString("sectionTitle")) + date_upload = dateFormat.parse(obj.getString("releaseTime")).getTime() + chapter_number = obj.getInt("sectionSort").toFloat() + url = generateApiRequestUrl( + "/v1/manga/getRead", + mutableMapOf( + "mangaSectionId" to obj.getInt("sectionId").toString(), + "netType" to "4", + "loadreal" to "1", + "imageQuality" to "2" + ) + ) + }) + } + return ret + } + + override fun chapterListParse(response: Response): List { + val res = response.body()!!.string() + val obj = JSONObject(res).getJSONObject("response") + val ret = ArrayList() + listOf("mangaEpisode", "mangaWords", "mangaRolls").forEach { + if (obj.has(it)) { + ret.addAll(chaptersFromJSONArray(it, obj.getJSONArray(it))) + } + } + return ret + } + + override fun pageListParse(response: Response): List { + val res = response.body()!!.string() + val obj = JSONObject(res).getJSONObject("response") + val ret = ArrayList() + val host = obj.getJSONArray("hostList").getString(0) + val arr = obj.getJSONArray("mangaSectionImages") + for (i in 0 until arr.length()) { + ret.add(Page(i, "$host${arr.getString(i)}", "$host${arr.getString(i)}")) + } + return ret + } + + override fun imageUrlParse(response: Response) = throw UnsupportedOperationException("This method should not be called!") + + override fun getFilterList() = FilterList( + SortFilter("状态", arrayOf( + Pair("热门", "0"), + Pair("更新", "1"), + Pair("新作", "2"), + Pair("完结", "3") + )), + CategoryFilter("分类", arrayOf( + Category("全部", "0", "0"), + Category("热血", "0", "31"), + Category("恋爱", "0", "26"), + Category("校园", "0", "1"), + Category("百合", "0", "3"), + Category("耽美", "0", "27"), + Category("伪娘", "0", "5"), + Category("冒险", "0", "2"), + Category("职场", "0", "6"), + Category("后宫", "0", "8"), + Category("治愈", "0", "9"), + Category("科幻", "0", "25"), + Category("励志", "0", "10"), + Category("生活", "0", "11"), + Category("战争", "0", "12"), + Category("悬疑", "0", "17"), + Category("推理", "0", "33"), + Category("搞笑", "0", "37"), + Category("奇幻", "0", "14"), + Category("魔法", "0", "15"), + Category("恐怖", "0", "29"), + Category("神鬼", "0", "20"), + Category("萌系", "0", "21"), + Category("历史", "0", "4"), + Category("美食", "0", "7"), + Category("同人", "0", "30"), + Category("运动", "0", "34"), + Category("绅士", "0", "36"), + Category("机甲", "0", "40"), + Category("限制级", "0", "61"), + Category("少年向", "1", "1"), + Category("少女向", "1", "2"), + Category("青年向", "1", "3"), + Category("港台", "2", "35"), + Category("日韩", "2", "36"), + Category("大陆", "2", "37"), + Category("欧美", "2", "52") + )) + ) + + private data class Category(val name: String, val type: String, val id: String) + + private class SortFilter( + name: String, + val vals: Array>, + state: Int = 0 + ) : Filter.Select( + name, + vals.map { it.first }.toTypedArray(), + state + ) { + fun getId() = vals[state].second + } + + private class CategoryFilter( + name: String, + val vals: Array, + state: Int = 0 + ) : Filter.Select( + name, + vals.map { it.name }.toTypedArray(), + state + ) { + fun getId() = vals[state].id + fun getType() = vals[state].type + } +}