From 64f7ed5645216741545e57cb101db1db3263b0a5 Mon Sep 17 00:00:00 2001 From: stevenyomi <95685115+stevenyomi@users.noreply.github.com> Date: Sat, 1 Jun 2024 12:25:44 +0800 Subject: [PATCH] Make GoDa multisrc and add sources (#3318) --- lib-multisrc/goda/build.gradle.kts | 5 +++ .../goda}/res/mipmap-hdpi/ic_launcher.png | Bin .../goda}/res/mipmap-mdpi/ic_launcher.png | Bin .../goda}/res/mipmap-xhdpi/ic_launcher.png | Bin .../goda}/res/mipmap-xxhdpi/ic_launcher.png | Bin .../goda}/res/mipmap-xxxhdpi/ic_launcher.png | Bin .../eu/kanade/tachiyomi/multisrc/goda/GoDa.kt | 29 ++++++++++-------- src/en/goda/build.gradle | 8 +++++ .../tachiyomi/extension/en/goda/Goda.kt | 5 +++ src/zh/baozimhorg/build.gradle | 3 +- .../extension/zh/baozimhorg/GoDaFactory.kt | 12 -------- .../extension/zh/baozimhorg/GoDaManhua.kt | 3 +- src/zh/eighteenmanhua/build.gradle | 9 ++++++ .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2186 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1353 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 2829 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 5162 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 6897 bytes .../zh/eighteenmanhua/EighteenManhua.kt | 5 +++ 19 files changed, 53 insertions(+), 26 deletions(-) create mode 100644 lib-multisrc/goda/build.gradle.kts rename {src/zh/baozimhorg => lib-multisrc/goda}/res/mipmap-hdpi/ic_launcher.png (100%) rename {src/zh/baozimhorg => lib-multisrc/goda}/res/mipmap-mdpi/ic_launcher.png (100%) rename {src/zh/baozimhorg => lib-multisrc/goda}/res/mipmap-xhdpi/ic_launcher.png (100%) rename {src/zh/baozimhorg => lib-multisrc/goda}/res/mipmap-xxhdpi/ic_launcher.png (100%) rename {src/zh/baozimhorg => lib-multisrc/goda}/res/mipmap-xxxhdpi/ic_launcher.png (100%) rename src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/BaozimhOrg.kt => lib-multisrc/goda/src/eu/kanade/tachiyomi/multisrc/goda/GoDa.kt (87%) create mode 100644 src/en/goda/build.gradle create mode 100644 src/en/goda/src/eu/kanade/tachiyomi/extension/en/goda/Goda.kt delete mode 100644 src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaFactory.kt create mode 100644 src/zh/eighteenmanhua/build.gradle create mode 100644 src/zh/eighteenmanhua/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/zh/eighteenmanhua/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/zh/eighteenmanhua/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/zh/eighteenmanhua/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/zh/eighteenmanhua/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/zh/eighteenmanhua/src/eu/kanade/tachiyomi/extension/zh/eighteenmanhua/EighteenManhua.kt diff --git a/lib-multisrc/goda/build.gradle.kts b/lib-multisrc/goda/build.gradle.kts new file mode 100644 index 000000000..dc076cc37 --- /dev/null +++ b/lib-multisrc/goda/build.gradle.kts @@ -0,0 +1,5 @@ +plugins { + id("lib-multisrc") +} + +baseVersionCode = 1 diff --git a/src/zh/baozimhorg/res/mipmap-hdpi/ic_launcher.png b/lib-multisrc/goda/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from src/zh/baozimhorg/res/mipmap-hdpi/ic_launcher.png rename to lib-multisrc/goda/res/mipmap-hdpi/ic_launcher.png diff --git a/src/zh/baozimhorg/res/mipmap-mdpi/ic_launcher.png b/lib-multisrc/goda/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from src/zh/baozimhorg/res/mipmap-mdpi/ic_launcher.png rename to lib-multisrc/goda/res/mipmap-mdpi/ic_launcher.png diff --git a/src/zh/baozimhorg/res/mipmap-xhdpi/ic_launcher.png b/lib-multisrc/goda/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from src/zh/baozimhorg/res/mipmap-xhdpi/ic_launcher.png rename to lib-multisrc/goda/res/mipmap-xhdpi/ic_launcher.png diff --git a/src/zh/baozimhorg/res/mipmap-xxhdpi/ic_launcher.png b/lib-multisrc/goda/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from src/zh/baozimhorg/res/mipmap-xxhdpi/ic_launcher.png rename to lib-multisrc/goda/res/mipmap-xxhdpi/ic_launcher.png diff --git a/src/zh/baozimhorg/res/mipmap-xxxhdpi/ic_launcher.png b/lib-multisrc/goda/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from src/zh/baozimhorg/res/mipmap-xxxhdpi/ic_launcher.png rename to lib-multisrc/goda/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/BaozimhOrg.kt b/lib-multisrc/goda/src/eu/kanade/tachiyomi/multisrc/goda/GoDa.kt similarity index 87% rename from src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/BaozimhOrg.kt rename to lib-multisrc/goda/src/eu/kanade/tachiyomi/multisrc/goda/GoDa.kt index 9109b2f56..bbf8f5750 100644 --- a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/BaozimhOrg.kt +++ b/lib-multisrc/goda/src/eu/kanade/tachiyomi/multisrc/goda/GoDa.kt @@ -1,4 +1,4 @@ -package eu.kanade.tachiyomi.extension.zh.baozimhorg +package eu.kanade.tachiyomi.multisrc.goda import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.source.model.Filter @@ -13,10 +13,11 @@ import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.Request import okhttp3.Response import org.jsoup.nodes.Document +import org.jsoup.nodes.Element import org.jsoup.nodes.Entities import rx.Observable -open class BaozimhOrg( +open class GoDa( override val name: String, override val baseUrl: String, override val lang: String, @@ -77,29 +78,33 @@ open class BaozimhOrg( return GET(getMangaUrl(manga), headers) } - private fun Document.getMangaId() = selectFirst("#mangachapters")!!.attr("data-mid") + private fun Element.getMangaId() = selectFirst("#mangachapters")!!.attr("data-mid") override fun mangaDetailsParse(response: Response) = SManga.create().apply { - val document = response.asJsoup() + val document = response.asJsoup().selectFirst("main")!! val titleElement = document.selectFirst("h1")!! val elements = titleElement.parent()!!.parent()!!.children() check(elements.size == 6) title = titleElement.ownText() - status = SManga.UNKNOWN // Everything is marked as ongoing + status = when (titleElement.child(0).text()) { + "連載中", "Ongoing" -> SManga.ONGOING + "完結" -> SManga.COMPLETED + else -> SManga.UNKNOWN + } author = Entities.unescape(elements[1].children().drop(1).joinToString { it.text().removeSuffix(" ,") }) genre = buildList { elements[2].children().drop(1).mapTo(this) { it.text().removeSuffix(" ,") } elements[3].children().mapTo(this) { it.text().removePrefix("#") } }.joinToString() - description = elements[4].text() + "\n\nID: ${document.getMangaId()}" + description = (elements[4].text() + "\n\nID: ${document.getMangaId()}").trim() thumbnail_url = document.selectFirst("img.object-cover")!!.attr("src") } override fun fetchChapterList(manga: SManga): Observable> = Observable.fromCallable { val mangaId = manga.description - ?.substringAfterLast("\nID: ", "") - ?.takeIf { it.isNotEmpty() && it.all(Character::isDigit) } + ?.substringAfterLast("ID: ", "") + ?.takeIf { it.toIntOrNull() != null } ?: client.newCall(mangaDetailsRequest(manga)).execute().asJsoup().getMangaId() fetchChapterList(mangaId) @@ -125,8 +130,8 @@ open class BaozimhOrg( override fun pageListRequest(chapter: SChapter): Request { val id = chapter.url.substringAfterLast('#', "") - val mangaId = id.substringBefore('/') - val chapterId = id.substringAfter('/') + val mangaId = id.substringBefore('/', "") + val chapterId = id.substringAfter('/', "") return pageListRequest(mangaId, chapterId) } @@ -134,8 +139,8 @@ open class BaozimhOrg( override fun pageListParse(response: Response): List { val document = response.asJsoup() - return document.select("noscript > img").mapIndexed { index, element -> - Page(index, imageUrl = element.attr("src")) + return document.select("#chapcontent > div > img").mapIndexed { index, element -> + Page(index, imageUrl = element.attr("data-src").ifEmpty { element.attr("src") }) } } diff --git a/src/en/goda/build.gradle b/src/en/goda/build.gradle new file mode 100644 index 000000000..bc88daf30 --- /dev/null +++ b/src/en/goda/build.gradle @@ -0,0 +1,8 @@ +ext { + extName = 'Goda' + extClass = '.Goda' + themePkg = 'goda' + overrideVersionCode = 0 +} + +apply from: "$rootDir/common.gradle" diff --git a/src/en/goda/src/eu/kanade/tachiyomi/extension/en/goda/Goda.kt b/src/en/goda/src/eu/kanade/tachiyomi/extension/en/goda/Goda.kt new file mode 100644 index 000000000..6fb90b686 --- /dev/null +++ b/src/en/goda/src/eu/kanade/tachiyomi/extension/en/goda/Goda.kt @@ -0,0 +1,5 @@ +package eu.kanade.tachiyomi.extension.en.goda + +import eu.kanade.tachiyomi.multisrc.goda.GoDa + +class Goda : GoDa("Goda", "https://manhuascans.org", "en") diff --git a/src/zh/baozimhorg/build.gradle b/src/zh/baozimhorg/build.gradle index 3f5ff1644..e3018d189 100644 --- a/src/zh/baozimhorg/build.gradle +++ b/src/zh/baozimhorg/build.gradle @@ -1,7 +1,8 @@ ext { extName = 'GoDa' extClass = '.GoDaManhua' - extVersionCode = 29 + themePkg = 'goda' + overrideVersionCode = 29 } apply from: "$rootDir/common.gradle" diff --git a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaFactory.kt b/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaFactory.kt deleted file mode 100644 index 555354912..000000000 --- a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaFactory.kt +++ /dev/null @@ -1,12 +0,0 @@ -package eu.kanade.tachiyomi.extension.zh.baozimhorg - -import eu.kanade.tachiyomi.source.SourceFactory - -// This is not used because ideally the extension language should be updated to "Multi" (all). -// Chinese users don't receive status updates from Discord, so I'll keep the package name unchanged for now. -class GoDaFactory : SourceFactory { - override fun createSources() = listOf( - GoDaManhua(), - BaozimhOrg("Goda", "https://manhuascans.org", "en"), - ) -} diff --git a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaManhua.kt b/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaManhua.kt index 8aaf14d72..98091e0aa 100644 --- a/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaManhua.kt +++ b/src/zh/baozimhorg/src/eu/kanade/tachiyomi/extension/zh/baozimhorg/GoDaManhua.kt @@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.extension.zh.baozimhorg import android.app.Application import androidx.preference.ListPreference import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.multisrc.goda.GoDa import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.source.ConfigurableSource import eu.kanade.tachiyomi.source.model.Page @@ -16,7 +17,7 @@ import okio.IOException import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.api.get -class GoDaManhua : BaozimhOrg("GoDa漫画", "", "zh"), ConfigurableSource { +class GoDaManhua : GoDa("GoDa漫画", "", "zh"), ConfigurableSource { override val id get() = 774030471139699415 diff --git a/src/zh/eighteenmanhua/build.gradle b/src/zh/eighteenmanhua/build.gradle new file mode 100644 index 000000000..76840ab3d --- /dev/null +++ b/src/zh/eighteenmanhua/build.gradle @@ -0,0 +1,9 @@ +ext { + extName = '18Manhua' + extClass = '.EighteenManhua' + themePkg = 'goda' + overrideVersionCode = 0 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" diff --git a/src/zh/eighteenmanhua/res/mipmap-hdpi/ic_launcher.png b/src/zh/eighteenmanhua/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..67b22c654e4e26d972ea4c0b1eac2021ba0f5263 GIT binary patch literal 2186 zcmV;52zB>~P)6~`wpCvhF8C8$IqQF$pPg(^ZI5EwobK>-P zB#=t|h!f&Ct&@~Cq%pB$D|X!4;H2({whlN=vQ8Y?sgpQ~o$lKExIc8}&XsmYyWZKy z?0Vh3(qFqXJ9B5wf6n=zbMMTKWtCgGm0P)$Te-a(+9J!c7B3Ji$|o_42L=Y#1cSl* zLZQ%Op-||FQpW7;?4#4u)Ax0Cb**v8%Bd~s?(SX}jYf|trLF-nOaqisBx~{Oy=;@u zmabpNhHGMz*d{h+OU~lv=H^=?kw|YQhUaqfsrt`kzf8^}91i!2joEtAveD7eEwNba zx}R6Pm`!XO85!9kwq_&9D=%NZ{Dkx~7deF_F5kxz+r&n(HB;dhm#Z2dAODm4q;fsU zT*EXQ66XqCvC*=uRhfpFY+OAyHultf_kvuHFE)y;1tln-A(<_qUOhEef}YAWgUq#D ztnYK3x33-~2PyUJ<~Kp5p6T-wVqS>IwQ$TPG_&nL{(DhGx>PdSd?#pOhgc!9+d}mq zlifhYAR2;5NLJ=EHch|!7^OxK)92u19UOZAIyOW5H{sYraC$FlW-?n_VD_rr2R#qM z;cvju0j^N?)^B!g{%qH!i^O$DnyF?5MV(npS~9Q#I`01gBacbSc%< zclV2uZBOlneRrZ7S3=`*8>*oK94P7gm7l}ZSyU|QHI(!1L8-0=F!=@?z6W;RV#qPX z7(i2%#?G6ySDkN%SU43y`nU5P(0;Gpzj1{jN5c>#s9&bn9r!$qy*$rCOv2_sjW#?T zIR@LSV9y6(s2-)F?jAwb4Lt*UJ^;4Yq#~yRCFC?{*k1MQhhZw?bRRQUjehB4$gy7dv<|Zdhae$x z^hl9IOiuFkKf})Vm{5Y<>)`Ey2y)y;_zlNsOh9C{`z(aRK+t>7WLyUNjc;w*Y z5WJ`fcQ;u#@hWQ9t%e{SYOnqtRHRsAF;L+fI=tewrtjf&v9C2}c$W@C2{X}{?FJ^S zR%q?n^C391-zGO*u}S|g4M9-91iHQt;i)*$4kuZDN+181$N9HA!zho17fM=~hFIw>CKh zjTMF<)QdIn&UmpxOg!icO6r;T^nIbz)7Z@}<|a42-m;5NB6A@jF8f z)GdZ1-*qx+u|iD5_O&PNG_6c+BcgikRH{87Is+#g9D#Ou&i+lP=RfHx2$w_i`{9kh zLL``~S9^#-%X&kQ)*`uBv2c+m?L`<{Zc8ZsIP_(hJn0N0oH{5vgSz@Z=>4g#d*aEF zeGYz6|9<_nPWRg@6UJJ0<$d&itusQhgq`#&$B<*mF->TR_xybg1P-JVcE1Znr%>zK zV#smonko=aka}mR0fy?J{}I^tap(7Vaw?(od#EdKnlOUN|LPPiY2FZI4<#z#xed_w z3wZNyy5Il&N^6z;ZoH>{F|^$c!AtXGEH-rp)w(gU@DqqG?YKn`U=15pqnJo}aj75s& zL7--*P)C309x7-wEH^`jR8yr%r%W}Lrps75og36GN`QLCf;ubdbce45xjo4qi@69& zN{Z_aL?Y6WO?2(n9`8Pr?P>0yK${g0qzhR-Wx z;@+Tt8_K=hw>5DaSvKg~it2mVp3O{v=wEcUFe2?vw|+e!Ug(Fi3S20bpD@em36D(4 z%=Z)aeutPZo>XklE42{w>v6w#M~L|$;Q79*vC#h1QqE$ZYN{8k3mSug!vaH)n6_#afaBNub*i@Oziv{96 zslw@Om81BpOBB_P4V8{fxxShrL6gkOO_r26e0jl1xs_YFm75>!|9k0#n6t@M+5i9m M07*qoM6N<$f~}@FdjJ3c literal 0 HcmV?d00001 diff --git a/src/zh/eighteenmanhua/res/mipmap-mdpi/ic_launcher.png b/src/zh/eighteenmanhua/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..30a537cf836a0ca703ce7c6e7e0d82c3dd773e1d GIT binary patch literal 1353 zcmZvcZ8X$b9LI+-hVhUUB@wmBqz&yZEgIoalpGmjkyF}+lQvY?(R6fZw@lhyWtTO> zD1&J{_J}1FEy~G++NBwTqRn`09z4v9nfu#+Z}!EWz2|$s_w)O_z4zS9;bD8tNVX&# z4rdk;92kL}?jN@i9_x6CaU%|=?-U*y8HA1hy9x^n|KrJI^1nu~RARzRl#ts1l{&@RKu5?WaT%>rnYpizKEjxbQm zK`n#jSy-NdrD<4r2g*Z z*D2^qfzDLu#5x%s$3t5Tv_?TI4O%0iB?2{vK~pF+?SuP4aMvI1_`)r3Xz)Pw9#HEJ zwXRUT4FoPAAcMdeZf-&R%}})wsvMvai#_nxLHSxJUjyaV2!k8eaAP%G$6^WBEuajG zIl`K24qP+fnj)?_!l2X?N==}Y1f|9ZgA!vXF@h2zDltYFa14P%KpY})3=qa_JYo}o zt&i9SP^<^VI8>~Ue#13d=0#z5ZRJC}OI^MdTLp9M8Eel-5o6Bn77N zqGe{dL@QRJ<#Wd!#7(j7hP}iY3pbPdbo+vwjO^lFMs9wC{*!gdl!1f!aoL)Qn?Kim zda^Jace`%r?`xHPSxqd-cgk8`%~(UjxVJ@i7h~6k5C!vL#Z#l~stF3sil$qa86BcZ zpvb}f)FO7fE){JK1&iAPXjmdGjl!9eRI&-eI-HY;7Z4&W!bDy@+4d2ioYsx~W zI(5^*cN&gU55(oxFedtnW>$IbE}D|Dc)LV3`7XI%HgbmREBhuN(C)=2OdeuClC)$6 z({`6t$3~|eG8t)<4IOg4_2N;WW|j- z5x(c}vragjjZmu ze_Gm=SEBLs4W8j0q-^)~W?G?h-f%*j?oz!aHD<6Nqn-JSl>5CrFU5D%VPlNB4Zf_- zVrd>g~^?>*@KWAHTVfps>J(fcOjl0CW@S&;S4c literal 0 HcmV?d00001 diff --git a/src/zh/eighteenmanhua/res/mipmap-xhdpi/ic_launcher.png b/src/zh/eighteenmanhua/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..85ea59c49d175ccfe263e9a1387f27b53a0ca7b9 GIT binary patch literal 2829 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 literal 0 HcmV?d00001 diff --git a/src/zh/eighteenmanhua/res/mipmap-xxhdpi/ic_launcher.png b/src/zh/eighteenmanhua/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f9e013a918e0ec64f2bf051e977f0a80d0168710 GIT binary patch literal 5162 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 V_@m&u;f?_U)RncAY7{Ns{U2t!^JD-3 literal 0 HcmV?d00001 diff --git a/src/zh/eighteenmanhua/res/mipmap-xxxhdpi/ic_launcher.png b/src/zh/eighteenmanhua/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1ed3bde46a7a4f64a886c7ceb60389978a7432c0 GIT binary patch literal 6897 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 literal 0 HcmV?d00001 diff --git a/src/zh/eighteenmanhua/src/eu/kanade/tachiyomi/extension/zh/eighteenmanhua/EighteenManhua.kt b/src/zh/eighteenmanhua/src/eu/kanade/tachiyomi/extension/zh/eighteenmanhua/EighteenManhua.kt new file mode 100644 index 000000000..836935245 --- /dev/null +++ b/src/zh/eighteenmanhua/src/eu/kanade/tachiyomi/extension/zh/eighteenmanhua/EighteenManhua.kt @@ -0,0 +1,5 @@ +package eu.kanade.tachiyomi.extension.zh.eighteenmanhua + +import eu.kanade.tachiyomi.multisrc.goda.GoDa + +class EighteenManhua : GoDa("18漫画", "https://18mh.org", "zh")