From 05a30b5a683a03df083908033ca6efd46b4e693c Mon Sep 17 00:00:00 2001 From: happywillow0 <45346080+happywillow0@users.noreply.github.com> Date: Mon, 27 Jan 2020 13:12:40 -0500 Subject: [PATCH] [New] Gufengmh (#2129) [New] Gufengmh --- src/zh/gufengmh/build.gradle | 13 + .../gufengmh/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3130 bytes .../gufengmh/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1573 bytes .../gufengmh/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4370 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 7925 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 10368 bytes src/zh/gufengmh/res/web_hi_res_512.png | Bin 0 -> 33798 bytes .../extension/zh/gufengmh/Gufengmh.kt | 408 ++++++++++++++++++ 8 files changed, 421 insertions(+) create mode 100644 src/zh/gufengmh/build.gradle create mode 100644 src/zh/gufengmh/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/zh/gufengmh/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/zh/gufengmh/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/zh/gufengmh/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/zh/gufengmh/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/zh/gufengmh/res/web_hi_res_512.png create mode 100644 src/zh/gufengmh/src/eu/kanade/tachiyomi/extension/zh/gufengmh/Gufengmh.kt diff --git a/src/zh/gufengmh/build.gradle b/src/zh/gufengmh/build.gradle new file mode 100644 index 000000000..43cd77574 --- /dev/null +++ b/src/zh/gufengmh/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' + +ext { + appName = 'Tachiyomi: Gufeng Manhua' + pkgNameSuffix = 'zh.gufengmh' + extClass = '.Gufengmh' + extVersionCode = 1 + libVersion = '1.2' +} + + +apply from: "$rootDir/common.gradle" diff --git a/src/zh/gufengmh/res/mipmap-hdpi/ic_launcher.png b/src/zh/gufengmh/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..8fadf97e145c4888a400efaefd8590c5cb2a9f03 GIT binary patch literal 3130 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 Xb}fv7P<D<$k}XLj`#u?xB8kc_Bzuyv@7piy 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 literal 0 HcmV?d00001 diff --git a/src/zh/gufengmh/res/mipmap-xxhdpi/ic_launcher.png b/src/zh/gufengmh/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..2b38cb9bec643e3bee25a9addf46b46abe7195cc GIT binary patch literal 7925 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 D3fwBV literal 0 HcmV?d00001 diff --git a/src/zh/gufengmh/res/mipmap-xxxhdpi/ic_launcher.png b/src/zh/gufengmh/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..8e374ed39f3a6e309d824bc2d1242a60af25ef58 GIT binary patch literal 10368 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ⅇF6RRRME+I5|^dC7d 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 literal 0 HcmV?d00001 diff --git a/src/zh/gufengmh/src/eu/kanade/tachiyomi/extension/zh/gufengmh/Gufengmh.kt b/src/zh/gufengmh/src/eu/kanade/tachiyomi/extension/zh/gufengmh/Gufengmh.kt new file mode 100644 index 000000000..dd2f99b8f --- /dev/null +++ b/src/zh/gufengmh/src/eu/kanade/tachiyomi/extension/zh/gufengmh/Gufengmh.kt @@ -0,0 +1,408 @@ +package eu.kanade.tachiyomi.extension.zh.gufengmh + +import android.net.Uri +import android.util.Log +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.source.model.* +import eu.kanade.tachiyomi.source.online.ParsedHttpSource +import okhttp3.Request +import okhttp3.Response +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element + + +class Gufengmh : ParsedHttpSource() { + override val name: String = "古风漫画网" + override val lang: String = "zh" + override val supportsLatest: Boolean = true + override val baseUrl: String = "https://m.gufengmh8.com" + + //Popular + + + override fun popularMangaRequest(page: Int): Request { + return GET("$baseUrl/list/click/?page=$page", headers) + } + override fun popularMangaNextPageSelector(): String? = "li.next" + override fun popularMangaSelector(): String = "li.list-comic" + override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply { + title = element.select("a.txtA").text() + setUrlWithoutDomain(element.select("a.txtA").attr("abs:href")) + thumbnail_url = element.select("mip-img").attr("abs:src") + } + + //Latest + + override fun latestUpdatesRequest(page: Int): Request { + return GET("$baseUrl/list/update/?page=$page", headers) + } + override fun latestUpdatesNextPageSelector(): String? = popularMangaNextPageSelector() + override fun latestUpdatesSelector(): String = popularMangaSelector() + override fun latestUpdatesFromElement(element: Element): SManga = popularMangaFromElement(element) + + //Search + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + val uri = Uri.parse(baseUrl).buildUpon() + if (query.isNotBlank()) { + uri.appendPath("search") + .appendQueryParameter("keywords", query) + .appendQueryParameter("page", page.toString()) + } else { + uri.appendPath("list") + val pathBuilder = Uri.Builder() + filters.forEach { + if (it is UriFilter) + it.addToUri(pathBuilder) + } + val filterPath = pathBuilder.toString().replace("/","-").removePrefix("-") + uri.appendEncodedPath(filterPath) + .appendEncodedPath("") + } + + return GET(uri.toString(), headers) + } + + override fun searchMangaNextPageSelector(): String? = popularMangaNextPageSelector() + override fun searchMangaSelector(): String = "div.itemBox, li.list-comic" + override fun searchMangaFromElement(element: Element): SManga = SManga.create().apply { + title = element.select("a.title, a.txtA").text() + setUrlWithoutDomain(element.select("a.title, a.txtA").attr("abs:href")) + thumbnail_url = element.select("mip-img").attr("abs:src") + } + + //Details + + override fun mangaDetailsParse(document: Document): SManga = SManga.create().apply { + title = document.select("h1.title").text() + thumbnail_url = document.select("div#Cover mip-img").attr("abs:src") + author = document.select("dt:contains(作者) + dd").text() + artist = author + genre = document.select("dt:contains(类别) + dd").text() + description = document.select("p.txtDesc").text() + } + + //Chapters + + override fun chapterListSelector(): String = "div.list li" + override fun chapterFromElement(element: Element): SChapter = SChapter.create().apply { + url = element.select("a").attr("href") + name = element.select("span").text() + } + override fun chapterListParse(response: Response): List { + return super.chapterListParse(response).reversed() + } + + //Pages + + override fun pageListParse(document: Document): List = mutableListOf().apply { + val script = document.select("script:containsData(chapterImages )").html() + val images = script.substringAfter("chapterImages = [\"").substringBefore("\"]").split("\",\"") + val path = script.substringAfter("chapterPath = \"").substringBefore("\";") + val server = script.substringAfter("pageImage = \"").substringBefore("/images/cover") + images.forEach { + add(Page(size,"","$server/$path/$it")) + } + } + override fun imageUrlParse(document: Document): String = throw Exception("Not Used") + + //Filters + + override fun getFilterList(): FilterList { + val filterList = FilterList( + Filter.Header("如果使用文本搜索"), + Filter.Header("过滤器将被忽略"), + typefilter(), + regionfilter(), + genrefilter(), + letterfilter(), + statusfilter() + ) + return filterList + } + + private class typefilter: UriSelectFilterPath("按类型","filtertype", arrayOf( + Pair("","全部"), + Pair("shaonian","少年漫画"), + Pair("shaonv","少女漫画"), + Pair("qingnian","青年漫画"), + Pair("zhenrenmanhua","真人漫画") + )) + + private class regionfilter: UriSelectFilterPath("按地区","filterregion", arrayOf( + Pair("","全部"), + Pair("ribenmanhua","日本漫画"), + Pair("guochanmanhua","国产漫画"), + Pair("gangtaimanhua","港台漫画"), + Pair("oumeimanhua","欧美漫画"), + Pair("hanguomanhua","韩国漫画") + )) + + private class genrefilter: UriSelectFilterPath("按剧情","filtergenre", arrayOf( + Pair("","全部"), + Pair("maoxian","冒险"), + Pair("mofa","魔法"), + Pair("kehuan","科幻"), + Pair("kongbu","恐怖"), + Pair("lishi","历史"), + Pair("jingji","竞技"), + Pair("huanlexiang","欢乐向"), + Pair("xifangmohuan","西方魔幻"), + Pair("aiqing","爱情"), + Pair("xuanyi","悬疑"), + Pair("qihuan","奇幻"), + Pair("qingxiaoshuo","轻小说"), + Pair("sige","四格"), + Pair("shengui","神鬼"), + Pair("zhiyu","治愈"), + Pair("xiaoyuan","校园"), + Pair("weiniang","伪娘"), + Pair("danmei","耽美"), + Pair("hougong","后宫"), + Pair("mohuan","魔幻"), + Pair("wuxia","武侠"), + Pair("zhichang","职场"), + Pair("zhentan","侦探"), + Pair("meishi","美食"), + Pair("gedou","格斗"), + Pair("lizhi","励志"), + Pair("yinyuewudao","音乐舞蹈"), + Pair("rexue","热血"), + Pair("zhanzheng","战争"), + Pair("gaoxiao","搞笑"), + Pair("shenghuo","生活"), + Pair("baihe","百合"), + Pair("mengji","萌系"), + Pair("jiecao","节操"), + Pair("xingzhuanhuan","性转换"), + Pair("yanyi","颜艺"), + Pair("gufeng","古风"), + Pair("xianxia","仙侠"), + Pair("zhaiji","宅系"), + Pair("juqing","剧情"), + Pair("shenmo","神魔"), + Pair("xuanhuan","玄幻"), + Pair("chuanyue","穿越"), + Pair("qita","其他"), + Pair("huanxiang","幻想"), + Pair("motong","墨瞳"), + Pair("maimeng","麦萌"), + Pair("manman","漫漫"), + Pair("manhuadao","漫画岛"), + Pair("tuili","推理"), + Pair("dongfang","东方"), + Pair("kuaikan","快看"), + Pair("jizhan","机战"), + Pair("gaoqingdanxing","高清单行"), + Pair("xinzuo","新作"), + Pair("tougao","投稿"), + Pair("richang","日常"), + Pair("shougong","手工"), + Pair("yundong","运动"), + Pair("weimei","唯美"), + Pair("dushi","都市"), + Pair("jingxian","惊险"), + Pair("jiangshi","僵尸"), + Pair("lianai","恋爱"), + Pair("nuexin","虐心"), + Pair("chunai","纯爱"), + Pair("fuchou","复仇"), + Pair("dongzuo","动作"), + Pair("qita2","其它"), + Pair("egao","恶搞"), + Pair("mingxing","明星"), + Pair("zhenhan","震撼"), + Pair("anhei","暗黑"), + Pair("naodong","脑洞"), + Pair("xuexing","血腥"), + Pair("youyaoqi","有妖气"), + Pair("jijia","机甲"), + Pair("qingchun","青春"), + Pair("lingyi","灵异"), + Pair("tongren","同人"), + Pair("langman","浪漫"), + Pair("quanmou","权谋"), + Pair("shehui","社会"), + Pair("gongdou","宫斗"), + Pair("baoxiao","爆笑"), + Pair("tiyu","体育"), + Pair("lanmu","栏目"), + Pair("caihong","彩虹"), + Pair("zhentantuili","侦探推理"), + Pair("shaonuaiqing","少女爱情"), + Pair("gaoxiaoxiju","搞笑喜剧"), + Pair("kongbulingyi","恐怖灵异"), + Pair("kehuanmohuan","科幻魔幻"), + Pair("jingjitiyu","竞技体育"), + Pair("wuxiagedou","武侠格斗"), + Pair("jianniang","舰娘"), + Pair("danmeiBL","耽美BL"), + Pair("xiee","邪恶"), + Pair("zongheqita","综合其它"), + Pair("qingnian","青年"), + Pair("zhainan","宅男"), + Pair("zazhi","杂志"), + Pair("yinyue","音乐"), + Pair("quancai","全彩"), + Pair("heidao","黑道"), + Pair("lianaidanmei","恋爱耽美"), + Pair("rexuemaoxian","热血冒险"), + Pair("funv","腐女"), + Pair("gushi","故事"), + Pair("shaonv","少女"), + Pair("zongcai","总裁"), + Pair("baoxiaoxiju","爆笑喜剧"), + Pair("qitamanhua","其他漫画"), + Pair("lianaishenghuo","恋爱生活"), + Pair("kongbuxuanyi","恐怖悬疑"), + Pair("danmeirensheng","耽美人生"), + Pair("chongwu","宠物"), + Pair("zhandou","战斗"), + Pair("zhaohuanshou","召唤兽"), + Pair("yineng","异能"), + Pair("zhuangbi","装逼"), + Pair("yishijie","异世界"), + Pair("zhengju","正剧"), + Pair("wenxin","温馨"), + Pair("jingqi","惊奇"), + Pair("jiakong","架空"), + Pair("qingsong","轻松"), + Pair("weilai","未来"), + Pair("keji","科技"), + Pair("shaonao","烧脑"), + Pair("gaoxiaoegao","搞笑恶搞"), + Pair("mhuaquan","mhuaquan"), + Pair("shaonian","少年"), + Pair("sigeduoge","四格多格"), + Pair("bazong","霸总"), + Pair("xiuzhen","修真"), + Pair("gushimanhua","故事漫画"), + Pair("huiben","绘本"), + Pair("youxi","游戏"), + Pair("zhenren","真人"), + Pair("jingsong","惊悚"), + Pair("manhua","漫画"), + Pair("weizhongquan","微众圈"), + Pair("yujie","御姐"), + Pair("xiaoshuogaibian","小说改编"), + Pair("luoli","萝莉"), + Pair("1024manhua","1024manhua"), + Pair("jiating","家庭"), + Pair("shenhua","神话"), + Pair("shishi","史诗"), + Pair("moshi","末世"), + Pair("yulequan","娱乐圈"), + Pair("gandong","感动"), + Pair("lunli","伦理"), + Pair("zazhiquanben","杂志全本"), + Pair("zhiyu2","致郁"), + Pair("shangzhan","商战"), + Pair("zhupu","主仆"), + Pair("manhuaquan","漫画圈"), + Pair("lianaijuqingmanhua","恋爱、剧情漫画"), + Pair("hunai","婚爱"), + Pair("haomen","豪门"), + Pair("neihan","内涵"), + Pair("xingzhuan","性转"), + Pair("xiangcun","乡村"), + Pair("gongting","宫廷"), + Pair("duanzi","段子"), + Pair("chunaimanhua","纯爱漫画"), + Pair("nixi","逆袭"), + Pair("hunyin","婚姻"), + Pair("baihenvxing","百合女性"), + Pair("shenghuomanhua","生活漫画"), + Pair("ertong","儿童"), + Pair("wudao","舞蹈"), + Pair("tianchong","甜宠"), + Pair("wengai","文改"), + Pair("dujia","独家"), + Pair("biaoqian","标签"), + Pair("zhaifumanhua","宅腐漫画"), + Pair("qinggan","情感"), + Pair("mingkatong","茗卡通"), + Pair("jiujie","纠结"), + Pair("lianaimaoxiangaoxiao","恋爱冒险搞笑"), + Pair("xiuzhenlianaijiakong","修真恋爱架空"), + Pair("lianaigaoxiaohougong","恋爱搞笑后宫"), + Pair("xuanyikongbu","悬疑恐怖"), + Pair("lianaixiaoyuanshenghuo","恋爱校园生活"), + Pair("xiuzhenlianaigufeng","修真恋爱古风"), + Pair("shenghuoxuanyilingyi","生活悬疑灵异"), + Pair("qingnianmanhua","青年漫画"), + Pair("lishimanhua","历史漫画"), + Pair("meishaonv","美少女"), + Pair("shuangliu","爽流"), + Pair("qiangwei","蔷薇"), + Pair("gaozhishang","高智商"), + Pair("xuanyituili","悬疑推理"), + Pair("jizhi","机智"), + Pair("donghua","动画"), + Pair("rexuedongzuo","热血动作"), + Pair("xiuji","秀吉"), + Pair("AA","AA"), + Pair("gaibian","改编"), + Pair("juwei","橘味") + )) + + private class letterfilter: UriSelectFilterPath("按字母","filterletter", arrayOf( + Pair("","全部"), + Pair("a","A"), + Pair("b","B"), + Pair("c","C"), + Pair("d","D"), + Pair("e","E"), + Pair("f","F"), + Pair("g","G"), + Pair("h","H"), + Pair("i","I"), + Pair("j","J"), + Pair("k","K"), + Pair("l","L"), + Pair("m","M"), + Pair("n","N"), + Pair("o","O"), + Pair("p","P"), + Pair("q","Q"), + Pair("r","R"), + Pair("s","S"), + Pair("t","T"), + Pair("u","U"), + Pair("v","V"), + Pair("w","W"), + Pair("x","X"), + Pair("y","Y"), + Pair("z","Z"), + Pair("1","其他") + )) + + private class statusfilter: UriSelectFilterPath("按进度","filterstatus",arrayOf( + Pair("","全部"), + Pair("wanjie","已完结"), + Pair("lianzai","连载中") + )) + + /** + * Class that creates a select filter. Each entry in the dropdown has a name and a display name. + * If an entry is selected it is appended as a query parameter onto the end of the URI. + * If `firstIsUnspecified` is set to true, if the first entry is selected, nothing will be appended on the the URI. + */ + //vals: + private open class UriSelectFilterPath(displayName: String, val uriParam: String, val vals: Array>, + val firstIsUnspecified: Boolean = true, + defaultValue: Int = 0) : + Filter.Select(displayName, vals.map { it.second }.toTypedArray(), defaultValue), UriFilter { + override fun addToUri(uri: Uri.Builder) { + if (state != 0 || !firstIsUnspecified) + uri.appendPath(vals[state].first) + } + } + + /** + * Represents a filter that is able to modify a URI. + */ + private interface UriFilter { + fun addToUri(uri: Uri.Builder) + } +} +