Add more sources to GigaViewer (#10242)
* Add Comiplex source (closes #10090). * Add Comic Days source (closes #10162). * Add Sunday Web Every source (closes #10235).
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 18 KiB |
BIN
multisrc/overrides/gigaviewer/comicdays/res/web_hi_res_512.png
Normal file
After Width: | Height: | Size: 104 KiB |
35
multisrc/overrides/gigaviewer/comicdays/src/ComicDays.kt
Normal file
@ -0,0 +1,35 @@
|
||||
package eu.kanade.tachiyomi.extension.ja.comicdays
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.gigaviewer.GigaViewer
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import okhttp3.OkHttpClient
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class ComicDays : GigaViewer(
|
||||
"Comic Days",
|
||||
"https://comic-days.com",
|
||||
"ja",
|
||||
"https://cdn-img.comic-days.com/public/page"
|
||||
) {
|
||||
|
||||
override val client: OkHttpClient = super.client.newBuilder()
|
||||
.addInterceptor(::imageIntercept)
|
||||
.build()
|
||||
|
||||
override val publisher: String = "講談社"
|
||||
|
||||
override fun popularMangaSelector(): String = "ul.daily-series li.daily-series-item:has(a.link)"
|
||||
|
||||
override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply {
|
||||
title = element.selectFirst("h4.daily-series-title")!!.text()
|
||||
thumbnail_url = element.selectFirst("div.daily-series-thumb img")!!
|
||||
.attr("data-src")
|
||||
setUrlWithoutDomain(element.selectFirst("a.link")!!.attr("href"))
|
||||
}
|
||||
|
||||
override fun latestUpdatesSelector(): String = "section#$dayOfWeek.daily " + popularMangaSelector()
|
||||
|
||||
override fun getCollections(): List<Collection> = listOf(
|
||||
Collection("連載作品一覧", "")
|
||||
)
|
||||
}
|
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 6.4 KiB |
BIN
multisrc/overrides/gigaviewer/comiplex/res/web_hi_res_512.png
Normal file
After Width: | Height: | Size: 26 KiB |
42
multisrc/overrides/gigaviewer/comiplex/src/Comiplex.kt
Normal file
@ -0,0 +1,42 @@
|
||||
package eu.kanade.tachiyomi.extension.ja.comiplex
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.gigaviewer.GigaViewer
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class Comiplex : GigaViewer(
|
||||
"Comiplex",
|
||||
"https://viewer.heros-web.com",
|
||||
"ja",
|
||||
"https://cdn-img.viewer.heros-web.com/public/page"
|
||||
) {
|
||||
|
||||
override val supportsLatest: Boolean = false
|
||||
|
||||
override val client: OkHttpClient = super.client.newBuilder()
|
||||
.addInterceptor(::imageIntercept)
|
||||
.build()
|
||||
|
||||
override val publisher: String = "ヒーローズ"
|
||||
|
||||
override fun popularMangaRequest(page: Int): Request = GET("$baseUrl/series/heros", headers)
|
||||
|
||||
override fun popularMangaSelector(): String = "ul.series-items li.series-item > a"
|
||||
|
||||
override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply {
|
||||
title = element.selectFirst("h4.item-series-title")!!.text()
|
||||
thumbnail_url = element.selectFirst("div.series-item-thumb img")!!
|
||||
.attr("data-src")
|
||||
setUrlWithoutDomain(element.attr("href"))
|
||||
}
|
||||
|
||||
override fun getCollections(): List<Collection> = listOf(
|
||||
Collection("ヒーローズ", "heros"),
|
||||
Collection("ふらっとヒーローズ", "flat"),
|
||||
Collection("わいるどヒーローズ", "wild"),
|
||||
Collection("読切作品", "oneshot")
|
||||
)
|
||||
}
|
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 40 KiB |
@ -0,0 +1,38 @@
|
||||
package eu.kanade.tachiyomi.extension.ja.sundaywebevery
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.gigaviewer.GigaViewer
|
||||
import eu.kanade.tachiyomi.source.model.SManga
|
||||
import okhttp3.OkHttpClient
|
||||
import org.jsoup.nodes.Element
|
||||
|
||||
class SundayWebEvery : GigaViewer(
|
||||
"Sunday Web Every",
|
||||
"https://www.sunday-webry.com",
|
||||
"ja",
|
||||
"https://cdn-img.www.sunday-webry.com/public/page"
|
||||
) {
|
||||
|
||||
override val client: OkHttpClient = super.client.newBuilder()
|
||||
.addInterceptor(::imageIntercept)
|
||||
.build()
|
||||
|
||||
override val publisher: String = "小学館"
|
||||
|
||||
override fun popularMangaSelector(): String = "ul.webry-series-list li a.webry-series-item-link"
|
||||
|
||||
override fun popularMangaFromElement(element: Element): SManga = SManga.create().apply {
|
||||
title = element.selectFirst("h4.series-title")!!.text()
|
||||
thumbnail_url = element.selectFirst("div.thumb-wrapper img")!!.attr("data-src")
|
||||
setUrlWithoutDomain(element.attr("href"))
|
||||
}
|
||||
|
||||
override fun latestUpdatesSelector(): String = "h3#series-$dayOfWeek + section " + popularMangaSelector()
|
||||
|
||||
override fun chapterListSelector(): String = "li.episode:not(.private)"
|
||||
|
||||
override fun getCollections(): List<Collection> = listOf(
|
||||
Collection("連載作品", ""),
|
||||
Collection("読切", "oneshot"),
|
||||
Collection("夜サンデー", "yoru-sunday")
|
||||
)
|
||||
}
|
@ -27,7 +27,7 @@ open class AsuraScans(
|
||||
baseUrl,
|
||||
lang,
|
||||
dateFormat
|
||||
),
|
||||
),
|
||||
ConfigurableSource {
|
||||
|
||||
private val preferences: SharedPreferences by lazy {
|
||||
|
@ -12,11 +12,14 @@ class GigaViewerGenerator : ThemeSourceGenerator {
|
||||
override val baseVersionCode: Int = 4
|
||||
|
||||
override val sources = listOf(
|
||||
SingleLang("Comic Days", "https://comic-days.com", "ja"),
|
||||
SingleLang("Comic Gardo", "https://comic-gardo.com", "ja"),
|
||||
SingleLang("Comiplex", "https://viewer.heros-web.com", "ja"),
|
||||
SingleLang("Kurage Bunch", "https://kuragebunch.com", "ja"),
|
||||
SingleLang("MAGCOMI", "https://magcomi.com", "ja", className = "MagComi"),
|
||||
SingleLang("Magazine Pocket", "https://pocket.shonenmagazine.com", "ja"),
|
||||
SingleLang("Shonen Jump+", "https://shonenjumpplus.com", "ja", pkgName = "shonenjumpplus", className = "ShonenJumpPlus", overrideVersionCode = 2),
|
||||
SingleLang("Sunday Web Every", "https://www.sunday-webry.com", "ja"),
|
||||
SingleLang("Tonari no Young Jump", "https://tonarinoyj.jp", "ja", className = "TonariNoYoungJump")
|
||||
)
|
||||
|
||||
|
@ -45,7 +45,9 @@ open class MonochromeCMS(
|
||||
}
|
||||
|
||||
override fun fetchSearchManga(
|
||||
page: Int, query: String, filters: FilterList
|
||||
page: Int,
|
||||
query: String,
|
||||
filters: FilterList
|
||||
): Observable<MangasPage> {
|
||||
if (!query.startsWith(UUID_QUERY))
|
||||
return super.fetchSearchManga(page, query, filters)
|
||||
|