Merge pull request #388 from deividgabrielpeira/master
Daily Update (extensions portuguese)pull/397/head
commit
570b0c19c5
@ -1,15 +0,0 @@
|
||||
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||
|
||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||
import org.koitharu.kotatsu.parsers.site.madara.MadaraParser
|
||||
|
||||
@MangaSourceParser("AKUMANOTENSHI", "AkumanoTenshi", "pt")
|
||||
internal class AkumanoTenshi(context: MangaLoaderContext) :
|
||||
MadaraParser(context, MangaSource.AKUMANOTENSHI, "akumanotenshi.com", 48) {
|
||||
override val listUrl = "series/"
|
||||
override val tagPrefix = "series-genre/"
|
||||
override val datePattern = "dd/MM/yyyy"
|
||||
override val postReq = true
|
||||
}
|
||||
@ -1,14 +0,0 @@
|
||||
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||
|
||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||
import org.koitharu.kotatsu.parsers.model.ContentType
|
||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||
import org.koitharu.kotatsu.parsers.site.madara.MadaraParser
|
||||
|
||||
@MangaSourceParser("LERYAOI", "Ler Yaoi", "pt", ContentType.HENTAI)
|
||||
internal class LerYaoi(context: MangaLoaderContext) :
|
||||
MadaraParser(context, MangaSource.LERYAOI, "leryaoi.com", 10) {
|
||||
override val tagPrefix = "genero/"
|
||||
override val datePattern: String = "dd/MM/yyyy"
|
||||
}
|
||||
@ -1,14 +0,0 @@
|
||||
package org.koitharu.kotatsu.parsers.site.madara.pt
|
||||
|
||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||
import org.koitharu.kotatsu.parsers.model.ContentType
|
||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||
import org.koitharu.kotatsu.parsers.site.madara.MadaraParser
|
||||
|
||||
@MangaSourceParser("YAOITOSHOKAN", "YaoiToShokan", "pt", ContentType.HENTAI)
|
||||
internal class Yaoitoshokan(context: MangaLoaderContext) :
|
||||
MadaraParser(context, MangaSource.YAOITOSHOKAN, "www.yaoitoshokan.net", 18) {
|
||||
override val tagPrefix = "genero/"
|
||||
override val datePattern: String = "d MMM yyyy"
|
||||
}
|
||||
@ -1,19 +0,0 @@
|
||||
package org.koitharu.kotatsu.parsers.site.mangareader.pt
|
||||
|
||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||
import org.koitharu.kotatsu.parsers.model.ContentType
|
||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||
import org.koitharu.kotatsu.parsers.site.mangareader.MangaReaderParser
|
||||
|
||||
@MangaSourceParser("HENTAISSSSSCANLATOR", "SssScanlatorHentai", "pt", type = ContentType.HENTAI)
|
||||
internal class HentaiSsssscanlator(context: MangaLoaderContext) :
|
||||
MangaReaderParser(
|
||||
context,
|
||||
MangaSource.HENTAISSSSSCANLATOR,
|
||||
"hentais.sssscanlator.com",
|
||||
pageSize = 20,
|
||||
searchPageSize = 10,
|
||||
) {
|
||||
override val datePattern = "MMM d, yyyy"
|
||||
}
|
||||
@ -1,61 +0,0 @@
|
||||
package org.koitharu.kotatsu.parsers.site.mmrcms.pt
|
||||
|
||||
import kotlinx.coroutines.async
|
||||
import kotlinx.coroutines.coroutineScope
|
||||
import org.koitharu.kotatsu.parsers.MangaLoaderContext
|
||||
import org.koitharu.kotatsu.parsers.MangaSourceParser
|
||||
import org.koitharu.kotatsu.parsers.model.Manga
|
||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||
import org.koitharu.kotatsu.parsers.model.MangaState
|
||||
import org.koitharu.kotatsu.parsers.model.MangaTag
|
||||
import org.koitharu.kotatsu.parsers.model.SortOrder
|
||||
import org.koitharu.kotatsu.parsers.site.mmrcms.MmrcmsParser
|
||||
import org.koitharu.kotatsu.parsers.util.*
|
||||
import java.util.EnumSet
|
||||
import java.util.Locale
|
||||
|
||||
@MangaSourceParser("ANIMAREGIA", "Animaregia", "pt")
|
||||
internal class Animaregia(context: MangaLoaderContext) :
|
||||
MmrcmsParser(context, MangaSource.ANIMAREGIA, "animaregia.net") {
|
||||
|
||||
override val selectDate = "div.col-md-4"
|
||||
override val sourceLocale: Locale = Locale.ENGLISH
|
||||
|
||||
//temporary
|
||||
override val sortOrders: Set<SortOrder> = EnumSet.of(
|
||||
SortOrder.POPULARITY,
|
||||
SortOrder.ALPHABETICAL,
|
||||
)
|
||||
|
||||
override suspend fun getDetails(manga: Manga): Manga = coroutineScope {
|
||||
val fullUrl = manga.url.toAbsoluteUrl(domain)
|
||||
val doc = webClient.httpGet(fullUrl).parseHtml()
|
||||
val body = doc.body().selectFirstOrThrow("ul.list-group")
|
||||
val chaptersDeferred = async { getChapters(doc) }
|
||||
val desc = doc.select(selectDesc).text()
|
||||
val stateDiv = body.selectFirst("li.list-group-item:contains(Status)")?.lastElementChild()
|
||||
val state = stateDiv?.let {
|
||||
when (it.text()) {
|
||||
in ongoing -> MangaState.ONGOING
|
||||
in finished -> MangaState.FINISHED
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
val auth = doc.body().selectFirst("li.list-group-item:contains(Autor(es)) a")?.text()
|
||||
val tags = doc.body().select("li.list-group-item:contains(Autor(es)) a") ?: emptySet()
|
||||
manga.copy(
|
||||
tags = tags.mapNotNullToSet { a ->
|
||||
MangaTag(
|
||||
key = a.attr("href").removeSuffix('/').substringAfterLast('/'),
|
||||
title = a.text().toTitleCase(),
|
||||
source = source,
|
||||
)
|
||||
},
|
||||
author = auth,
|
||||
description = desc,
|
||||
altTitle = null,
|
||||
state = state,
|
||||
chapters = chaptersDeferred.await(),
|
||||
)
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue