From f6fb6f9cfc96d22fcf30cf4a9bbdbb00561581fc Mon Sep 17 00:00:00 2001 From: Edgard Date: Sun, 2 Jun 2024 16:31:46 -0300 Subject: [PATCH] feat(src/pt): New Source: AnimeQ (close #2881) --- src/pt/animeq/build.gradle | 12 + src/pt/animeq/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3487 bytes src/pt/animeq/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1959 bytes .../animeq/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 5127 bytes .../animeq/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 9043 bytes .../animeq/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 13211 bytes .../animeextension/pt/doramogo/AnimeQ.kt | 254 ++++++++++++++++++ 7 files changed, 266 insertions(+) create mode 100644 src/pt/animeq/build.gradle create mode 100644 src/pt/animeq/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/pt/animeq/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/pt/animeq/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/pt/animeq/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/pt/animeq/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/pt/animeq/src/eu/kanade/tachiyomi/animeextension/pt/doramogo/AnimeQ.kt diff --git a/src/pt/animeq/build.gradle b/src/pt/animeq/build.gradle new file mode 100644 index 0000000000..4c1377545c --- /dev/null +++ b/src/pt/animeq/build.gradle @@ -0,0 +1,12 @@ +ext { + extName = 'AnimeQ' + extClass = '.AnimeQ' + extVersionCode = 1 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" + +dependencies { + implementation(project(':lib:blogger-extractor')) +} diff --git a/src/pt/animeq/res/mipmap-hdpi/ic_launcher.png b/src/pt/animeq/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..6d50fcafc445eaaa794f383ae0ecbeede72c513c GIT binary patch literal 3487 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 N002ovPDHLkV1hx1p3VRO literal 0 HcmV?d00001 diff --git a/src/pt/animeq/res/mipmap-mdpi/ic_launcher.png b/src/pt/animeq/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..771d991558c7888bcd056f5a54b590799da5f69a GIT binary patch literal 1959 zcmV;Y2Uz%tP)Px+VM#Zw_{Lc4l{W zg%A@bA?{pne&6r=e#d)H3NQIVz2x@e6@Zy$&=CXVo(C}FEHMCR0OVi0Ll!_?UEM5$ z!BDN$YO?_Nk+&Fz0YzCK7tWQgyTgohEdIMAX0!QRLqo&fqN1W_(sAVgc#e*ap3v!Z z1|=h1HBQbj@feQo3-^phV}o9=F9cu_zbgem&h--$6OSm0nkDwQ91E@j5uSGjNN!x3 zrk`mvnm_=fVmZkHm_yTaztng&#=Zz+N}$AJdU$xu1@P1vfY%s?=~H8{R0ia{r>6&3 zuU^IV>(^niSlHMh2XRPhYAP}_GZ7RNWD`$va*_i?QB(kc0jB_Hn(mWhz!CMWt*tn8 z=nyVnz6`V33_m|VXuT-Ro~6go@CZ!f42Fh>;p5|jO`A5Ms;UYhAt83j!I9%s1CV3D zk@3Xnyu3VkdwC*fbu>1{>Jb@0L61=|mT^!TPZ*&?TOWm{)*<}xTPt)rJsKMuSyt2@ zssSi5AormwSFRv8Hy6tjm*B_;bFqMWLUJxE5f(K2l90j~_E+0@C_b$I8@_r!G&eV6 z!GZ-gLrY^xI9CloZ47jGcOxSs1Cfh@aM2I|U(1j!MqdA70303~t>z_Iwf_<}Z{CcP zCr_#(K{Ws=14{BaaNq!r9zBZR53a{j?+5l?oGgGM7I;uJJYe`$iFEd#(BpiT1{#LTIBf7wdfrw(ocFCAK~wKSd~)ytT3T9ICMRVl z$WK)H`AnuR3#pON-Me?OY}qoDZ^^*t2?Ms-gyFQ_>$wO+CLqe|AvCl}0t~oKMddQuHQt`10n2mtB|(y%4Q#DC8kpf}8mkyG<0o(_(nGAj=GF(Z>U3H3n? zU`Aqq1o830bmYX0*~~ZC{zu~l+Cz&Y|LWkcF-Kcax0)R-UzGMTohCQ;KvhrRg?;O7MItPGffE$N1 zlSnAKaE9uD0HCg9BXYxfC216(DNit-J~(p2AAZarw#N#!!rItz3`{csB}xf^l#~?I zmb{O=@Lo~p$>sWcR5*71^ceSg9-?GzFt#tXW+9=uBLJcb&Z54)ezFozdkhGG1OUf& zZ$$oLo&izvzG)0(3mG|%6|O`<9LIpIgg5}CmB`P}pPp925d+D|$*3;gfE|&K>}FQC zjDbkuD{)bFCf3BvhA=zef`CGw*%#ZYPUF<6Q^?85nc7P1h)M#AFhBr&w{sneV;)<* z#|QB3u^=Sv{TW_fUZ823oga&xA^Z*u48*l-*AN;SYTIha@ZnY(b;LkYQWCx?T#LPN z{2G9$NC^P;?c2wCcWjIlJKKY_4&mY9?EKj(FXhETmjNiTK(3Qkf&lnBe>J{H=ohU& za#`k%DHw?*mrzz#hKh;`8_S)ss}u|_1CUZK?iPuJ5)%_qk@p@-lgUa4@tm~^-!TUx zVfV#J0K&WO8c%F-2>{#A@as8Jj|dD90Oea(;j7d^$s-Kf%?lB~=MqXwOHo-_=`_Qr zdB7zAaz;xTNJvP){+xGFl}>tneiee3Fahuu&%lfTa6~n^*V);L`1p8ynY|JRmWzuN zm+Lz%p@`dcft8RP0C%M176VGtysoY;#Kpy7??)@}?Me;+5go-#uX7?4vBeiqUS7@u zkk06w&A#L$r5XU4&?xC&7`VT`9}y7|h>428yUB~$5N6fG$MVqg3Dll$WS3ovii*@o z-03r_0Z3ORl<011YQo{ehuMj{+(9Hp0L-61-=#Is7fz$DEG;^9o6PQxns;7ELMD^x zfw#A}UP=E#)pRB^cLG%joY`z1)oQgNYW4^GIy*a0L_|b!;t{85ySd87>-ObtA*<~Fa9b^Gk zSOVb+t;}HL8ZmkfzeDNe$_JkEZ#uBfSttGO8X0zR@)cTR@8UVz2vR6El2iYSg tAjqHHUh%8{YA}=3D8;}`+vL*s{|9=DP;H!1NZPx|!AV3xRCr$Poe6vtRi4Lx)wwzWC4`(LA>q`>1QHkyL=YLb=E-wQHJ{x6vTB`kz+UJmHD{urw+}Dlh$+WdHW(-2W(bNbvOMaQ(mZoojqX08rVm z_3PI^_|#KRm6*-uae^Q`3?M=f8k!MB5uyCvh^67)I+Dffqgvy9VqzZA611L%sR>iBj^6Qm@&86(8R-X=t*xy+ z)2vyuJ^*R})VqSSYIpSjknfKG@PNbN_(2ea2;PqKmNTm5{+17Ae<(1UOs3WV?gFs- zvI0E-%>4jp;cz(qj|MN#aCogD7}~F=mHzs0wK4ezQS1K#-TUb~aI(F=cTs3v}@On zS%tqE?+c%N%mD}Ba5ye012AuAjOZM>n3XG6V%M%+sI066S%LH+!L^EuLu_md2=%py ziHSl=Vj}A8c3io74Rsb9#IPt--M)j0it7xT1cli(HG+MT7=>}?KT)blm zH~?h~khD=PE23jO*^+WFXV0F+%$YOs)mLA+1s@R+f!way$nTtv!cHxb*200zmf?uD zRG{8g2eIBpCxgip4pT%FERk_2zb)WWwHbSlU&gT$7jXKoXHj2I={R6En=xd_5G-A~ z6y&CiD3K9&6cPab`gk>XXU?2KNl6L5`Q{s@wNX(~7}T#XrVeb6+!i+wYr6uI?Ji6# zah7Gz3jgn1m=xg<0Y~Hms0dHRCqJ~n>e8b)aq=_+8y+5xVZ(-D)v8r2HU#4n6abPr ztC{S*#0RDD+hk^7VaaF=Y<3FGt=C`@1occtAvtFs8h&(s7f}xrt~}5UYmU`p<+?vI z2xJLwz4aD~ii$j9g1@mrIsSkHFd74Rwd<bC@w>296&;&V-!TJs1Bvdnnpm-Gy*3 zVJeory-uQB_mX{g*irjnTP!=3ino`oWe{RxWAV;A?_k1&3A!1Qp8E+p0JRvP6$gC% zE|=MrD_1aO$`pL@#TQKY9XobF>6;_a=K4OEOxl@>D|&i}UtRkZ)*w1i8`}x59f-#I z4S!?@Q&Us1XU`tAZ{Oa~GP$0D1>6Gsorr05lmxbZ{d&Cd#v8C&t!UP)8Q%MsSr}m5 z4wImhuY37@hFs~8Jioi@h>m((h#P_t^ETt+#d4ajE-&@*AZ7{IgSAQ$YXpMJ`G@0~k$(5h7{99TXHnKur2rLRi0 zW9RV#_E3}-3)2DufhQbU^E73S%hRo3l=QE ziWMu^7{-qthTjjoi)dSwdrX=$X|GXxx*pY7pkh&X;P2X9*TDh6Ud!eoA2)uL2$eq-7%m9CG9!~FkA!MkhU zV?U8KZrHHFFaWLb2L*s$4B(9epMCZj#*ZJ5>gsAFB_`r83m(Tq*5mF87LV{n(ZTY2 zhY*f%(F%5tjNI{JS`6w;vfEKsTs0KhcRN2YxqKF&G1Mu1R5x8AzWlIx1qs}0vMsdkPHCu8vR4)qH zV;Y9BFD_bPhnm*wiTr!ton-Tod`-ThA84rVjiY# zEXSUG`&k{cISQ*6%*5!Z-H4EuoE5@X_QN5HIBXt;ktK^^u~-;@BS(&C#vr4yp;0V= zS7YP=Mh@C$N>IdVQU#?`! z3DWuc^z4r9(~}TY^MhBKsYvVfyUk7~L>J%KBa2MvJHj!5O@;N$=X z^y-2w(-II?d&9G7t=X>Kia+0d4A1`h4;~k17=WT=n5!>)w4)W!nFahK0MN^f)Q(F4 z=vYDbENm}MLs;$g2JKT&_Q>t)E!c3QH(pq@-lJ6S{BGD@oPuZt0Hwl6mL&lgQM}OY zg2)2&d_9i>QX3|d>HfSXOamYQlP6DRW9i%NVeBYLM_7#$fV%&d`Sf}V)?Vp}*}waD z4_Wle%f-&()-cyJSb(o|HkbfhE-$bEXemM(v9C*bJQh(_Rwe_G#Q>P9uX#PP>7n_q zlRK<6SXVO|vw!`z8vvE-m7j}UGg93yNL7<%$msYXazQc+pe)GfLDyG?;3xd1$n9Rx7nb%g*+g1c*X7yXtLFj;N{BmMvS{LAbD>FaA>08ex@x^IA-E*7cs%$|q?O zfRw~I?0GTW!vf^x8v5aE&ldoH#uRi5@O3?aPHrSKQUcgk)EW^t|K>3UJMie#71IPmOv|r5?sr}Yy7QmxD5&-J>qlE?7R-B56%5P;= zHP&)eX2&(DZF1;VKfaHXh*f%S~nFXn2JjyoNYG}-pP+EYzs-89Yf)#K8frcRlW+R}JhGR~lk~rwh`v0N&#v1E8nv zQitW*q_lvtqI8&Vp7r+FiVN^+ZAk!<<6C0iO9Vjq9EtihV>tj?4b9KbHW%@du8JRLztaVo^dcNQ zb(JkeRNDlsUbPyX+Gk+@OPS09)G{d5ARIjg!(H_4Z=K&OS3(%sk*EuN$xB(RO zMd^%oXnylF*Oe^TEqL!{0jB?EoyYZn9=Tm`;AJNOwYh`xH^~JJpYEK9X}KW1@o32* zWB~k)0TKY3h%o?_r&Kqv^AdpFg7UU8BQ+ zL(RrQ0zg;9jvYIuQdjRmQgs9&1E7}`sA-Vg1@-CO3tL|3h!!_b={4m%Znxl1clu%4 z8>=t--DdzKi_nV!6DLk&J@3`4C$_%$5L#9> z0Ptz{^>z5qyZtd$27t=<=$?a}b9*5C)^~8;yy((g>46TK2vGbL1oy1{za04(QT(>s z1xWySXS*Q{!o2eU9<3=YEp-Rsp80twotcIBTTTEzg-@Dmx8Q^70hscuRUSc`ZZrSI z*ijJe&PS1$BB;&i*inJ~?}sZl@Zsjo?D3^1o_GRup-8t6JOd2I&AI;E8!GRsT(EKg zc|E$LbXI31+;ZL}t@dGcr2}>g{#-KvlV5k<*{uAi{pJRuC@htw+auSkS%c}*r|Yf- zamqjNcSlPAc!RFgQ8kU01L&5UgDo#*Bl+%W^|2|1Ocqcx08?B5NO*B^amDo~!~7iGmp3&K1xfB;A_ASb6Q%3kS;6a@eet(T2Xv|F%AW&w0- z`QE*I*(0qNFJ9zQP)RB1VZEH39QIT_JrwBAlbu>8Y%~Bo5|9Jv(j^;ZujV4Pnqq*< z(P-Y;=8OTGY6oJ{T&D{nt^NAzui3T)YVOEiq57NuOMM7B03J3w5SrZRE z)Ct?>_CaRt2@e2Xf_G;@P5@8OS>d(-34m7qE?J%)kU(gD$Xt+`d8-Xn4U`-}r;Z)5 z?Nkv$sz1#ypQc{v?8XHKV8nKF?S%5Ol<4w`z>8l(-hxYBU zZQi43UrSpQXwRM87GbwK0nAz9(*K2$&g4#3EAw4SNU0kqA`#P&D)qeET8BTDMQ z)Ag&}imkRGcxtw907kSm7-a(vfHw&9Owecm!)iS$Nu0 zD-$#TMmwZ7Sb8db+_-UUYqHiUDcHU6aXf7MT6-EMpBdY2_}KAJ82j?O?jTHi4C&1S zq<)7&_^xcQaVBCsF@QGV8#QVa+x;*(DG7Vu8jdU#0IKUj1V9{$u`exSkC##mkOR;< zKTp4mDwnVFA+rE~21YJO3c`sA3D~=2EIQZGoymIp0nrwyR%~sbm5$PrD0BgYmXB#EdE4gyK-=glKy+@}M(b4dT8f4JhZAlh-X zT*Q+TrZNDu@7tGOeu>1y#Gl4Q%&2y#`P|#LZ?nBTX{$2QO4=sI$ex~b1&iDlea4I# zgN++Ey0@A!+P`3x54Z*B%>#^PM-&HWzc$*4Roc-|DGcSTTYj8vVcDt`mM>q<_MK4f z@!*e@1`swS*R2+zpkEhpGv5&ul=dJf+wutN3ub)du zNEqk>K<|<98vt!Y6$RkIPd@qNwSN8j8Q$B`AIs2t-i#-fgj(z6=R0)h(7XNn_kYLr z1`VGt^3l8VRC8QZZ<(2yZKTvsnXB_^XP{hBV+dL8oRmhFmzV#2 z-n@CwZ`!np9`}*_|2@4$iOxkQp}g3yqJ-!IY# zVLwDstgou7x_Ii;sXYr9E`0y&*|S$&uBTe>4N5F+=IASxk=~{h;{ri2C^k@5Wc!sNp6OGJqexuXq|*!Uq!+9p5LS=fg%Vba1uQIkyViPOK(;Ek;p8d-IU&< zN^XV(P7vsifanUJ*8-#-lO?d1dbu&|Ff6jb pR%ikcSa}+5tqFi(kp;HG{{x>tO(c_+?a002ovPDHLkV1gkSnl=Cc literal 0 HcmV?d00001 diff --git a/src/pt/animeq/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/animeq/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..ce9293eb83e306091edaa0f3dc6135c6f52f8fac GIT binary patch literal 9043 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 RjseJ*ytJ}Zsibk>{{S7fEv^6n literal 0 HcmV?d00001 diff --git a/src/pt/animeq/src/eu/kanade/tachiyomi/animeextension/pt/doramogo/AnimeQ.kt b/src/pt/animeq/src/eu/kanade/tachiyomi/animeextension/pt/doramogo/AnimeQ.kt new file mode 100644 index 0000000000..5116cba0ab --- /dev/null +++ b/src/pt/animeq/src/eu/kanade/tachiyomi/animeextension/pt/doramogo/AnimeQ.kt @@ -0,0 +1,254 @@ +package eu.kanade.tachiyomi.animeextension.pt.animeq + +import android.app.Application +import android.util.Base64 +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource +import eu.kanade.tachiyomi.animesource.model.AnimeFilterList +import eu.kanade.tachiyomi.animesource.model.SAnime +import eu.kanade.tachiyomi.animesource.model.SEpisode +import eu.kanade.tachiyomi.animesource.model.Video +import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource +import eu.kanade.tachiyomi.lib.bloggerextractor.BloggerExtractor +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.util.asJsoup +import eu.kanade.tachiyomi.util.parallelCatchingFlatMapBlocking +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.Request +import okhttp3.Response +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get + +class AnimeQ : ConfigurableAnimeSource, ParsedAnimeHttpSource() { + + override val name = "AnimeQ" + + override val baseUrl = "https://animeq.blog" + + override val lang = "pt-BR" + + override val supportsLatest = true + + private val preferences by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + + override fun headersBuilder() = super.headersBuilder() + .add("Referer", baseUrl) + .add("Origin", baseUrl) + + // ============================== Popular =============================== + override fun popularAnimeRequest(page: Int) = GET("$baseUrl/160679", headers) + + override fun popularAnimeSelector() = "div.widget_block:contains(Acessados) a" + + override fun popularAnimeFromElement(element: Element) = SAnime.create().apply { + setUrlWithoutDomain(element.selectFirst("a")!!.attr("href")) + title = element.selectFirst("a img")!!.attr("title") + thumbnail_url = element.selectFirst("a img")!!.attr("src") + } + + override fun popularAnimeNextPageSelector() = null + + // =============================== Latest =============================== + override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/page/$page", headers) + + override fun latestUpdatesSelector() = "div.ContainerEps > article.EpsItem > a" + + override fun latestUpdatesFromElement(element: Element) = SAnime.create().apply { + setUrlWithoutDomain(element.attr("href")) + title = element.attr("title") + val img = element.selectFirst("div.EpsItemImg > img") + thumbnail_url = img?.attr("data-src")?.ifEmpty { img?.attr("src") } + } + + override fun latestUpdatesNextPageSelector() = "div.ContainerEps a.next.page-numbers" + + // =============================== Search =============================== + override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request { + val url = "$baseUrl/page".toHttpUrl().newBuilder() + .addPathSegment(page.toString()) + .addQueryParameter("s", query) + .build() + + return GET(url, headers = headers) + } + + override fun searchAnimeSelector() = "div.ContainerEps > article.AniItem > a" + + override fun searchAnimeFromElement(element: Element) = SAnime.create().apply { + setUrlWithoutDomain(element.attr("href")) + title = element.attr("title").substringBefore(" – Todos os Epis") + val img = element.selectFirst("div.AniItemImg > img") + thumbnail_url = img?.attr("data-src")?.ifEmpty { img?.attr("src") } + } + + override fun searchAnimeNextPageSelector() = "div.ContainerEps a.next.page-numbers" + + // =========================== Anime Details ============================ + override fun animeDetailsParse(document: Document): SAnime { + val doc = getRealDoc(document) + + return SAnime.create().apply { + setUrlWithoutDomain(doc.location()) + title = doc.title().substringBefore(" – Todos os Epis") + val img = doc.selectFirst("#capaAnime > img") + thumbnail_url = img?.attr("data-src")?.ifEmpty { img?.attr("src") } + description = doc.selectFirst("#sinopse2")?.text() + + with(doc.selectFirst("div.boxAnimeSobre")!!) { + artist = getInfo("Estúdio") + author = getInfo("Autor") ?: getInfo("Diretor") + genre = getInfo("Tags") + status = parseStatus(getInfo("Episódios")) + } + } + } + + // ============================== Episodes ============================== + override fun episodeListParse(response: Response): List { + return getRealDoc(response.asJsoup()) + .select(episodeListSelector()) + .map(::episodeFromElement) + .reversed() + } + + override fun episodeListSelector() = "#lAnimes a" + + override fun episodeFromElement(element: Element) = SEpisode.create().apply { + setUrlWithoutDomain(element.selectFirst("a")!!.attr("href")) + element.selectFirst("a")!!.attr("title") + .substringBeforeLast(" – Final") + .substringAfterLast(" ").let { + name = it.trim() + episode_number = name.toFloatOrNull() ?: 1F + } + } + + // ============================ Video Links ============================= + override fun videoListParse(response: Response): List