add alternative name, cleaning some code, add icon (#6484)
* MangaSee/Life: add alt name, cleaning add alternative name to manga description cleaning series type code * WPMangaReader: add alt name, cleaning add alternative name to manga description cleaning series type code * FMReader: add alt name add alternative name to manga description remove author name if its "Updating" * MangaPark: add alt name add alternative name to manga description * WPMangaStream: add alt name, cleaning add alternative name to manga description cleaning series type code * MangaBox: add alt name add alternative name to manga description * MaidManga: add alt name, cleaning add alternative name to manga description cleaning series type code * Komiku: cleaning code cleaning series type code * ManhuaID: cleaning code cleaning series type code * cleaning, tweaking * add 18+ * add some source icon in fmreader Co-Authored-By: Ankit Singh <as280093@gmail.com> * add some source icon in wpmangareader Co-Authored-By: Ankit Singh <as280093@gmail.com> * add some source icon in wpmangastream Co-Authored-By: Ankit Singh <as280093@gmail.com> * Ngomik: fix thumbnail and chapter images Co-authored-by: Ankit Singh <as280093@gmail.com>
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 7.0 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 71 KiB |
After Width: | Height: | Size: 5.2 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 111 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 180 KiB |
|
@ -1,10 +1,12 @@
|
|||
package eu.kanade.tachiyomi.extension.en.manhwa18
|
||||
|
||||
import eu.kanade.tachiyomi.annotations.Nsfw
|
||||
import eu.kanade.tachiyomi.multisrc.fmreader.FMReader
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.Page
|
||||
import okhttp3.Request
|
||||
|
||||
@Nsfw
|
||||
class Manhwa18 : FMReader("Manhwa18", "https://manhwa18.com", "en") {
|
||||
override fun imageRequest(page: Page): Request {
|
||||
return if (page.imageUrl!!.contains("manhwa18")) {
|
||||
|
@ -14,4 +16,4 @@ class Manhwa18 : FMReader("Manhwa18", "https://manhwa18.com", "en") {
|
|||
}
|
||||
}
|
||||
override fun getGenreList() = getAdultGenreList()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package eu.kanade.tachiyomi.extension.all.manhwa18net
|
||||
|
||||
import eu.kanade.tachiyomi.annotations.Nsfw
|
||||
import eu.kanade.tachiyomi.multisrc.fmreader.FMReader
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
|
@ -14,6 +15,7 @@ class Manhwa18NetFactory : SourceFactory {
|
|||
)
|
||||
}
|
||||
|
||||
@Nsfw
|
||||
class Manhwa18Net : FMReader("Manhwa18.net", "https://manhwa18.net", "en") {
|
||||
override fun popularMangaRequest(page: Int): Request =
|
||||
GET("$baseUrl/$requestPath?listType=pagination&page=$page&sort=views&sort_type=DESC&ungenre=raw", headers)
|
||||
|
@ -29,6 +31,7 @@ class Manhwa18Net : FMReader("Manhwa18.net", "https://manhwa18.net", "en") {
|
|||
override fun getGenreList() = getAdultGenreList()
|
||||
}
|
||||
|
||||
@Nsfw
|
||||
class Manhwa18NetRaw : FMReader("Manhwa18.net", "https://manhwa18.net", "ko") {
|
||||
override val requestPath = "manga-list-genre-raw.html"
|
||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request {
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
package eu.kanade.tachiyomi.extension.en.manhwasmut
|
||||
|
||||
import eu.kanade.tachiyomi.annotations.Nsfw
|
||||
import eu.kanade.tachiyomi.multisrc.fmreader.FMReader
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.source.model.Page
|
||||
import okhttp3.Request
|
||||
|
||||
@Nsfw
|
||||
class ManhwaSmut : FMReader("ManhwaSmut", "https://manhwasmut.com", "en") {
|
||||
private val noReferer = headersBuilder().removeAll("Referer").build()
|
||||
override fun imageRequest(page: Page): Request = GET(page.imageUrl!!, if (page.imageUrl!!.contains("toonily")) noReferer else headers)
|
||||
}
|
||||
}
|
||||
|
|
After Width: | Height: | Size: 4.7 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 6.8 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 94 KiB |
|
@ -0,0 +1,12 @@
|
|||
package eu.kanade.tachiyomi.extension.id.ngomik
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.wpmangareader.WPMangaReader
|
||||
import okhttp3.Headers
|
||||
|
||||
class Ngomik : WPMangaReader("Ngomik", "https://ngomik.net", "id", "/all-komik") {
|
||||
private val userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36"
|
||||
|
||||
override fun headersBuilder(): Headers.Builder = Headers.Builder()
|
||||
.add("User-Agent", userAgent)
|
||||
.add("Referer", baseUrl)
|
||||
}
|
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 164 KiB |
|
@ -98,14 +98,29 @@ class KomikCast : WPMangaStream("Komik Cast", "https://komikcast.com", "id") {
|
|||
description = infoElement.select("div.komik_info-description-sinopsis p").joinToString("\n") { it.text() }
|
||||
thumbnail_url = infoElement.select("div.komik_info-content-thumbnail img").imgAttr()
|
||||
|
||||
// add manga/manhwa/manhua thinggy to genre
|
||||
val type = document.select("span:contains(Type) a").firstOrNull()?.ownText()
|
||||
genre += if (genre!!.contains(type.toString())) "" else if (!type.isNullOrEmpty() && !genre.isNullOrEmpty()) ", $type"
|
||||
else if (!type.isNullOrEmpty() && genre.isNullOrEmpty()) "$type" else ""
|
||||
// add series type(manga/manhwa/manhua/other) thinggy to genre
|
||||
document.select(seriesTypeSelector).firstOrNull()?.ownText()?.let {
|
||||
if (it.isEmpty().not() && genre!!.contains(it, true).not()) {
|
||||
genre += if (genre!!.isEmpty()) it else ", $it"
|
||||
}
|
||||
}
|
||||
|
||||
// add alternative name to manga description
|
||||
document.select(altNameSelector).firstOrNull()?.ownText()?.let {
|
||||
if (it.isEmpty().not() && it !="N/A" && it != "-") {
|
||||
description += when {
|
||||
description!!.isEmpty() -> altName + it
|
||||
else -> "\n\n$altName" + it
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override val seriesTypeSelector = "span:contains(Type) a"
|
||||
override val altNameSelector = ".komik_info-content-native"
|
||||
|
||||
override fun chapterListSelector() = "div.komik_info-chapters li"
|
||||
|
||||
override fun chapterFromElement(element: Element): SChapter {
|
||||
|
|
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 3.0 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 112 KiB |
After Width: | Height: | Size: 7.4 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 258 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 8.2 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 116 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 4.8 KiB |
After Width: | Height: | Size: 2.7 KiB |
After Width: | Height: | Size: 6.6 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 9.5 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 74 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 6.9 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 70 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 21 KiB |