fix japscan and fix wrong date on 2 source

pull/197/head
devi 3 years ago
parent 7b28072ee5
commit 8fd10eabd1

@ -19,7 +19,10 @@ import java.util.*
@MangaSourceParser("JAPSCAN", "JapScan", "fr")
internal class JapScanParser(context: MangaLoaderContext) : PagedMangaParser(context, MangaSource.JAPSCAN, 30) {
override val sortOrders: Set<SortOrder> = EnumSet.of(SortOrder.ALPHABETICAL)
override val sortOrders: Set<SortOrder> = EnumSet.of(
SortOrder.UPDATED,
SortOrder.ALPHABETICAL,
)
override val configKeyDomain = ConfigKey.Domain("www.japscan.lol", "japscan.ws")
@ -112,16 +115,21 @@ internal class JapScanParser(context: MangaLoaderContext) : PagedMangaParser(con
val embeddedData = doc.requireElementById("data").attr("data-data")
val script = webClient.httpGet(scriptUrl).parseRaw()
val sample = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".toList()
val keyRegex = Regex("""'([\dA-Z]{62})'""", RegexOption.IGNORE_CASE)
val shortkeyRegex = Regex("""'([\dA-Z]{2})'""", RegexOption.IGNORE_CASE)
val longkeyRegex = Regex("""'([\dA-Z]{20})'""", RegexOption.IGNORE_CASE)
val keyTables = keyRegex.findAll(script)
.mapNotNullTo(ArrayList(2)) { match ->
match.groupValues[1].takeIf {
it.toList().sorted() == sample
}
}
check(keyTables.size == 2)
val LongTables = longkeyRegex.findAll(script).map {
it.groupValues[1]
}.toList()
val ShortTables = shortkeyRegex.findAll(script).map {
it.groupValues[1]
}.toList()
val keyTables = listOf(
ShortTables[1].reversed() + LongTables[5].reversed() + LongTables[2].reversed() + LongTables[0].reversed(),
ShortTables[2].reversed() + LongTables[3].reversed() + LongTables[4].reversed() + LongTables[1].reversed(),
)
var error: Exception? = null
repeat(2) { i ->

@ -456,6 +456,9 @@ internal abstract class MadaraParser(
@MangaSourceParser("MANGA_MANHUA", "Manga Manhua", "en")
class MangaManhua(context: MangaLoaderContext) :
MadaraParser(context, MangaSource.MANGA_MANHUA, "mangamanhua.online", pageSize = 10)
{
override val datePattern = "d MMMM، yyyy"
}
@MangaSourceParser("MANGA_247", "247MANGA", "en")
class Manga247(context: MangaLoaderContext) : MadaraParser(context, MangaSource.MANGA_247, "247manga.com") {
@ -475,6 +478,9 @@ internal abstract class MadaraParser(
@MangaSourceParser("ZINMANGA", "ZINMANGA", "en")
class Zinmanga(context: MangaLoaderContext) : MadaraParser(context, MangaSource.ZINMANGA, "zinmanga.com")
{
override val datePattern = "MM/dd/yyyy"
}
@MangaSourceParser("STKISSMANGA", "Stkissmanga", "en")
class Stkissmanga(context: MangaLoaderContext) : MadaraParser(context, MangaSource.STKISSMANGA, "1stkissmanga.me")

Loading…
Cancel
Save