2021-02-10 14:05:12 +00:00
|
|
|
package eu.kanade.tachiyomi.extension.pt.yaoitoshokan
|
|
|
|
|
2021-02-15 04:01:59 +00:00
|
|
|
import eu.kanade.tachiyomi.annotations.Nsfw
|
2021-05-03 16:17:59 +00:00
|
|
|
import eu.kanade.tachiyomi.lib.ratelimit.RateLimitInterceptor
|
|
|
|
import eu.kanade.tachiyomi.multisrc.madara.Madara
|
2021-02-10 14:05:12 +00:00
|
|
|
import eu.kanade.tachiyomi.source.model.Page
|
2021-05-03 16:17:59 +00:00
|
|
|
import okhttp3.OkHttpClient
|
2021-02-10 14:05:12 +00:00
|
|
|
import org.jsoup.nodes.Document
|
|
|
|
import java.text.SimpleDateFormat
|
|
|
|
import java.util.Locale
|
2021-05-03 16:17:59 +00:00
|
|
|
import java.util.concurrent.TimeUnit
|
2021-02-10 14:05:12 +00:00
|
|
|
|
2021-02-15 04:01:59 +00:00
|
|
|
@Nsfw
|
2021-05-03 16:17:59 +00:00
|
|
|
class YaoiToshokan : Madara(
|
|
|
|
"Yaoi Toshokan",
|
|
|
|
"https://yaoitoshokan.net",
|
|
|
|
"pt-BR",
|
|
|
|
SimpleDateFormat("dd MMM yyyy", Locale("pt", "BR"))
|
|
|
|
) {
|
|
|
|
|
|
|
|
override val client: OkHttpClient = super.client.newBuilder()
|
|
|
|
.addInterceptor(RateLimitInterceptor(1, 1, TimeUnit.SECONDS))
|
|
|
|
.build()
|
|
|
|
|
2021-02-10 14:05:12 +00:00
|
|
|
// Page has custom link to scan website.
|
|
|
|
override val popularMangaUrlSelector = "div.post-title a:not([target])"
|
|
|
|
|
|
|
|
override fun pageListParse(document: Document): List<Page> {
|
|
|
|
return document.select(pageListParseSelector)
|
|
|
|
.mapIndexed { index, element ->
|
|
|
|
// Had to add trim because of white space in source.
|
|
|
|
val imageUrl = element.select("img").attr("data-src").trim()
|
|
|
|
Page(index, document.location(), imageUrl)
|
|
|
|
}
|
|
|
|
}
|
2021-05-03 16:17:59 +00:00
|
|
|
|
|
|
|
// [...document.querySelectorAll('input[name="genre[]"]')]
|
|
|
|
// .map(x => `Genre("${document.querySelector('label[for=' + x.id + ']').innerHTML.trim()}", "${x.value}")`)
|
|
|
|
// .join(',\n')
|
|
|
|
override fun getGenreList(): List<Genre> = listOf(
|
|
|
|
Genre("Ação", "acao"),
|
|
|
|
Genre("Adulto", "adulto"),
|
|
|
|
Genre("Bara", "bara"),
|
|
|
|
Genre("BDSM", "bdsm"),
|
|
|
|
Genre("Comédia", "comedia"),
|
|
|
|
Genre("Comic", "comic"),
|
|
|
|
Genre("Cotidiano", "cotidiano"),
|
|
|
|
Genre("Crossdress", "gender-bender"),
|
|
|
|
Genre("Doujinshi", "doujinshi"),
|
|
|
|
Genre("Drama", "drama"),
|
|
|
|
Genre("Ecchi", "ecchi"),
|
|
|
|
Genre("Esportes", "esportes"),
|
|
|
|
Genre("Fantasia", "fantasia"),
|
|
|
|
Genre("Fury", "fury"),
|
|
|
|
Genre("Futanari", "futanari"),
|
|
|
|
Genre("Gender Bender", "gender-bender-2"),
|
|
|
|
Genre("Histórico", "historico"),
|
|
|
|
Genre("Horror", "horror"),
|
|
|
|
Genre("Incesto", "incesto"),
|
|
|
|
Genre("Mafia", "mafia"),
|
|
|
|
Genre("Manga", "manga"),
|
|
|
|
Genre("Manhua", "manhua"),
|
|
|
|
Genre("Manhwa", "manhwa"),
|
|
|
|
Genre("Mistério", "misterio"),
|
|
|
|
Genre("Mpreg", "mpreg"),
|
|
|
|
Genre("Omegaverse", "omegaverse"),
|
|
|
|
Genre("One shot", "one-shot"),
|
|
|
|
Genre("Poliamor", "poliamor"),
|
|
|
|
Genre("Psicológico", "psicologico"),
|
|
|
|
Genre("Romance", "romance"),
|
|
|
|
Genre("Salaryman", "salaryman"),
|
|
|
|
Genre("Sci-fi", "sci-fi"),
|
|
|
|
Genre("Seinen", "seinen"),
|
|
|
|
Genre("Shocaton", "shocaton"),
|
|
|
|
Genre("Shoujo", "shoujo"),
|
|
|
|
Genre("Shoujo Ai", "shoujo-ai"),
|
|
|
|
Genre("Shounen", "shounen"),
|
|
|
|
Genre("Shounen Ai", "shounen-ai"),
|
|
|
|
Genre("Smut", "smut"),
|
|
|
|
Genre("Sobrenatural", "sobrenatural"),
|
|
|
|
Genre("Tragédia", "tragedia"),
|
|
|
|
Genre("Vampiros", "vampiros"),
|
|
|
|
Genre("Vida Escolar", "vida-escolar"),
|
|
|
|
Genre("Yaoi", "yaoi")
|
|
|
|
)
|
2021-02-10 14:05:12 +00:00
|
|
|
}
|