fix japscan and fix wrong date on 2 source
This commit is contained in:
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user